8587c591dffffc48063f282b30d4b5d195e9d4f5
[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-cmucl-compat := $(wilcard cmucl-compat/*.cl)
29 srcs-base       := sql/package.cl sql/db-interface.cl sql/classes.cl sql/conditions.cl $(wilcard cmu-compat/*.cl)
30 srcs-mysql      := $(wildcard interfaces/mysql/*.cl)
31 srcs-pg         := $(wildcard interfaces/postgresql/*.cl)
32 srcs-pg-socket  := $(wildcard interfaces/postgresql-socket/*.cl)
33
34 INSTALL := install
35 INSTALLFLAGS    := -g root -o root -m 0644
36 INSTALLDIRFLAGS := -d -g root -o root -m 0755
37
38 clc-base        := usr/share/common-lisp
39 clc-source      := $(clc-base)/source
40 clc-repos       := $(clc-base)/repositories
41 clc-systems     := $(clc-base)/systems
42 doc-dir         := $(prefix)/usr/share/doc/cl-sql
43
44
45 configure: configure-stamp
46 configure-stamp:
47         dh_testdir
48         # Add here commands to configure the package.
49         touch configure-stamp
50
51
52 build: build-stamp
53
54 build-stamp: configure-stamp 
55         dh_testdir
56         # Add here commands to compile the package.
57         touch build-stamp
58
59 clean:
60         dh_testdir
61         dh_testroot
62         rm -f build-stamp configure-stamp
63         # Add here commands to clean up after the build process.
64         dh_clean
65
66 install: build
67         dh_testdir
68         dh_testroot
69         dh_clean -k
70         dh_installdirs
71
72         $(INSTALL) $(INSTALLFLAGS) $(srcs-base) $(prefix-base)/$(clc-repos)/clsql
73         $(INSTALL) $(INSTALLFLAGS) $(srcs) $(prefix)/$(clc-repos)/clsql
74         $(INSTALL) $(INSTALLFLAGS) $(srcs-cmucl-compat) $(prefix)/$(clc-repos)/clsql/cmucl-compat
75         $(INSTALL) $(INSTALLFLAGS) $(srcs-mysql) $(prefix-mysql)/$(clc-repos)/clsql/interfaces/mysql
76         $(INSTALL) $(INSTALLFLAGS) $(srcs-pg) $(prefix-pg)/$(clc-repos)/clsql/interfaces/postgresql
77         $(INSTALL) $(INSTALLFLAGS) $(srcs-pg-socket) $(prefix-pg-socket)/$(clc-repos)/clsql/interfaces/postgresql-socket
78
79         dh_link ../repositories/clsql $(prefix-base)/$(clc-source)/clsql
80
81         # CLC Systems
82         $(INSTALL) $(INSTALLFLAGS) clsql.system $(prefix)/$(clc-systems)/
83         $(INSTALL) $(INSTALLFLAGS) clsql-base.system $(prefix-base)/$(clc-systems)/
84         $(INSTALL) $(INSTALLFLAGS) clsql-mysql.system $(prefix-mysql)/$(clc-systems)/
85         $(INSTALL) $(INSTALLFLAGS) clsql-postgresql.system $(prefix-pg)/$(clc-systems)/
86         $(INSTALL) $(INSTALLFLAGS) clsql-postgresql-socket.system $(prefix-pg-socket)/$(clc-systems)/
87
88         # Test suite
89         $(INSTALL) $(INSTALLFLAGS) test-suite/tester-clsql.cl test-suite/acl-compat-tester.cl $(doc-dir)/test-suite
90
91         # Documentation
92         $(INSTALL) $(INSTALLFLAGS) doc/html/* $(doc-dir)/html
93         cp doc/clsql.pdf doc/cl-sql.pdf
94         rm -f doc/cl-sql.pdf.gz
95         gzip doc/cl-sql.pdf
96         $(INSTALL) $(INSTALLFLAGS) doc/cl-sql.pdf.gz $(doc-dir)
97         rm -f doc/cl-sql.pdf.gz
98
99
100 # Build architecture-independent files here.
101 binary-indep: build install
102
103
104
105 # Build architecture-dependent files here.
106 binary-arch: build install
107         dh_testdir
108         dh_testroot
109 #       dh_installdebconf       
110         dh_installdocs
111 #       dh_installexamples 
112 #       dh_installmenu
113 #       dh_installlogrotate
114 #       dh_installemacsen
115 #       dh_installpam
116 #       dh_installmime
117 #       dh_installinit
118 #       dh_installcron
119 #       dh_installman
120 #       dh_installinfo
121 #       dh_undocumented
122         dh_installchangelogs ChangeLog
123         dh_link
124         dh_strip
125         dh_compress
126         dh_fixperms
127 #       dh_makeshlibs
128         dh_installdeb
129 #       dh_perl
130 #       dh_shlibdeps
131         dh_gencontrol
132         dh_md5sums
133         dh_builddeb
134
135 binary: binary-indep binary-arch
136 .PHONY: build clean binary-indep binary-arch binary install configure