aboutsummaryrefslogtreecommitdiffstats
path: root/debian/rules
diff options
context:
space:
mode:
Diffstat (limited to 'debian/rules')
-rwxr-xr-xdebian/rules241
1 files changed, 30 insertions, 211 deletions
diff --git a/debian/rules b/debian/rules
index 792147e..6f8ce46 100755
--- a/debian/rules
+++ b/debian/rules
@@ -1,225 +1,44 @@
-#! /usr/bin/make -f
-# -*-Makefile-*-
+#!/usr/bin/make -f
+# See debhelper(7) (uncomment to enable)
+# output every command that modifies files on the build system.
+#export DH_VERBOSE = 1
-CC =gcc
-CFLAGS = -g -Wall
-LDFLAGS =
-SHELL =/bin/sh
-srcdir =.
+# see FEATURE AREAS in dpkg-buildflags(1)
+export DEB_BUILD_MAINT_OPTIONS = hardening=+all
-INSTALL =/usr/bin/install
-INSTALL_DIR =$(INSTALL) -d -m 755 -o root -g root
-INSTALL_PROGRAM =$(INSTALL) -m 755 -o root -g root
-INSTALL_DATA =$(INSTALL) -m 644 -o root -g root
-INSTALL_MAN =$(INSTALL) -m 644 -o root -g root
+# see ENVIRONMENT in dpkg-buildflags(1)
+# package maintainers to append CFLAGS
+#export DEB_CFLAGS_MAINT_APPEND = -Wall -pedantic
+# package maintainers to append LDFLAGS
+export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
-ifeq ($(DEB_BUILD_ARCH), m68k)
-COMPILER_OPTIONS=
-else
-COMPILER_OPTIONS=
-endif
+%:
+ dh $@
-ifeq ($(DEB_BUILD_ARCH),ia64)
-PLATFORM=linux-ia64
-else
-PLATFORM=linux
-endif
-
-SCM_OPTIONS = -p $(PLATFORM) \
- --compiler-options="$(COMPILER_OPTIONS)" \
- -F cautious \
- -F bignums \
- -F arrays \
- -F array-for-each \
- -F inexact \
- -F record \
- -F compiled-closure \
- -F generalized-c-arguments \
- -F tick-interrupts \
- -F i/o-extensions \
- -F edit-line \
- -F regex \
- -F socket \
- -F posix \
- -F unix \
- -F curses \
- -F dynamic-linking \
- -F xlib \
- -F dump \
- -F macro \
- -F differ
-
-# -F dump
-# -F turtlegr
-
-# -F heap-can-shrink \
-
-#SCHEME_LIBRARY_PATH=../slib-3a1/
-#export SCHEME_LIBRARY_PATH
-NON_LIB_FILES = 'bench.scm|build.scm|example.scm|r4rstest.scm|pi.scm|grtest.scm'
-
-# Uncomment this to turn on verbose mode
-#export DH_VERBOSE=1
-
-
-build: build-stamp
-build-stamp:
- chmod +x build
+override_dh_testdir:
dh_testdir
- QUILT_PATCHES=debian/patches quilt push -a || test $$? = 2
- cp debian/require.scm.debian require.scm
-ifeq ($(DEB_BUILD_ARCH), m68k)
- ${MAKE} scmlit CFLAGS="-g -Wall" ARCH=$(DEB_BUILD_ARCH)
-else
- ${MAKE} scmlit ARCH=$(DEB_BUILD_ARCH)
-endif
test -e /usr/share/slib || \
- (echo "Must have slib installed for compile" && exit 1)
-
-# Main SCM binary.
- ./build ${SCM_OPTIONS} | tee debian/bld
- chmod ug+x debian/bld
- debian/bld
+ (echo "Must have slib installed for compile" && exit 1)
-# SCM library
- ./build -t lib $(SCM_OPTIONS) | tee debian/bld
- chmod ug+x debian/bld
- debian/bld
+override_dh_auto_configure:
+ dh_auto_configure
+ cp debian/require.scm.debian require.scm
+ cp debian/scm.opt.debian libscm.opt
- make scm.info
- make Xlibscm.info
+override_dh_auto_build:
+ make scmlit
+ # Use the same options for both static library and executable
+ ./build -p linux -hsystem -f libscm.opt
+ ./build -p linux -hsystem -f libscm.opt -t lib
texi2html -monolithic scm.texi
texi2html -monolithic Xlibscm.texi
- touch build-stamp
-
-clean:
- dh_testdir
- dh_testroot
- -rm -f build-stamp
-
- -rm -f scm.info* scm.html tmp1 tmp2 scmflags.h scmlit
- -rm -f Xlibscm.info*
- -rm -f features.txi platform.txi
- -rm -f *.info
- -rm require.scm scm
- make distclean
- -rm -f srcdir.mk
- -rm -f debian/bld
- -rm -rf libscm.a
- -rm -rf *~ debian/*~ debian/tmp* debian/files debian/substvars
-
- QUILT_PATCHES=debian/patches quilt pop -a -R || test $$? = 2
- dh_clean
-binary-indep: build install
-# We have nothing to do by default
-
-install: build
- dh_testdir
- dh_testroot
- dh_clean -k
- dh_installdirs
-
- -rm -rf debian/scm
- -rm -rf debian/libscm-dev
-
-# debian/scm
- $(INSTALL_DIR) debian/scm
- $(INSTALL_DIR) debian/scm/DEBIAN
- $(INSTALL_PROGRAM) debian/postinst debian/scm/DEBIAN
- $(INSTALL_PROGRAM) debian/prerm debian/scm/DEBIAN
-
-# binaries
- $(INSTALL_DIR) debian/scm/usr/bin
- $(INSTALL_PROGRAM) scm debian/scm/usr/bin
-
-# library
- $(INSTALL_DIR) debian/scm/usr/lib/scm
- $(INSTALL_DATA) `ls *.scm | egrep -v ${NON_LIB_FILES}` debian/scm/usr/lib/scm
-## $(INSTALL_DATA) slibcat debian/scm/usr/lib/scm
- chmod +x debian/scm/usr/lib/scm/compile.scm
- chmod +x debian/scm/usr/lib/scm/xgen.scm
-
-# headers
-# $(INSTALL_DIR) debian/scm/usr/include/scm
-# $(INSTALL_DATA) *.h debian/scm/usr/include/scm
-
-# man pages
- $(INSTALL_DIR) debian/scm/usr/share/man/man1
- $(INSTALL_MAN) scm.1 debian/scm/usr/share/man/man1
- gzip -9vr debian/scm/usr/share/man || true
-
-# documentation
- $(INSTALL_DIR) debian/scm/usr/share/doc/scm
- $(INSTALL_DATA) debian/changelog debian/scm/usr/share/doc/scm/changelog.Debian
- $(INSTALL_DATA) ChangeLog debian/scm/usr/share/doc/scm/changelog
- $(INSTALL_DATA) QUICKREF debian/scm/usr/share/doc/scm
- $(INSTALL_DATA) README debian/scm/usr/share/doc/scm
- gzip -9v debian/scm/usr/share/doc/scm/*
- $(INSTALL_DATA) scm.html debian/scm/usr/share/doc/scm
- $(INSTALL_DATA) Xlibscm.html debian/scm/usr/share/doc/scm
- $(INSTALL_DATA) debian/copyright debian/scm/usr/share/doc/scm
-
-# examples
- $(INSTALL_DIR) debian/scm/usr/share/doc/scm/examples
- $(INSTALL_DATA) r4rstest.scm debian/scm/usr/share/doc/scm/examples
- $(INSTALL_DATA) example.scm debian/scm/usr/share/doc/scm/examples
- $(INSTALL_DATA) pi.scm debian/scm/usr/share/doc/scm/examples
- $(INSTALL_DATA) pi.c debian/scm/usr/share/doc/scm/examples
- $(INSTALL_DATA) bench.scm debian/scm/usr/share/doc/scm/examples
- $(INSTALL_DATA) split.scm debian/scm/usr/share/doc/scm/examples
-# $(INSTALL_DATA) grtest.scm debian/scm/usr/share/doc/scm/examples
-
-# info pages
- $(INSTALL_DIR) debian/scm/usr/share/info
- $(INSTALL_DATA) scm.info* debian/scm/usr/share/info
- $(INSTALL_DATA) Xlibscm.info* debian/scm/usr/share/info
- gzip -9 debian/scm/usr/share/info/*
-
-# library package
- $(INSTALL_DIR) debian/libscm-dev/usr/lib
- $(INSTALL_DIR) debian/libscm-dev/usr/include
- $(INSTALL_DIR) debian/libscm-dev/usr/share/doc/libscm-dev
- $(INSTALL_DATA) libscm.a debian/libscm-dev/usr/lib
- $(INSTALL_DATA) scm.h debian/libscm-dev/usr/include
- $(INSTALL_DATA) scmfig.h debian/libscm-dev/usr/include
- $(INSTALL_DATA) scmflags.h debian/libscm-dev/usr/include
- $(INSTALL_DATA) debian/changelog debian/libscm-dev/usr/share/doc/libscm-dev/changelog.Debian
- $(INSTALL_DATA) ChangeLog debian/libscm-dev/usr/share/doc/libscm-dev/changelog
- $(INSTALL_DATA) debian/copyright debian/libscm-dev/usr/share/doc/libscm-dev
-
-binary-arch: build install
- dh_testdir
- dh_testroot
- dh_installchangelogs
- dh_installdocs
- dh_installexamples
-# dh_install
-# dh_installmenu
-# dh_installdebconf
-# dh_installlogrotate
-# dh_installemacsen
-# dh_installcatalogs
-# dh_installpam
-# dh_installmime
-# dh_installcron
-# dh_installinfo
-# dh_uncodumented
- dh_installman
- dh_link
- dh_strip
- dh_compress
- dh_fixperms
-# dh_perl
-# dh_python
-# dh_makeshlibs
- dh_installdeb
- dh_shlibdeps
- dh_gencontrol
- dh_md5sums
- dh_builddeb
+override_dh_auto_test:
+ # skip: inexact tests fail; fixed in later upstream version
-binary: binary-indep binary-arch
+override_dh_strip:
+ dh_strip --no-automatic-dbgsym
-.PHONY: build clean binary binary-arch binary-indep install
+override_dh_auto_install:
+ # skip; files listed explicitly