#!/usr/bin/make -f
-# Sample debian/rules that uses debhelper.
-# GNU copyright 1997 to 1999 by Joey Hess.
-# Uncomment this to turn on verbose mode.
-# export DH_VERBOSE=1
+pkg := uffi
+pkg-tests := $(pkg)-tests
+debpkg := cl-$(pkg)
+debpkg-tests := $(debpkg)-tests
-# This is the debhelper compatibility version to use.
-export DH_COMPAT=3
-
-pkg := cl-uffi
-prefix := debian/$(pkg)
-
-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-source := usr/share/common-lisp/source
+clc-systems := usr/share/common-lisp/systems
+clc-files := $(clc-source)/$(pkg)
+clc-tests := $(clc-source)/$(pkg-tests)
+doc-dir := usr/share/doc/$(debpkg)
+lib-dir := usr/lib
configure: configure-stamp
configure-stamp:
dh_testdir
# Add here commands to configure the package.
-
touch configure-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
-
+ (cd examples; make linux)
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
- rm -f debian/cl-uffi.postinst.* debian/cl-uffi.prerm.*
-
+ cd examples
+ make clean
+ rm -f debian/$(debpkg).postinst.* debian/$(debpkg).prerm.*
dh_clean
install: build
dh_testdir
dh_testroot
dh_clean -k
- dh_installdirs
+ dh_installdirs --all $(clc-systems) $(clc-source)
+ dh_installdirs -p $(debpkg) $(doc-dir) $(clc-files)/src
# Add here commands to install the package into debian/uffi.
- cp uffi.system.debian $(SYSDIR)/uffi.system
- chmod 0644 $(SYSDIR)/uffi.system
- chown root.root $(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
+ dh_install $(pkg).asd $(clc-files)
+ dh_install "src/*.lisp" $(clc-files)/src
+ dh_link $(clc-files)/$(pkg).asd $(clc-systems)/$(pkg).asd
+
+ dh_installdirs -p $(debpkg-tests) $(clc-tests)/tests $(lib-dir)
+ dh_install $(debpkg-tests) $(pkg-tests).asd $(clc-tests)
+ dh_install $(debpkg-tests) "examples/*.lisp" $(clc-tests)/tests
+ dh_install $(debpkg-tests) "examples/c-test-fns.so" $(lib-dir)
+ dh_link $(debpkg-tests) $(clc-tests)/$(pkg-tests).asd $(clc-systems)/$(clc-tests).$(pkg-tests)asd
+
+ rm -rf doc/html
+ (cd doc; tar xzf html.tar.gz; cd ..)
+ dh_install doc/html $(doc-dir)
+ rm -rf doc/html
+ cp doc/uffi.pdf doc/cl-uffi.pdf
+ gzip -9 doc/cl-uffi.pdf
+ dh_install doc/cl-uffi.pdf.gz $(doc-dir)
# Build architecture-independent files here.
binary-indep: build install
-
# Build architecture-dependent files here.
binary-arch: build install
dh_testdir
dh_testroot
# dh_installdebconf
dh_installdocs
- dh_installexamples examples/*.cl
+ dh_installexamples examples/*.lisp
# dh_installmenu
# dh_installlogrotate
# dh_installemacsen
# dh_installinfo
# dh_undocumented
dh_installchangelogs ChangeLog
- dh_link
dh_strip
dh_compress
dh_fixperms
# dh_makeshlibs
dh_installdeb
# dh_perl
-# dh_shlibdeps
+ dh_shlibdeps
dh_gencontrol
dh_md5sums
dh_builddeb