diff options
author | Ying-Chieh Liao <ijliao@FreeBSD.org> | 2002-04-09 07:46:10 +0000 |
---|---|---|
committer | Ying-Chieh Liao <ijliao@FreeBSD.org> | 2002-04-09 07:46:10 +0000 |
commit | e7597c9f974a28eeeaa24f633b365192655ca249 (patch) | |
tree | d6de3dc474fd717b8fbd52e245ae98a64625a26f /lang/scm | |
parent | - Support CFLAGS properly (diff) |
- Add loadable module support
PR: 36893
Submitted by: Ports Fury
Notes
Notes:
svn path=/head/; revision=57488
Diffstat (limited to 'lang/scm')
-rw-r--r-- | lang/scm/Makefile | 53 | ||||
-rw-r--r-- | lang/scm/files/patch-build.scm | 79 | ||||
-rw-r--r-- | lang/scm/files/require.scm.in | 2 | ||||
-rw-r--r-- | lang/scm/pkg-plist | 315 |
4 files changed, 279 insertions, 170 deletions
diff --git a/lang/scm/Makefile b/lang/scm/Makefile index 83e5d1c0b9ad..53ba98fa56a1 100644 --- a/lang/scm/Makefile +++ b/lang/scm/Makefile @@ -7,6 +7,7 @@ PORTNAME= scm PORTVERSION= 5d5 +PORTREVISION= 1 CATEGORIES= lang MASTER_SITES= http://swissnet.ai.mit.edu/ftpdir/scm/ DISTFILES= scm5d5.zip slib2d3.zip slib-psd1-3.tar.gz @@ -28,38 +29,56 @@ PLIST_SUB= VERSION=${PORTVERSION} SCM_DATA= COPYING Iedline.scm Init${PORTVERSION}.scm Link.scm \ Macexp.scm Macro.scm Transcen.scm Tscript.scm mkimpcat.scm \ r4rstest.scm +SCM_MODULES= crs.so edline.so gsubr.so ioext.so posix.so ramap.so \ + record.so rgx.so sc2.so socket.so unix.so post-extract: @${TAR} -C ${WRKDIR} -zxf ${DISTDIR}/slib-psd1-3.tar.gz + @${CP} ${FILESDIR}/require.scm.in ${WRKDIR}/require.scm -do-configure: - @${SED} -e "s:%%PREFIX%%:${PREFIX}:g" \ - ${FILESDIR}/require.scm.in > ${WRKDIR}/require.scm +post-patch: + @${PERL} -pi -e 's|%%PREFIX%%|${PREFIX}|g' ${WRKDIR}/require.scm + @${PERL} -pi -e 's|%%CC%%|${CC}|g ; \ + s|%%CFLAGS%%|${CFLAGS}|g' ${WRKSRC}/build.scm post-build: - cd ${WRKSRC}; SCMLIT="./scmlit" ${SH} ./build \ - -F "arrays bignums cautious inexact" \ - -h system \ - -o scm \ - -s "${DATADIR}/" + @cd ${WRKSRC} \ + && SCMLIT="./scmlit" ${SH} ./build \ + -F "arrays bignums cautious inexact macro dynamic-linking" \ + -h system \ + -o scm \ + -s "${PREFIX}/lib/scm/" \ + && SCMLIT="./scmlit" ${SH} ./build \ + -F edit-line \ + -h system \ + -t dll \ + && SCMLIT="./scmlit" ${SH} ./build \ + -F curses \ + -h system \ + -t dll \ + && SCMLIT="./scmlit" ${SH} ./build \ + -c "sc2.c rgx.c record.c gsubr.c ioext.c posix.c unix.c \ + socket.c ramap.c" \ + -h system \ + -t dll do-install: ${INSTALL_PROGRAM} ${WRKSRC}/scm ${PREFIX}/bin ${INSTALL_PROGRAM} ${WRKSRC}/scmlit ${PREFIX}/bin ${INSTALL_MAN} ${WRKSRC}/scm.1 ${MANPREFIX}/man/man1 - @${MKDIR} ${DATADIR} - ${INSTALL_DATA} ${WRKDIR}/require.scm ${DATADIR} -.for file in ${SCM_DATA} - ${INSTALL_DATA} ${WRKSRC}/${file} ${DATADIR} + @${MKDIR} ${PREFIX}/lib/scm + ${INSTALL_DATA} ${WRKDIR}/require.scm ${PREFIX}/lib/scm +.for file in ${SCM_DATA} ${SCM_MODULES} + ${INSTALL_DATA} ${WRKSRC}/${file} ${PREFIX}/lib/scm .endfor - @${MKDIR} ${DATADIR}/slib - ${INSTALL_DATA} ${WRKDIR}/slib/*.scm ${DATADIR}/slib - @${MKDIR} ${DATADIR}/slib/psd - ${INSTALL_DATA} ${WRKDIR}/slib/psd/*.scm ${DATADIR}/slib/psd + @${MKDIR} ${PREFIX}/lib/scm/slib + ${INSTALL_DATA} ${WRKDIR}/slib/*.scm ${PREFIX}/lib/scm/slib + @${MKDIR} ${PREFIX}/lib/scm/slib/psd + ${INSTALL_DATA} ${WRKDIR}/slib/psd/*.scm ${PREFIX}/lib/scm/slib/psd ${INSTALL_DATA} ${WRKDIR}/scm/scm.info ${PREFIX}/info @install-info ${PREFIX}/info/scm.info ${PREFIX}/info/dir ${INSTALL_DATA} ${WRKDIR}/slib/slib.info ${PREFIX}/info @install-info ${PREFIX}/info/slib.info ${PREFIX}/info/dir - cd ${DATADIR} && ${PREFIX}/bin/scm -lmkimpcat.scm + cd ${PREFIX}/lib/scm && ${PREFIX}/bin/scm -lmkimpcat.scm .include <bsd.port.mk> diff --git a/lang/scm/files/patch-build.scm b/lang/scm/files/patch-build.scm new file mode 100644 index 000000000000..f947c75273fc --- /dev/null +++ b/lang/scm/files/patch-build.scm @@ -0,0 +1,79 @@ +--- build.scm.orig Fri Jan 25 10:19:37 2002 ++++ build.scm Sun Apr 7 17:20:38 2002 +@@ -585,6 +585,7 @@ + (curses darwin "" "" #f () ()) + (regex darwin "" "" #f () ()) + ++ (c freebsd "" "" #f () ()) + (m freebsd "" "-lm" #f () ()) + (curses freebsd "" "-lncurses" "/usr/lib/libncurses.a" () ()) + (regex freebsd "" "-lgnuregex" "" () ()) +@@ -1362,7 +1363,7 @@ + (lambda (files parms) + (and (batch:try-chopped-command + parms +- "cc" "-O" "-c" ++ "%%CC%%" "%%CFLAGS%%" "-c" + (c-includes parms) + (c-flags parms) + files) +@@ -1372,7 +1373,7 @@ + (batch:rename-file parms + oname (string-append oname "~")) + (and (batch:try-command parms +- "cc" "-o" oname ++ "%%CC%%" "-o" oname + (must-be-first + '("-nostartfiles" + "pre-crt0.o" "crt0.o" +@@ -1381,29 +1382,31 @@ + oname))) + (defcommand compile-dll-c-files freebsd + (lambda (files parms) +- (and (batch:try-chopped-command +- parms +- "cc" "-O" "-fpic" "-c" +- (string-append +- "-I" (parameter-list-ref parms 'scm-srcdir)) +- (c-includes parms) +- (c-flags parms) +- files) +- (let ((objs (map c->o files))) +- (every +- (lambda (f) +- (and (batch:try-command +- parms "ld" "-Bshareable" f) +- (batch:try-command +- parms "mv" "a.out" f))) +- objs) +- objs)))) +- ++ (and ++ (batch:try-chopped-command ++ parms ++ "%%CC%%" "%%CFLAGS%%" ++ "-fPIC" "-c" (c-includes parms) ++ (c-flags parms) ++ files) ++ (let* ((results ++ (map ++ (lambda (fname) ++ (and (batch:try-command ++ parms ++ "%%CC%%" "-shared" "-o" ++ (string-append fname ".so") ++ (string-append fname ".o")) ++ (batch:delete-file ++ parms (string-append fname ".o")) ++ (string-append fname ".so"))) ++ (truncate-up-to (map c-> files) #\/)))) ++ (and (apply and? results) results))))) + (defcommand make-dll-archive freebsd + (lambda (oname objects libs parms) + (and (batch:try-command + parms +- "ld" "-Bshareable" "-o" ++ "%%CC%%" "-shared" "-o" + (string-append + (car (parameter-list-ref parms 'implvic)) + oname ".so") diff --git a/lang/scm/files/require.scm.in b/lang/scm/files/require.scm.in index ebc50e1a93a0..32a79586de01 100644 --- a/lang/scm/files/require.scm.in +++ b/lang/scm/files/require.scm.in @@ -1,2 +1,2 @@ -(define (library-vicinity) "%%PREFIX%%/share/scm/slib/") +(define (library-vicinity) "%%PREFIX%%/lib/scm/slib/") (load (in-vicinity (library-vicinity) "require")) diff --git a/lang/scm/pkg-plist b/lang/scm/pkg-plist index 423f5425da6f..337bf324a38c 100644 --- a/lang/scm/pkg-plist +++ b/lang/scm/pkg-plist @@ -6,155 +6,166 @@ info/scm.info info/slib.info @exec install-info %D/info/scm.info %D/info/dir @exec install-info %D/info/slib.info %D/info/dir -share/scm/COPYING -share/scm/Iedline.scm -share/scm/Init%%VERSION%%.scm -share/scm/Link.scm -share/scm/Macexp.scm -share/scm/Macro.scm -share/scm/Transcen.scm -share/scm/Tscript.scm -share/scm/implcat -share/scm/mkimpcat.scm -share/scm/r4rstest.scm -share/scm/require.scm -share/scm/slib/Bev2slib.scm -share/scm/slib/Template.scm -share/scm/slib/alist.scm -share/scm/slib/alistab.scm -share/scm/slib/array.scm -share/scm/slib/arraymap.scm -share/scm/slib/batch.scm -share/scm/slib/break.scm -share/scm/slib/byte.scm -share/scm/slib/chap.scm -share/scm/slib/charplot.scm -share/scm/slib/cltime.scm -share/scm/slib/coerce.scm -share/scm/slib/collect.scm -share/scm/slib/color.scm -share/scm/slib/colornam.scm -share/scm/slib/colorspc.scm -share/scm/slib/comlist.scm -share/scm/slib/comparse.scm -share/scm/slib/cring.scm -share/scm/slib/daylight.scm -share/scm/slib/db2html.scm -share/scm/slib/dbcom.scm -share/scm/slib/dbrowse.scm -share/scm/slib/dbutil.scm -share/scm/slib/debug.scm -share/scm/slib/defmacex.scm -share/scm/slib/determ.scm -share/scm/slib/differ.scm -share/scm/slib/dwindtst.scm -share/scm/slib/dynamic.scm -share/scm/slib/dynwind.scm -share/scm/slib/eval.scm -share/scm/slib/factor.scm -share/scm/slib/fft.scm -share/scm/slib/fluidlet.scm -share/scm/slib/format.scm -share/scm/slib/formatst.scm -share/scm/slib/genwrite.scm -share/scm/slib/getopt.scm -share/scm/slib/getparam.scm -share/scm/slib/glob.scm -share/scm/slib/hash.scm -share/scm/slib/hashtab.scm -share/scm/slib/htmlform.scm -share/scm/slib/http-cgi.scm -share/scm/slib/lineio.scm -share/scm/slib/logical.scm -share/scm/slib/macrotst.scm -share/scm/slib/macwork.scm -share/scm/slib/makcrc.scm -share/scm/slib/matfile.scm -share/scm/slib/mbe.scm -share/scm/slib/minimize.scm -share/scm/slib/mklibcat.scm -share/scm/slib/modular.scm -share/scm/slib/mulapply.scm -share/scm/slib/mularg.scm -share/scm/slib/mwdenote.scm -share/scm/slib/mwexpand.scm -share/scm/slib/mwsynrul.scm -share/scm/slib/nclients.scm -share/scm/slib/null.scm -share/scm/slib/obj2str.scm -share/scm/slib/object.scm -share/scm/slib/paramlst.scm -share/scm/slib/plottest.scm -share/scm/slib/pnm.scm -share/scm/slib/pp.scm -share/scm/slib/ppfile.scm -share/scm/slib/prec.scm -share/scm/slib/printf.scm -share/scm/slib/priorque.scm -share/scm/slib/process.scm -share/scm/slib/promise.scm -share/scm/slib/psd/instrum.scm -share/scm/slib/psd/pexpr.scm -share/scm/slib/psd/primitives.scm -share/scm/slib/psd/psd-slib.scm -share/scm/slib/psd/read.scm -share/scm/slib/psd/runtime.scm -share/scm/slib/psd/version.scm -share/scm/slib/psxtime.scm -share/scm/slib/qp.scm -share/scm/slib/queue.scm -share/scm/slib/r4rsyn.scm -share/scm/slib/randinex.scm -share/scm/slib/random.scm -share/scm/slib/ratize.scm -share/scm/slib/rdms.scm -share/scm/slib/recobj.scm -share/scm/slib/record.scm -share/scm/slib/repl.scm -share/scm/slib/report.scm -share/scm/slib/require.scm -share/scm/slib/root.scm -share/scm/slib/sc2.scm -share/scm/slib/sc4opt.scm -share/scm/slib/sc4sc3.scm -share/scm/slib/scaexpp.scm -share/scm/slib/scaglob.scm -share/scm/slib/scainit.scm -share/scm/slib/scamacr.scm -share/scm/slib/scanf.scm -share/scm/slib/scaoutp.scm -share/scm/slib/schmooz.scm -share/scm/slib/scmacro.scm -share/scm/slib/selfset.scm -share/scm/slib/sierpinski.scm -share/scm/slib/simetrix.scm -share/scm/slib/solid.scm -share/scm/slib/sort.scm -share/scm/slib/soundex.scm -share/scm/slib/srfi-1.scm -share/scm/slib/srfi.scm -share/scm/slib/stdio.scm -share/scm/slib/strcase.scm -share/scm/slib/strport.scm -share/scm/slib/strsrch.scm -share/scm/slib/structure.scm -share/scm/slib/subarray.scm -share/scm/slib/synchk.scm -share/scm/slib/synclo.scm -share/scm/slib/synrul.scm -share/scm/slib/timezone.scm -share/scm/slib/trace.scm -share/scm/slib/tree.scm -share/scm/slib/trnscrpt.scm -share/scm/slib/tsort.scm -share/scm/slib/tzfile.scm -share/scm/slib/uri.scm -share/scm/slib/values.scm -share/scm/slib/withfile.scm -share/scm/slib/wttest.scm -share/scm/slib/wttree.scm -share/scm/slib/yasyn.scm -share/scm/slibcat -@dirrm share/scm/slib/psd -@dirrm share/scm/slib -@dirrm share/scm +lib/scm/COPYING +lib/scm/Iedline.scm +lib/scm/Init%%VERSION%%.scm +lib/scm/Link.scm +lib/scm/Macexp.scm +lib/scm/Macro.scm +lib/scm/Transcen.scm +lib/scm/Tscript.scm +lib/scm/crs.so +lib/scm/edline.so +lib/scm/gsubr.so +lib/scm/implcat +lib/scm/ioext.so +lib/scm/mkimpcat.scm +lib/scm/posix.so +lib/scm/r4rstest.scm +lib/scm/ramap.so +lib/scm/record.so +lib/scm/require.scm +lib/scm/rgx.so +lib/scm/sc2.so +lib/scm/slib/Bev2slib.scm +lib/scm/slib/Template.scm +lib/scm/slib/alist.scm +lib/scm/slib/alistab.scm +lib/scm/slib/array.scm +lib/scm/slib/arraymap.scm +lib/scm/slib/batch.scm +lib/scm/slib/break.scm +lib/scm/slib/byte.scm +lib/scm/slib/chap.scm +lib/scm/slib/charplot.scm +lib/scm/slib/cltime.scm +lib/scm/slib/coerce.scm +lib/scm/slib/collect.scm +lib/scm/slib/color.scm +lib/scm/slib/colornam.scm +lib/scm/slib/colorspc.scm +lib/scm/slib/comlist.scm +lib/scm/slib/comparse.scm +lib/scm/slib/cring.scm +lib/scm/slib/daylight.scm +lib/scm/slib/db2html.scm +lib/scm/slib/dbcom.scm +lib/scm/slib/dbrowse.scm +lib/scm/slib/dbutil.scm +lib/scm/slib/debug.scm +lib/scm/slib/defmacex.scm +lib/scm/slib/determ.scm +lib/scm/slib/differ.scm +lib/scm/slib/dwindtst.scm +lib/scm/slib/dynamic.scm +lib/scm/slib/dynwind.scm +lib/scm/slib/eval.scm +lib/scm/slib/factor.scm +lib/scm/slib/fft.scm +lib/scm/slib/fluidlet.scm +lib/scm/slib/format.scm +lib/scm/slib/formatst.scm +lib/scm/slib/genwrite.scm +lib/scm/slib/getopt.scm +lib/scm/slib/getparam.scm +lib/scm/slib/glob.scm +lib/scm/slib/hash.scm +lib/scm/slib/hashtab.scm +lib/scm/slib/htmlform.scm +lib/scm/slib/http-cgi.scm +lib/scm/slib/lineio.scm +lib/scm/slib/logical.scm +lib/scm/slib/macrotst.scm +lib/scm/slib/macwork.scm +lib/scm/slib/makcrc.scm +lib/scm/slib/matfile.scm +lib/scm/slib/mbe.scm +lib/scm/slib/minimize.scm +lib/scm/slib/mklibcat.scm +lib/scm/slib/modular.scm +lib/scm/slib/mulapply.scm +lib/scm/slib/mularg.scm +lib/scm/slib/mwdenote.scm +lib/scm/slib/mwexpand.scm +lib/scm/slib/mwsynrul.scm +lib/scm/slib/nclients.scm +lib/scm/slib/null.scm +lib/scm/slib/obj2str.scm +lib/scm/slib/object.scm +lib/scm/slib/paramlst.scm +lib/scm/slib/plottest.scm +lib/scm/slib/pnm.scm +lib/scm/slib/pp.scm +lib/scm/slib/ppfile.scm +lib/scm/slib/prec.scm +lib/scm/slib/printf.scm +lib/scm/slib/priorque.scm +lib/scm/slib/process.scm +lib/scm/slib/promise.scm +lib/scm/slib/psd/instrum.scm +lib/scm/slib/psd/pexpr.scm +lib/scm/slib/psd/primitives.scm +lib/scm/slib/psd/psd-slib.scm +lib/scm/slib/psd/read.scm +lib/scm/slib/psd/runtime.scm +lib/scm/slib/psd/version.scm +lib/scm/slib/psxtime.scm +lib/scm/slib/qp.scm +lib/scm/slib/queue.scm +lib/scm/slib/r4rsyn.scm +lib/scm/slib/randinex.scm +lib/scm/slib/random.scm +lib/scm/slib/ratize.scm +lib/scm/slib/rdms.scm +lib/scm/slib/recobj.scm +lib/scm/slib/record.scm +lib/scm/slib/repl.scm +lib/scm/slib/report.scm +lib/scm/slib/require.scm +lib/scm/slib/root.scm +lib/scm/slib/sc2.scm +lib/scm/slib/sc4opt.scm +lib/scm/slib/sc4sc3.scm +lib/scm/slib/scaexpp.scm +lib/scm/slib/scaglob.scm +lib/scm/slib/scainit.scm +lib/scm/slib/scamacr.scm +lib/scm/slib/scanf.scm +lib/scm/slib/scaoutp.scm +lib/scm/slib/schmooz.scm +lib/scm/slib/scmacro.scm +lib/scm/slib/selfset.scm +lib/scm/slib/sierpinski.scm +lib/scm/slib/simetrix.scm +lib/scm/slib/solid.scm +lib/scm/slib/sort.scm +lib/scm/slib/soundex.scm +lib/scm/slib/srfi-1.scm +lib/scm/slib/srfi.scm +lib/scm/slib/stdio.scm +lib/scm/slib/strcase.scm +lib/scm/slib/strport.scm +lib/scm/slib/strsrch.scm +lib/scm/slib/structure.scm +lib/scm/slib/subarray.scm +lib/scm/slib/synchk.scm +lib/scm/slib/synclo.scm +lib/scm/slib/synrul.scm +lib/scm/slib/timezone.scm +lib/scm/slib/trace.scm +lib/scm/slib/tree.scm +lib/scm/slib/trnscrpt.scm +lib/scm/slib/tsort.scm +lib/scm/slib/tzfile.scm +lib/scm/slib/uri.scm +lib/scm/slib/values.scm +lib/scm/slib/withfile.scm +lib/scm/slib/wttest.scm +lib/scm/slib/wttree.scm +lib/scm/slib/yasyn.scm +lib/scm/slibcat +lib/scm/socket.so +lib/scm/unix.so +@dirrm lib/scm/slib/psd +@dirrm lib/scm/slib +@dirrm lib/scm |