Update/fix rpm and deb packaging
[src/xds/xds-cli.git] / conf.d / packaging / deb / debian.rules
1 #!/usr/bin/make -f
2 # -*- makefile -*-
3 # Uncomment this to turn on verbose mode.
4 export DH_VERBOSE=1
5
6 # These are used for cross-compiling and for saving the configure script
7 # from having to guess our platform (since we know it already)
8 DEB_HOST_GNU_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
9 DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
10
11
12 CFLAGS = -Wall -g
13
14 ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
15        CFLAGS += -O0
16 else
17        CFLAGS += -O2
18 endif
19 ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
20        INSTALL_PROGRAM += -s
21 endif
22
23 configure: configure-stamp
24 configure-stamp:
25         dh_testdir
26         #
27         touch configure-stamp
28
29 build: build-stamp
30 build-stamp: configure-stamp
31         dh_testdir
32         touch build-stamp
33
34 clean:
35         #dh_testdir
36         dh_testroot
37         rm -f configure-stamp build-stamp
38         [ ! -f Makefile ] || $(MAKE) distclean
39         #dh_clean
40
41 NAME=agl-xds-cli
42 INSTALL_XDS_DIR=/opt/AGL/xds/cli
43 INSTALL_BIN_DIR=/opt/AGL/bin
44
45 DEB_BASE_DIR=debian/$(NAME)
46 DEB_INSTALL_XDS_DIR=$(DEB_BASE_DIR)/$(INSTALL_XDS_DIR)
47 DEB_INSTALL_BIN_DIR=$(DEB_BASE_DIR)/$(INSTALL_BIN_DIR)
48
49 install: build
50         dh_testdir
51         dh_testroot
52         dh_prep
53         dh_installdirs
54
55         # Add here commands to install the package into debian/tmp
56         mkdir -p $(DEB_INSTALL_XDS_DIR) $(DEB_INSTALL_BIN_DIR)
57         find . -maxdepth 1 ! -name debian -exec cp -r {} $(DEB_INSTALL_XDS_DIR) \;
58         rm -fr $(DEB_INSTALL_XDS_DIR)/debian $(DEB_INSTALL_XDS_DIR)/*-stamp
59         cd $(DEB_INSTALL_BIN_DIR) && ln -s ../xds/cli/xds-cli
60
61         # Add XDS in user's PATH
62         mkdir -p $(DEB_BASE_DIR)/etc/profile.d
63         sed -e "s;@XDS_INSTALL_BIN_DIR@;$(INSTALL_BIN_DIR);g" $(DEB_INSTALL_XDS_DIR)/conf.d/etc/profile.d/xds-cli.sh > $(DEB_BASE_DIR)/etc/profile.d/$(NAME).sh
64
65         # Add bash_completion file
66         mkdir -p $(DEB_BASE_DIR)/etc/bash_completion.d
67         cp $(DEB_INSTALL_XDS_DIR)/conf.d/etc/bash_completion.d/xds-cli $(DEB_BASE_DIR)/etc/bash_completion.d/
68
69         # Cleanup
70         rm -rf $(DEB_INSTALL_XDS_DIR)/scripts $(DEB_INSTALL_XDS_DIR)/conf.d
71
72         # Move all files in their corresponding package
73         dh_install --list-missing -s --sourcedir=debian/tmp
74
75 # Build architecture-independent files here.
76 binary-indep: build install
77 # We have nothing to do by default.
78
79 # Build architecture-dependent files here.
80 binary-arch: build install
81         dh_testdir
82         dh_testroot
83         dh_installchangelogs
84         dh_installdocs
85         dh_installexamples
86         dh_installman
87         dh_link
88         dh_strip
89         dh_compress
90         dh_fixperms
91         dh_makeshlibs -V
92         dh_installdeb
93         #dh_shlibdeps
94         dh_gencontrol
95         dh_md5sums
96         dh_builddeb
97
98 binary: binary-indep binary-arch
99 .PHONY: build clean binary-indep binary-arch binary install