X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=debian%2Frules;h=173b9751f12f4cb42cd64927d7e28838a51dde9d;hb=5273ebebfe1d0c1461b6b170bca6686d71b597ec;hp=84910cc08a2b479b68b5251bdf1656ff536943c8;hpb=d615b6b735d50870d9e9437801e94e2c169595aa;p=clsql.git diff --git a/debian/rules b/debian/rules index 84910cc..173b975 100755 --- a/debian/rules +++ b/debian/rules @@ -8,24 +8,46 @@ export DH_VERBOSE=1 # This is the debhelper compatibility version to use. export DH_COMPAT=3 -pkg := cl-uffi -prefix := debian/$(pkg) +pkg := cl-sql +pkg-base := cl-sql-base +pkg-mysql := cl-sql-mysql +pkg-pg := cl-sql-postgresql +pkg-pg-socket := cl-sql-postgresql-socket +pkg-aodbc := cl-sql-aodbc +all-pkgs := $(pkg) $(pkg-base) $(pkg-mysql) $(pkg-pg) $(pkg-pg-socket) $(pkg-aodbc) + +prefix := debian/$(pkg) +prefix-base := debian/$(pkg-base) +prefix-mysql := debian/$(pkg-mysql) +prefix-pg := debian/$(pkg-pg) +prefix-pg-socket := debian/$(pkg-pg-socket) +prefix-aodbc := debian/$(pkg-aodbc) + +## Lisp sources +srcs := $(wildcard sql/*.cl) +srcs-cmucl-compat:= $(wildcard cmucl-compat/*.cl) +srcs-base := $(wildcard base/*.cl) +srcs-base-uffi := $(wildcard interfaces/clsql-uffi/*.cl) $(wildcard interfaces/clsql-uffi/*.so) +srcs-mysql := $(wildcard interfaces/mysql/*.cl) $(wildcard interfaces/mysql/*.so) +srcs-pg := $(wildcard interfaces/postgresql/*.cl) +srcs-pg-socket := $(wildcard interfaces/postgresql-socket/*.cl) +srcs-aodbc := $(wildcard interfaces/aodbc/*.cl) INSTALL := install INSTALLFLAGS := -g root -o root -m 0644 INSTALLDIRFLAGS := -d -g root -o root -m 0755 -SOURCEDIR := $(prefix)/usr/share/common-lisp/source -REPOSITORYDIR := $(prefix)/usr/share/common-lisp/repositories/uffi -SYSDIR := $(prefix)/usr/share/common-lisp/systems -DOCDIR := $(prefix)/usr/share/doc/cl-uffi +clc-base := usr/share/common-lisp +clc-source := $(clc-base)/source +clc-repos := $(clc-base)/repositories +clc-systems := $(clc-base)/systems +doc-dir := $(prefix)/usr/share/doc/cl-sql configure: configure-stamp configure-stamp: dh_testdir # Add here commands to configure the package. - touch configure-stamp @@ -33,21 +55,16 @@ build: build-stamp build-stamp: configure-stamp dh_testdir - - # Add here commands to compile the package. - $(MAKE) doc - #/usr/bin/docbook-to-man debian/uffi.sgml > uffi.1 - + # Compile helper libraries + $(MAKE) touch build-stamp clean: dh_testdir dh_testroot rm -f build-stamp configure-stamp - # Add here commands to clean up after the build process. - -$(MAKE) clean - + $(MAKE) clean dh_clean install: build @@ -56,18 +73,49 @@ install: build dh_clean -k dh_installdirs - # Add here commands to install the package into debian/uffi. - $(INSTALL) $(INSTALLDIRFLAGS) $(REPOSITORYDIR) $(REPOSITORYDIR)/mcl $(SYSDIR) $(DOCDIR) $(DOCDIR)/html $(SOURCEDIR) - $(INSTALL) $(INSTALLFLAGS) uffi.system.debian $(SYSDIR) - mv $(SYSDIR)/uffi.system.debian $(SYSDIR)/uffi.system - $(INSTALL) $(INSTALLFLAGS) $(shell echo src/*.cl) $(REPOSITORYDIR) - $(INSTALL) $(INSTALLFLAGS) $(shell echo src/mcl/*.cl) $(REPOSITORYDIR)/mcl - $(INSTALL) $(INSTALLFLAGS) doc/html/* $(DOCDIR)/html - cp doc/uffi.ps doc/cl-uffi.ps - rm -f doc/cl-uffi.ps.gz - gzip doc/cl-uffi.ps - $(INSTALL) $(INSTALLFLAGS) doc/cl-uffi.ps.gz $(DOCDIR) - rm -f doc/cl-uffi.ps.gz + # Main package + $(INSTALL) $(INSTALLFLAGS) $(srcs) $(prefix)/$(clc-repos)/clsql/sql + $(INSTALL) $(INSTALLFLAGS) $(srcs-cmucl-compat) $(prefix)/$(clc-repos)/clsql/cmucl-compat + + # Base + $(INSTALL) $(INSTALLFLAGS) $(srcs-base) $(prefix-base)/$(clc-repos)/clsql/base + $(INSTALL) $(INSTALLFLAGS) $(srcs-base-uffi) $(prefix-base)/$(clc-repos)/clsql/interfaces/clsql-uffi + chmod +x $(prefix-base)/$(clc-repos)/clsql/interfaces/clsql-uffi/*.so + + $(INSTALL) $(INSTALLFLAGS) $(srcs-mysql) $(prefix-mysql)/$(clc-repos)/clsql/interfaces/mysql + chmod +x $(prefix-mysql)/$(clc-repos)/clsql/interfaces/mysql/*.so + $(INSTALL) $(INSTALLFLAGS) $(srcs-pg) $(prefix-pg)/$(clc-repos)/clsql/interfaces/postgresql + $(INSTALL) $(INSTALLFLAGS) $(srcs-pg-socket) $(prefix-pg-socket)/$(clc-repos)/clsql/interfaces/postgresql-socket + $(INSTALL) $(INSTALLFLAGS) $(srcs-aodbc) $(prefix-aodbc)/$(clc-repos)/clsql/interfaces/aodbc + + # CLC Systems + $(INSTALL) $(INSTALLFLAGS) clsql.system $(prefix)/$(clc-systems)/ + $(INSTALL) $(INSTALLFLAGS) clsql-base.system $(prefix-base)/$(clc-systems)/ + $(INSTALL) $(INSTALLFLAGS) clsql-mysql.system $(prefix-mysql)/$(clc-systems)/ + $(INSTALL) $(INSTALLFLAGS) clsql-postgresql.system $(prefix-pg)/$(clc-systems)/ + $(INSTALL) $(INSTALLFLAGS) clsql-postgresql-socket.system $(prefix-pg-socket)/$(clc-systems)/ + $(INSTALL) $(INSTALLFLAGS) clsql-aodbc.system $(prefix-aodbc)/$(clc-systems)/ + + # Test suite + $(INSTALL) $(INSTALLFLAGS) test-suite/tester-clsql.cl test-suite/acl-compat-tester.cl $(doc-dir)/test-suite + + # Documentation + $(INSTALL) $(INSTALLFLAGS) doc/html/* $(doc-dir)/html + cp doc/clsql.pdf doc/cl-sql.pdf + rm -f doc/cl-sql.pdf.gz + gzip doc/cl-sql.pdf + $(INSTALL) $(INSTALLFLAGS) doc/cl-sql.pdf.gz $(doc-dir) + rm -f doc/cl-sql.pdf.gz + +# From UncommonSQL Debian package: build prerm postinst from templates + set -e ;\ + for p in $(all-pkgs); do \ + echo "processing maintainer scripts for $$p" ;\ + l=`echo $$p | sed -e "s/^cl-/cl/;"` ;\ + sed -e "s/%%/$$l/;" debian/prerm.template > debian/$$p.prerm ;\ + sed -e "s/%%/$$l/;" debian/postinst.template > debian/$$p.postinst ;\ + done + # Build architecture-independent files here. binary-indep: build install @@ -80,19 +128,14 @@ binary-arch: build install dh_testroot # dh_installdebconf dh_installdocs - dh_installexamples examples/*.cl -# dh_installmenu -# dh_installlogrotate -# dh_installemacsen -# dh_installpam -# dh_installmime -# dh_installinit -# dh_installcron -# dh_installman -# dh_installinfo -# dh_undocumented +# dh_installexamples dh_installchangelogs ChangeLog - dh_link + dh_link -p $(pkg-base) $(clc-repos)/clsql $(clc-source)/clsql + dh_link -p $(pkg-base) $(clc-repos)/clsql $(clc-source)/clsql-base + dh_link -p $(pkg-mysql) $(clc-repos)/clsql $(clc-source)/clsql-mysql + dh_link -p $(pkg-pg) $(clc-repos)/clsql $(clc-source)/clsql-postgresql + dh_link -p $(pkg-pg-socket) $(clc-repos)/clsql $(clc-source)/clsql-postgresql-socket + dh_link -p $(pkg-aodbc) $(clc-repos)/clsql $(clc-source)/clsql-aodbc dh_strip dh_compress dh_fixperms @@ -106,4 +149,3 @@ binary-arch: build install binary: binary-indep binary-arch .PHONY: build clean binary-indep binary-arch binary install configure -