1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151
|
#! /usr/bin/make -f
# -*-Makefile-*-
CC =gcc
CFLAGS =-O2 -g -Wall
LDFLAGS =
SHELL =/bin/sh
srcdir =.
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
ifeq ($(DEB_BUILD_ARCH), m68k)
COMPILER_OPTIONS=
else
COMPILER_OPTIONS=-O2
endif
SCM_OPTIONS = -p linux \
--compiler-options=-g \
--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 dump \
-F macro
# -F heap-can-shrink \
NON_LIB_FILES = 'bench.scm|build.scm|example.scm|r4rstest.scm|pi.scm'
#test: stamp-configure
# $(checkdir)
# make checklit
build:
chmod +x bld.scm
$(checkdir)
cp debian/require.scm.debian require.scm
ifeq ($(DEB_BUILD_ARCH), m68k)
${MAKE} scmlit CFLAGS=-g
else
${MAKE} scmlit
endif
test -e /usr/share/slib || \
(echo "Must have slib installed for compile" && exit 1)
# SCHEME_LIBRARY_PATH=/usr/share/slib/ ./build.scm ${SCM_OPTIONS} > debian/bld
./bld.scm ${SCM_OPTIONS} > debian/bld
chmod ug+x debian/bld
debian/bld
#-rm -f debian/bld
#makeinfo scm.texi -o scm.info
make scm.info
texi2html -monolithic scm.texi
touch build
clean:
$(checkdir)
-rm scm.info* scm.html tmp1 tmp2 scmflags.h scmlit
-rm -f scm5d0.info
-rm require.scm scm
make distclean
-rm -f build debian/bld
-rm -rf *~ debian/*~ debian/tmp* debian/files debian/substvars
binary-indep: checkroot
$(checkdir)
binary-arch: checkroot build
$(checkdir)
-rm -rf debian/tmp*
# debian/tmp
$(INSTALL_DIR) debian/tmp
$(INSTALL_DIR) debian/tmp/DEBIAN
$(INSTALL_PROGRAM) debian/postinst debian/tmp/DEBIAN
$(INSTALL_PROGRAM) debian/prerm debian/tmp/DEBIAN
$(INSTALL_PROGRAM) debian/postrm debian/tmp/DEBIAN
# binaries
$(INSTALL_DIR) debian/tmp/usr/bin
$(INSTALL_PROGRAM) -s scm debian/tmp/usr/bin
# library
$(INSTALL_DIR) debian/tmp/usr/lib/scm
$(INSTALL_DATA) `ls *.scm | egrep -v ${NON_LIB_FILES}` debian/tmp/usr/lib/scm
$(INSTALL_DATA) slibcat debian/tmp/usr/lib/scm
chmod +x debian/tmp/usr/lib/scm/bld.scm
# man pages
$(INSTALL_DIR) debian/tmp/usr/share/man/man1
$(INSTALL_MAN) scm.1 debian/tmp/usr/share/man/man1
gzip -9vr debian/tmp/usr/share/man
# documentation
$(INSTALL_DIR) debian/tmp/usr/share/doc/scm
$(INSTALL_DATA) debian/changelog debian/tmp/usr/share/doc/scm/changelog.Debian
$(INSTALL_DATA) ChangeLog debian/tmp/usr/share/doc/scm/changelog
$(INSTALL_DATA) QUICKREF debian/tmp/usr/share/doc/scm
$(INSTALL_DATA) README debian/tmp/usr/share/doc/scm
gzip -9v debian/tmp/usr/share/doc/scm/*
$(INSTALL_DATA) scm.html debian/tmp/usr/share/doc/scm
$(INSTALL_DATA) debian/copyright debian/tmp/usr/share/doc/scm
# examples
$(INSTALL_DIR) debian/tmp/usr/share/doc/scm/examples
$(INSTALL_DATA) r4rstest.scm debian/tmp/usr/share/doc/scm/examples
$(INSTALL_DATA) example.scm debian/tmp/usr/share/doc/scm/examples
$(INSTALL_DATA) pi.scm debian/tmp/usr/share/doc/scm/examples
$(INSTALL_DATA) pi.c debian/tmp/usr/share/doc/scm/examples
$(INSTALL_DATA) bench.scm debian/tmp/usr/share/doc/scm/examples
$(INSTALL_DATA) split.scm debian/tmp/usr/share/doc/scm/examples
# info pages
$(INSTALL_DIR) debian/tmp/usr/share/info
$(INSTALL_DATA) scm.info* debian/tmp/usr/share/info
gzip -9 debian/tmp/usr/share/info/*
dpkg-shlibdeps scm
dpkg-gencontrol -isp
dpkg --build debian/tmp ..
define checkdir
test -f scm.h -a -f debian/rules
endef
binary: binary-indep binary-arch
checkroot:
$(checkdir)
test root = "`whoami`"
.PHONY: clean binary binary-arch binary-indep
|