r2003: debian
[clsql.git] / debian / rules
1 #!/usr/bin/make -f
2 # Sample debian/rules that uses debhelper.
3 # GNU copyright 1997 to 1999 by Joey Hess.
4
5 # Uncomment this to turn on verbose mode.
6 export DH_VERBOSE=1
7
8 # This is the debhelper compatibility version to use.
9 export DH_COMPAT=3
10
11 pkg             := cl-sql
12 pkg-base        := cl-sql-base
13 pkg-mysql       := cl-sql-mysql
14 pkg-pg          := cl-sql-postgresql
15 pkg-pg-socket   := cl-sql-postgresql-socket
16 all-pkgs        := $(pkg) $(pkg-base) $(pkg-mysql) $(pkg-pg) $(pkg-pg-socket)
17
18 prefix          := debian/$(pkg)
19 prefix-base     := debian/$(pkg-base)
20 prefix-mysql    := debian/$(pkg-mysql)
21 prefix-pg       := debian/$(pkg-pg)
22 prefix-pg-socket := debian/$(pkg-pg-socket)
23
24 ##
25 ## lisp sources per pkg
26 ##
27 srcs            := sql/pool.cl sql/sql.cl sql/transactions.cl sql/utils.cl sql/functional.cl sql/usql.cl
28 srcs-base       := sql/package.cl sql/db-interface.cl sql/classes.cl sql/conditions.cl $(wilcard cmu-compat/*.cl)
29 srcs-mysql      := $(wildcard interfaces/mysql/*.cl)
30 srcs-pg         := $(wildcard interfaces/postgresql/*.cl)
31 srcs-pg-socket  := $(wildcard interfaces/postgresql-socket/*.cl)
32
33 INSTALL := install
34 INSTALLFLAGS    := -g root -o root -m 0644
35 INSTALLDIRFLAGS := -d -g root -o root -m 0755
36
37 clc-base        := usr/share/common-lisp
38 clc-source      := $(clc-base)/source
39 clc-repos       := $(clc-base)/repositories
40 clc-systems     := $(clc-base)/systems
41 doc-dir         := $(prefix)/usr/share/doc/cl-sql
42
43
44 configure: configure-stamp
45 configure-stamp:
46         dh_testdir
47         # Add here commands to configure the package.
48         touch configure-stamp
49
50
51 build: build-stamp
52
53 build-stamp: configure-stamp 
54         dh_testdir
55         # Add here commands to compile the package.
56         touch build-stamp
57
58 clean:
59         dh_testdir
60         dh_testroot
61         rm -f build-stamp configure-stamp
62         # Add here commands to clean up after the build process.
63         dh_clean
64
65 install: build
66         dh_testdir
67         dh_testroot
68         dh_clean -k
69         dh_installdirs
70
71         $(INSTALL) $(INSTALLFLAGS) $(srcs-base) $(prefix-base)/$(clc-repos)/clsql
72         $(INSTALL) $(INSTALLFLAGS) $(srcs) $(prefix)/$(clc-repos)/clsql
73         $(INSTALL) $(INSTALLFLAGS) $(srcs-mysql) $(prefix-mysql)/$(clc-repos)/clsql/interfaces/mysql
74         $(INSTALL) $(INSTALLFLAGS) $(srcs-pg) $(prefix-pg)/$(clc-repos)/clsql/interfaces/postgresql
75         $(INSTALL) $(INSTALLFLAGS) $(srcs-pg-socket) $(prefix-pg-socket)/$(clc-repos)/clsql/interfaces/postgresql-socket
76
77         dh_link ../repositories/clsql $(prefix-base)/$(clc-source)/clsql
78
79         # CLC Systems
80         $(INSTALL) $(INSTALLFLAGS) clsql.system $(prefix)/$(clc-systems)/
81         $(INSTALL) $(INSTALLFLAGS) clsql-base.system $(prefix-base)/$(clc-systems)/
82         $(INSTALL) $(INSTALLFLAGS) clsql-mysql.system $(prefix-mysql)/$(clc-systems)/
83         $(INSTALL) $(INSTALLFLAGS) clsql-postgresql.system $(prefix-pg)/$(clc-systems)/
84         $(INSTALL) $(INSTALLFLAGS) clsql-postgresql-socket.system $(prefix-pg-socket)/$(clc-systems)/
85
86         # Test suite
87         $(INSTALL) $(INSTALLFLAGS) test-suite/tester-clsql.cl test-suite/acl-compat-tester.cl $(doc-dir)/test-suite
88
89         # Documentation
90         $(INSTALL) $(INSTALLFLAGS) doc/html/* $(doc-dir)/html
91         cp doc/clsql.pdf doc/cl-sql.pdf
92         rm -f doc/cl-sql.pdf.gz
93         gzip doc/cl-sql.pdf
94         $(INSTALL) $(INSTALLFLAGS) doc/cl-sql.pdf.gz $(doc-dir)
95         rm -f doc/cl-sql.pdf.gz
96
97
98 # Build architecture-independent files here.
99 binary-indep: build install
100
101
102
103 # Build architecture-dependent files here.
104 binary-arch: build install
105         dh_testdir
106         dh_testroot
107 #       dh_installdebconf       
108         dh_installdocs
109 #       dh_installexamples 
110 #       dh_installmenu
111 #       dh_installlogrotate
112 #       dh_installemacsen
113 #       dh_installpam
114 #       dh_installmime
115 #       dh_installinit
116 #       dh_installcron
117 #       dh_installman
118 #       dh_installinfo
119 #       dh_undocumented
120         dh_installchangelogs ChangeLog
121         dh_link
122         dh_strip
123         dh_compress
124         dh_fixperms
125 #       dh_makeshlibs
126         dh_installdeb
127 #       dh_perl
128 #       dh_shlibdeps
129         dh_gencontrol
130         dh_md5sums
131         dh_builddeb
132
133 binary: binary-indep binary-arch
134 .PHONY: build clean binary-indep binary-arch binary install configure