FreeBSD Bugzilla – Attachment 82285 Details for
Bug 117703
New port: devel/asdlgen generate serializers for C,C++,Haskell,Icon,Java,ML
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
asdlgen.20071030.shar
asdlgen.20071030.shar (text/plain), 30.85 KB, created by
Johannes 5
on 2007-10-31 00:30:02 UTC
(
hide
)
Description:
asdlgen.20071030.shar
Filename:
MIME Type:
Creator:
Johannes 5
Created:
2007-10-31 00:30:02 UTC
Size:
30.85 KB
patch
obsolete
># This is a shell archive. Save it in a file, remove anything before ># this line, and then unpack it by entering "sh file". Note, it may ># create directories; files and directories will be owned by you and ># have default permissions. ># ># This archive contains: ># ># asdlgen ># asdlgen/Makefile ># asdlgen/distinfo ># asdlgen/pkg-descr ># asdlgen/pkg-plist ># asdlgen/files ># asdlgen/files/patch-Makefile.in ># asdlgen/files/patch-README.sgml ># asdlgen/files/patch-configure ># asdlgen/files/patch-src_haskell_SexpLex.hs ># asdlgen/files/patch-src_haskell_StdPkl.hs ># asdlgen/files/patch-src_haskell_StdPrimsUtil.hs ># asdlgen/files/patch-src_icon_libasdl.icn ># asdlgen/files/patch-src_java_asts_stdpkl_PklJava.java ># asdlgen/files/patch-src_java_asts_stdpkl_g.java ># asdlgen/files/patch-src_java_asts_stdprims_g.java ># asdlgen/files/patch-src_java_asts_stdprims_identifier.java ># asdlgen/files/patch-src_java_asts_stdtypes_g.java ># asdlgen/files/patch-src_misc_sml-batch.in ># asdlgen/files/patch-src_sml_main_export.sml ># asdlgen/files/patch-src_sml_main_lib-files.sml ># asdlgen/files/patch-src_sml_test_harness.sml ># asdlgen/files/patch-src_sml_translate_oo_java-pp.sml ># asdlgen/files/patch-src_sml_translate_support_idmaps.sml ># asdlgen/files/patch-src_sml_translate_support_mk-file-set.sml ># asdlgen/files/patch-src_sml_util_misc_file-set.sml ># >echo c - asdlgen >mkdir -p asdlgen > /dev/null 2>&1 >echo x - asdlgen/Makefile >sed 's/^X//' >asdlgen/Makefile << 'END-of-asdlgen/Makefile' >X# New ports collection makefile for: asdlgen >X# Date created: 5 October 2007 >X# Whom: Johannes 5 Joemann <joemann@beefree.free.de> >X# >X# $FreeBSD$ >X# >X >XPORTNAME= asdlgen >XPORTVERSION= 2.0.b20060323 >XCATEGORIES= devel haskell java >XMASTER_SITES= http://moby.cs.uchicago.edu/downloads/ \ >X ftp://mirror.free.de/http/moby.cs.uchicago.edu/downloads/ >XDISTFILES= asdlGen.tar.gz >X >XMAINTAINER= joemann@beefree.free.de >XCOMMENT= Interoperable serializers for C,C++,Haskell,Icon,Java,ML >X >XBUILD_DEPENDS= smlnj-devel>=110.65:${PORTSDIR}/lang/sml-nj-devel >X.if !defined(NOPORTDOCS) >XBUILD_DEPENDS+= sgmlfmt:${PORTSDIR}/textproc/sgmlformat >X.endif >X >XOPTIONS= CII "Install libcii for use by generated C and C++ code" on \ >X EXAMPLES "Install the simple 'arithexp' usage example" off >X >X.include <bsd.port.pre.mk> >X >X.if defined(WITH_CII) >XRUN_DEPENDS+= libcii>=1.1:${PORTSDIR}/devel/libcii >X.endif >X >X.if defined(WITH_EXAMPLES) >XDEMOVERSION= 20071030 >XDEMOARCHIVE= asdlgen-demo.${DEMOVERSION}.tar.gz >XDEMODIR= arithexp >XMASTER_SITES+= ftp://offshore.free.de/pub/dist/FreeBSD/ports/devel/:demo >XDISTFILES+= ${DEMOARCHIVE}:demo >XPLIST_SUB+= EXAMPLES="" DEMODIR=${DEMODIR} >X.else >XPLIST_SUB+= EXAMPLES="@comment " DEMODIR=${DEMODIR} >X.endif >X >XWRKSRC= ${WRKDIR}/asdlGen >XHAS_CONFIGURE= yes >XCONFIGURE_ENV+= SMLNJ_DEVEL=yes >XALL_TARGET= build >XMAKE_ENV+= SMLNJ_DEVEL=yes >X >X# Nowadays Java package names must be all lowercase, says JDK1.5. Cf. >X# http://java.sun.com/docs/books/tutorial/java/package/namingpkgs.html >Xpre-patch: >X.for dir in StdPkl StdPrims StdTypes >X cd ${WRKSRC}/src/java/asts && [ -d ${dir} ] && ${MV} ${dir} ${dir:L} >X.endfor >X >Xpost-build: >X cd ${WRKSRC}/src/sml && heap2exec asdlGen.*-bsd asdlGen >X.if !defined(NOPORTDOCS) >X.for format in ascii html ps >X @${MKDIR} ${WRKSRC}/doc-build/README >X cd ${WRKSRC}/doc-build/README && \ >X sgmlfmt -f ${format} ${WRKSRC}/README.sgml >X @${MKDIR} ${WRKSRC}/doc-build/manual >X cd ${WRKSRC}/doc-build/manual && \ >X sgmlfmt -f ${format} ${WRKSRC}/src/doc/manual.sgml >X.endfor >X.endif >X >Xdo-install: >X ${INSTALL_PROGRAM} ${WRKSRC}/src/sml/asdlGen ${PREFIX}/bin >X @${MKDIR} ${EXAMPLESDIR} >X cd ${WRKSRC}/src/asdl/tests && ${COPYTREE_SHARE} \* ${EXAMPLESDIR} >X ${INSTALL_DATA} -p ${WRKSRC}/src/asdl/std-types.asdl ${EXAMPLESDIR} >X.if !defined(NOPORTDOCS) >X @${MKDIR} ${DOCSDIR} >X ${INSTALL_MAN} -p ${WRKSRC}/COPYRIGHT ${DOCSDIR} >X cd ${WRKSRC}/doc-build && ${COPYTREE_SHARE} \* ${DOCSDIR} >X.endif >X.if defined(WITH_EXAMPLES) >X cd ${WRKDIR}/${DEMODIR} && ${MAKE} clean >X cd ${WRKDIR} && ${COPYTREE_SHARE} ${DEMODIR} ${EXAMPLESDIR} >X.endif >X >X# The following test-* targets are used for maintaining this port but >X# might be interesting for users exploring different target languages. >X >X.ifmake test-compile || test-demo >XBUILD_DEPENDS+= libcii>=1.1:${PORTSDIR}/devel/libcii \ >X hugs:${PORTSDIR}/lang/hugs \ >X icont:${PORTSDIR}/lang/icon \ >X javac:${PORTSDIR}/java/diablo-jdk15 \ >X ocaml:${PORTSDIR}/lang/ocaml >X >X.ifmake test-compile >X# This target runs the generate+compile tests from the asdlGen distribution >X# for all supported languages. The "Test" structure is defined in >X# ${WRKSRC}/src/sml/test/harness.sml . >Xtest-compile: depends clean-depends build >X.if defined(WITH_CII) >X cd ${WRKSRC}/src/sml && export SMLNJ_DEVEL=yes && \ >X ${ECHO_CMD} "Test.do_it ();" | sml -m sources.cm >X.else >X @${ECHO_CMD} "You have to set the CII option (make config)" >X @${ECHO_CMD} "before you can use the test-compile target." >X @exit 1 >X.endif >X.endif >X >X.ifmake test-demo >Xtest-demo: clean depends clean-depends build >X.if defined(WITH_CII) && defined(WITH_EXAMPLES) >X cd ${WRKDIR}/${DEMODIR} && ${MAKE} ASDLGEN=${WRKSRC}/src/sml/asdlGen >X.else >X @${ECHO_CMD} "You have to set the CII and EXAMPLES options" >X @${ECHO_CMD} "(make config) before you can use the test-demo target." >X @exit 1 >X.endif >X.endif >X.endif >X >X.include <bsd.port.post.mk> >END-of-asdlgen/Makefile >echo x - asdlgen/distinfo >sed 's/^X//' >asdlgen/distinfo << 'END-of-asdlgen/distinfo' >XMD5 (asdlGen.tar.gz) = e61e9b1c2cfb3b22a1d0008c7b54c8e0 >XSHA256 (asdlGen.tar.gz) = d833ad73aa16259422f42d8c80fe58cd7b9809e875a5a568237250c3332aa020 >XSIZE (asdlGen.tar.gz) = 409079 >XMD5 (asdlgen-demo.20071030.tar.gz) = fe10aaf4399f3b1093f1ed797be08653 >XSHA256 (asdlgen-demo.20071030.tar.gz) = 525618e13871dca6aca808edbd1ba3cb3e3997a1ab0ab9397c0bfb337b68caa5 >XSIZE (asdlgen-demo.20071030.tar.gz) = 5934 >END-of-asdlgen/distinfo >echo x - asdlgen/pkg-descr >sed 's/^X//' >asdlgen/pkg-descr << 'END-of-asdlgen/pkg-descr' >XasdlGen is a tool for generating data marshalling and >Xunmarshalling code from a high-level (ASDL) specification. >XIt can generate such code for sml, ocaml, ansi-c, java, haskell, >Xicon, c++. >X >XThe Abstract Syntax Description Lanuguage (ASDL) is a language >Xdesigned to describe the tree-like data structures in compilers. >XIts main goal is to provide a method for compiler components >Xwritten in different languages to interoperate. >X >XWWW: http://asdl.sourceforge.net/ >END-of-asdlgen/pkg-descr >echo x - asdlgen/pkg-plist >sed 's/^X//' >asdlgen/pkg-plist << 'END-of-asdlgen/pkg-plist' >Xbin/asdlGen >X%%PORTDOCS%%%%DOCSDIR%%/COPYRIGHT >X%%PORTDOCS%%%%DOCSDIR%%/README/README.ascii >X%%PORTDOCS%%%%DOCSDIR%%/README/README.html >X%%PORTDOCS%%%%DOCSDIR%%/README/README.ps >X%%PORTDOCS%%%%DOCSDIR%%/README/README1.html >X%%PORTDOCS%%%%DOCSDIR%%/README/README2.html >X%%PORTDOCS%%%%DOCSDIR%%/README/README_toc.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual.ascii >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual.ps >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual1.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual10.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual11.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual12.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual13.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual14.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual15.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual16.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual17.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual18.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual19.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual2.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual20.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual21.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual22.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual23.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual24.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual25.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual26.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual27.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual28.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual29.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual3.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual30.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual31.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual32.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual33.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual34.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual35.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual36.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual37.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual4.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual5.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual6.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual7.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual8.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual9.html >X%%PORTDOCS%%%%DOCSDIR%%/manual/manual_toc.html >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/ArithExp.asdl >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/Common/Makefile.inc >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/Common/input.pickle.uu >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/Common/result.pickle.uu >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/Makefile >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/ansi-c/EvalArithExp.c >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/ansi-c/EvalArithExp.h >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/ansi-c/Main.c >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/ansi-c/Makefile >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/cxx/EvalArithExp.cxx >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/cxx/EvalArithExp.hxx >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/cxx/Main.cxx >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/cxx/Makefile >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/haskell/EvalArithExp.hs >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/haskell/Main.hs >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/haskell/Makefile >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/icon/EvalArithExp.icn >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/icon/Main.icn >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/icon/Makefile >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/java/EvalArithExp.java >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/java/Main.java >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/java/Makefile >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/ocaml/EvalArithExp.ml >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/ocaml/EvalArithExp.mli >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/ocaml/Main.ml >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/ocaml/Main.mli >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/ocaml/Makefile >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/sml/EvalArithExp.sml >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/sml/Main.cm >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/sml/Main.sml >X%%EXAMPLES%%%%EXAMPLESDIR%%/%%DEMODIR%%/sml/Makefile >X%%EXAMPLESDIR%%/asdl.asdl >X%%EXAMPLESDIR%%/bugs/bug3.asdl >X%%EXAMPLESDIR%%/bugs/bug4.asdl >X%%EXAMPLESDIR%%/bugs/bug5.asdl >X%%EXAMPLESDIR%%/errors.asdl >X%%EXAMPLESDIR%%/modTest/all.asdl >X%%EXAMPLESDIR%%/modTest/base.asdl >X%%EXAMPLESDIR%%/modTest/exp.asdl >X%%EXAMPLESDIR%%/modTest/op.asdl >X%%EXAMPLESDIR%%/modTest/pos.asdl >X%%EXAMPLESDIR%%/modTest/stm.asdl >X%%EXAMPLESDIR%%/pattern.asdl >X%%EXAMPLESDIR%%/rcc.asdl >X%%EXAMPLESDIR%%/slp.asdl >X%%EXAMPLESDIR%%/slp3.asdl >X%%EXAMPLESDIR%%/std-types.asdl >X%%EXAMPLESDIR%%/test.asdl >X%%EXAMPLESDIR%%/toplevel.asdl >X%%EXAMPLESDIR%%/views.asdl >X%%EXAMPLESDIR%%/zsuif.asdl >X%%PORTDOCS%%@dirrm %%DOCSDIR%%/README >X%%PORTDOCS%%@dirrm %%DOCSDIR%%/manual >X%%PORTDOCS%%@dirrm %%DOCSDIR%% >X%%EXAMPLES%%@dirrm %%EXAMPLESDIR%%/%%DEMODIR%%/Common >X%%EXAMPLES%%@dirrm %%EXAMPLESDIR%%/%%DEMODIR%%/ansi-c >X%%EXAMPLES%%@dirrm %%EXAMPLESDIR%%/%%DEMODIR%%/cxx >X%%EXAMPLES%%@dirrm %%EXAMPLESDIR%%/%%DEMODIR%%/haskell >X%%EXAMPLES%%@dirrm %%EXAMPLESDIR%%/%%DEMODIR%%/icon >X%%EXAMPLES%%@dirrm %%EXAMPLESDIR%%/%%DEMODIR%%/java >X%%EXAMPLES%%@dirrm %%EXAMPLESDIR%%/%%DEMODIR%%/ocaml >X%%EXAMPLES%%@dirrm %%EXAMPLESDIR%%/%%DEMODIR%%/sml >X%%EXAMPLES%%@dirrm %%EXAMPLESDIR%%/%%DEMODIR%% >X@dirrm %%EXAMPLESDIR%%/bugs >X@dirrm %%EXAMPLESDIR%%/modTest >X@dirrm %%EXAMPLESDIR%% >END-of-asdlgen/pkg-plist >echo c - asdlgen/files >mkdir -p asdlgen/files > /dev/null 2>&1 >echo x - asdlgen/files/patch-Makefile.in >sed 's/^X//' >asdlgen/files/patch-Makefile.in << 'END-of-asdlgen/files/patch-Makefile.in' >X--- Makefile.in.orig Thu Mar 23 17:06:31 2006 >X+++ Makefile.in Tue Sep 11 08:56:38 2007 >X@@ -8,7 +8,7 @@ >X INSTALL_BINDIR = $(PREFIX)/bin >X INSTALL_HEAPDIR = $(INSTALL_BINDIR)/.heap >X INSTALL_WRAPPER = @top_srcdir@/bin/install-sml-wrapper.sh >X-SML = @SMLNJ_CMD@ >X+SML = @SMLNJ@ >X ML_BUILD = @ML_BUILD@ >X >X PROGRAM = asdlGen >X@@ -20,7 +20,7 @@ >X >X INSTALL=@INSTALL@ >X >X-build: $(TARGET) >X+build: $(HEAP) >X >X $(HEAP): >X (cd $(SRCDIR); \ >END-of-asdlgen/files/patch-Makefile.in >echo x - asdlgen/files/patch-README.sgml >sed 's/^X//' >asdlgen/files/patch-README.sgml << 'END-of-asdlgen/files/patch-README.sgml' >X--- README.sgml.orig 2000-02-10 21:02:02.000000000 +0100 >X+++ README.sgml 2007-09-28 18:48:26.000000000 +0200 >X@@ -77,13 +77,13 @@ >X &asdlGen; tacks this on to any set of input files to remain compatible with >X existing code. Users, can add their own primitive types by simply including >X there own primitive module declaration. See >X-<htmlurl url="src/asdl/std-types.asdl" name="src/asdl/std-types.asdl"> >X+<htmlurl url="../../../examples/asdlgen/std-types.asdl" name="std-types.asdl"> >X for an example that defines a richer set fix width integer and word types, >X for various languages. >X <item> Support for an unnamed "Toplevel" module. Allowing one to generate less >X verbose code for pedagogical purposes. See >X-<htmlurl url="src/asdl/tests/toplevel.asdl" >X-name="src/asdl/tests/toplevel.asdl"> for an example usage. >X+<htmlurl url="../../../examples/asdlgen/toplevel.asdl" >X+name="toplevel.asdl"> for an example usage. >X </itemize> >X >X <sect>COPYRIGHT<p> >END-of-asdlgen/files/patch-README.sgml >echo x - asdlgen/files/patch-configure >sed 's/^X//' >asdlgen/files/patch-configure << 'END-of-asdlgen/files/patch-configure' >X--- configure.orig Thu Mar 23 16:55:38 2006 >X+++ configure Tue Sep 11 08:39:10 2007 >X@@ -1328,7 +1328,7 @@ >X >X >X if test z$SMLNJ = z ; then >X- for ac_prog in sml-cm sml sml.bat >X+ for ac_prog in sml >X do >X # Extract the first word of "$ac_prog", so it can be a program name with args. >X set dummy $ac_prog; ac_word=$2 >END-of-asdlgen/files/patch-configure >echo x - asdlgen/files/patch-src_haskell_SexpLex.hs >sed 's/^X//' >asdlgen/files/patch-src_haskell_SexpLex.hs << 'END-of-asdlgen/files/patch-src_haskell_SexpLex.hs' >X--- src/haskell/SexpLex.hs.orig 1999-08-10 20:05:41.000000000 +0200 >X+++ src/haskell/SexpLex.hs 2007-10-01 14:24:55.000000000 +0200 >X@@ -1,5 +1,7 @@ >X module SexpLex(Tok(..),scan,toString,) where >X >X+import Data.Char >X+ >X data Tok = >X LP | RP >X | INT Int >END-of-asdlgen/files/patch-src_haskell_SexpLex.hs >echo x - asdlgen/files/patch-src_haskell_StdPkl.hs >sed 's/^X//' >asdlgen/files/patch-src_haskell_StdPkl.hs << 'END-of-asdlgen/files/patch-src_haskell_StdPkl.hs' >X--- src/haskell/StdPkl.hs.orig 1999-09-13 00:27:00.000000000 +0200 >X+++ src/haskell/StdPkl.hs 2007-10-01 12:43:41.000000000 +0200 >X@@ -50,9 +50,9 @@ >X write_integral :: Integral a => a -> Handle -> IO () >X write_integral n s = loop (abs n) >X where >X- loop x | x <= 63 = hPutChar s (chr (toInt(finish (n<0) x))) >X+ loop x | x <= 63 = hPutChar s (chr (fromIntegral(finish (n<0) x))) >X | otherwise = do >X- hPutChar s (chr (toInt(nibble x))) >X+ hPutChar s (chr (fromIntegral(nibble x))) >X loop (x `shiftr` 7) >X nibble n = ((n `andb` 0x7f) `orb` 0x80) `andb` 0xff >X finish False n = n `andb` 255 >X@@ -63,14 +63,14 @@ >X read_integral s >X = do { >X c <- hGetChar s; >X- loop (fromInt (ord c)) 0 0 >X+ loop (fromIntegral (ord c)) 0 0 >X } >X where >X loop n acc shift = >X if (continue_bit_set n) then >X do { >X c <- hGetChar s; >X- loop (fromInt(ord c) `andb` 255) >X+ loop (fromIntegral(ord c) `andb` 255) >X (acc `orb` ((n `andb` 0x7f) `shiftl` shift)) >X (shift+7) >X } >END-of-asdlgen/files/patch-src_haskell_StdPkl.hs >echo x - asdlgen/files/patch-src_haskell_StdPrimsUtil.hs >sed 's/^X//' >asdlgen/files/patch-src_haskell_StdPrimsUtil.hs << 'END-of-asdlgen/files/patch-src_haskell_StdPrimsUtil.hs' >X--- src/haskell/StdPrimsUtil.hs.orig 1999-09-13 00:27:01.000000000 +0200 >X+++ src/haskell/StdPrimsUtil.hs 2007-10-04 21:22:09.000000000 +0200 >X@@ -81,8 +81,8 @@ >X >X sexp_rd_identifier s = do t <- get_prim "identifier" s >X (case t of >X- SexpLex.STR str -> return str >X- _ -> error "expected identifier") >X+ SexpLex.STR str -> return str >X+ _ -> error "expected identifier") >X >X >X >END-of-asdlgen/files/patch-src_haskell_StdPrimsUtil.hs >echo x - asdlgen/files/patch-src_icon_libasdl.icn >sed 's/^X//' >asdlgen/files/patch-src_icon_libasdl.icn << 'END-of-asdlgen/files/patch-src_icon_libasdl.icn' >X--- src/icon/libasdl.icn.orig 1999-05-22 00:39:15.000000000 +0200 >X+++ src/icon/libasdl.icn 2007-10-19 23:53:57.000000000 +0200 >X@@ -29,6 +29,7 @@ >X t := abs(i) >X while t > 63 do { >X b := iand(t, 127) >X+ b := ior(b, 128) >X writes(f, char(b)) >X t := ishift(t, -7) >X } >X@@ -36,7 +37,6 @@ >X if i < 0 then { >X b := ior(t, 64) >X } >X- b := ior(b, 128) >X writes(f, char(b)) >X end >X >X@@ -46,7 +46,7 @@ >X v := 0 >X repeat { >X b := ord(reads(f)) | runerr(500) >X- if iand(b, 128) ~= 0 then { >X+ if iand(b, 128) = 0 then { >X s := iand(b, 64) >X b := iand(b, 63) >X v := ior(b, ishift(v, 6)) >END-of-asdlgen/files/patch-src_icon_libasdl.icn >echo x - asdlgen/files/patch-src_java_asts_stdpkl_PklJava.java >sed 's/^X//' >asdlgen/files/patch-src_java_asts_stdpkl_PklJava.java << 'END-of-asdlgen/files/patch-src_java_asts_stdpkl_PklJava.java' >X--- src/java/asts/stdpkl/PklJava.java.orig 1999-09-13 00:27:01.000000000 +0200 >X+++ src/java/asts/stdpkl/PklJava.java 2007-10-11 19:12:08.000000000 +0200 >X@@ -1,4 +1,4 @@ >X-package asts.StdPkl; >X+package asts.stdpkl; >X import java.io.*; >X import java.math.BigInteger; >X >END-of-asdlgen/files/patch-src_java_asts_stdpkl_PklJava.java >echo x - asdlgen/files/patch-src_java_asts_stdpkl_g.java >sed 's/^X//' >asdlgen/files/patch-src_java_asts_stdpkl_g.java << 'END-of-asdlgen/files/patch-src_java_asts_stdpkl_g.java' >X--- src/java/asts/stdpkl/g.java.orig 1999-09-13 00:27:02.000000000 +0200 >X+++ src/java/asts/stdpkl/g.java 2007-10-11 19:12:08.000000000 +0200 >X@@ -1,4 +1,4 @@ >X-package asts.StdPkl; >X+package asts.stdpkl; >X final public class g extends PklJava { >X public static void write_tag (int x, java.io.OutputStream s) { >X PklJava.write_java_int(x,s); >END-of-asdlgen/files/patch-src_java_asts_stdpkl_g.java >echo x - asdlgen/files/patch-src_java_asts_stdprims_g.java >sed 's/^X//' >asdlgen/files/patch-src_java_asts_stdprims_g.java << 'END-of-asdlgen/files/patch-src_java_asts_stdprims_g.java' >X--- src/java/asts/stdprims/g.java.orig 1999-09-13 00:27:02.000000000 +0200 >X+++ src/java/asts/stdprims/g.java 2007-10-11 19:12:08.000000000 +0200 >X@@ -1,13 +1,13 @@ >X-package asts.StdPrims; >X+package asts.stdprims; >X import java.io.*; >X >X-final public class g extends asts.StdPkl.PklJava { >X+final public class g extends asts.stdpkl.PklJava { >X >X public static void write_java_lang_String(String x,OutputStream s) { >X int sz = x.length(); >X int i = 0; >X try { >X- asts.StdPkl.g.write_tag(sz,s); >X+ asts.stdpkl.g.write_tag(sz,s); >X while(i < sz) { >X s.write((byte)x.charAt(i++)); >X } >X@@ -17,7 +17,7 @@ >X } >X >X public static String read_java_lang_String(InputStream s) { >X- int sz = asts.StdPkl.g.read_tag(s); >X+ int sz = asts.stdpkl.g.read_tag(s); >X StringBuffer sb = new StringBuffer(sz); >X try { >X while(sz > 0) { >END-of-asdlgen/files/patch-src_java_asts_stdprims_g.java >echo x - asdlgen/files/patch-src_java_asts_stdprims_identifier.java >sed 's/^X//' >asdlgen/files/patch-src_java_asts_stdprims_identifier.java << 'END-of-asdlgen/files/patch-src_java_asts_stdprims_identifier.java' >X--- src/java/asts/stdprims/identifier.java.orig 1999-05-31 21:21:29.000000000 +0200 >X+++ src/java/asts/stdprims/identifier.java 2007-10-11 19:12:08.000000000 +0200 >X@@ -1,4 +1,4 @@ >X-package asts.StdPrims; >X+package asts.stdprims; >X >X public class identifier { >X private identifier() {} >END-of-asdlgen/files/patch-src_java_asts_stdprims_identifier.java >echo x - asdlgen/files/patch-src_java_asts_stdtypes_g.java >sed 's/^X//' >asdlgen/files/patch-src_java_asts_stdtypes_g.java << 'END-of-asdlgen/files/patch-src_java_asts_stdtypes_g.java' >X--- src/java/asts/stdtypes/g.java.orig 1999-09-13 00:27:04.000000000 +0200 >X+++ src/java/asts/stdtypes/g.java 2007-10-11 19:13:53.000000000 +0200 >X@@ -1,4 +1,4 @@ >X-package asts.StdTypes; >X-final public class g extends asts.StdPkl.PklJava { >X+package asts.stdtypes; >X+final public class g extends asts.stdpkl.PklJava { >X // inherit methods from PklJava >X } >END-of-asdlgen/files/patch-src_java_asts_stdtypes_g.java >echo x - asdlgen/files/patch-src_misc_sml-batch.in >sed 's/^X//' >asdlgen/files/patch-src_misc_sml-batch.in << 'END-of-asdlgen/files/patch-src_misc_sml-batch.in' >X--- src/misc/sml-batch.in.orig 2001-10-02 16:20:32.000000000 +0200 >X+++ src/misc/sml-batch.in 2007-10-04 23:56:09.000000000 +0200 >X@@ -3,12 +3,15 @@ >X cmfile=sources-$$.cm >X cat > ${cmfile} <<EOF >X Group is >X+\$/basis.cm >X $@ >X EOF >X @SMLNJ@ <<EOF >X+(* >X val path = String.tokens (fn x => x = #":") "${cmpath}"; >X CM.set_path (SOME (path@(CM.set_path NONE))); >X-((CM.make' ("${cmfile}") handle _ => OS.Process.exit OS.Process.failure); >X+*) >X+((CM.make ("${cmfile}") handle _ => OS.Process.exit OS.Process.failure); >X OS.Process.exit OS.Process.success; ()) >X EOF >X ret=$? >END-of-asdlgen/files/patch-src_misc_sml-batch.in >echo x - asdlgen/files/patch-src_sml_main_export.sml >sed 's/^X//' >asdlgen/files/patch-src_sml_main_export.sml << 'END-of-asdlgen/files/patch-src_sml_main_export.sml' >X--- src/sml/main/export.sml.orig 2000-01-14 03:02:38.000000000 +0100 >X+++ src/sml/main/export.sml 2007-10-27 18:26:21.000000000 +0200 >X@@ -81,7 +81,7 @@ >X >X fun asdlGen (name,args) = >X (run_it (name,args);OS.Process.success) handle e => >X- (Error.say ("Error: "^(exnMessage e)^"\n"); >X+ (Error.say ("Error: "^(General.exnMessage e)^"\n"); >X OS.Process.failure) >X >X end >END-of-asdlgen/files/patch-src_sml_main_export.sml >echo x - asdlgen/files/patch-src_sml_main_lib-files.sml >sed 's/^X//' >asdlgen/files/patch-src_sml_main_lib-files.sml << 'END-of-asdlgen/files/patch-src_sml_main_lib-files.sml' >X--- src/sml/main/lib-files.sml.orig 2000-02-10 19:51:47.000000000 +0100 >X+++ src/sml/main/lib-files.sml 2007-10-11 17:41:21.000000000 +0200 >X@@ -58,23 +58,23 @@ >X fun join (x,y) = OS.Path.concat("asts",OS.Path.concat(x,y)) >X >X val std_pkl_lib = >X- FileSet.mkLib {name=join("StdPkl","g.java"),depends=[],impl= >X+ FileSet.mkLib {name=join("stdpkl","g.java"),depends=[],impl= >X MkFileSet.file_set (mkroot ["java"]) FileSet.empty >X- [(join("StdPkl","g.java"),[]), >X- (join("StdPkl","PklJava.java"),[join("StdPkl","g.java")])]} >X+ [(join("stdpkl","g.java"),[]), >X+ (join("stdpkl","PklJava.java"),[join("stdpkl","g.java")])]} >X >X val std_prims_lib = >X- FileSet.mkLib {name=join("StdPrims","g.java"), >X- depends=[join("StdPkl","g.java")],impl= >X+ FileSet.mkLib {name=join("stdprims","g.java"), >X+ depends=[join("stdpkl","g.java")],impl= >X MkFileSet.file_set (mkroot ["java"]) FileSet.empty >X- [(join("StdPrims","g.java"),[join("StdPkl","g.java")]), >X- (join("StdPrims","identifier.java"),[join("StdPrims","g.java")])]} >X+ [(join("stdprims","g.java"),[join("stdpkl","g.java")]), >X+ (join("stdprims","identifier.java"),[join("stdprims","g.java")])]} >X >X val std_types_lib = >X- FileSet.mkLib {name=join("StdTypes","g.java"), >X- depends=[join("StdPkl","g.java")],impl= >X+ FileSet.mkLib {name=join("stdtypes","g.java"), >X+ depends=[join("stdpkl","g.java")],impl= >X MkFileSet.file_set (mkroot ["java"]) FileSet.empty >X- [(join("StdTypes","g.java"),[])]} >X+ [(join("stdtypes","g.java"),[])]} >X in val java = add_files [std_pkl_lib,std_prims_lib,std_types_lib] >X end >X local >END-of-asdlgen/files/patch-src_sml_main_lib-files.sml >echo x - asdlgen/files/patch-src_sml_test_harness.sml >sed 's/^X//' >asdlgen/files/patch-src_sml_test_harness.sml << 'END-of-asdlgen/files/patch-src_sml_test_harness.sml' >X--- src/sml/test/harness.sml.orig 2001-10-02 16:20:32.000000000 +0200 >X+++ src/sml/test/harness.sml 2007-10-07 20:09:45.000000000 +0200 >X@@ -69,15 +69,15 @@ >X val c_includes = (mk_path ["c"])@ ["/usr/local/include"] >X val c_libs = mk_path ["c"]@ ["/usr/local/lib"] >X >X- val cxx_includes = mk_path ["c"] >X- val cxx_libs = mk_path ["cxx"] >X+ val cxx_includes = (mk_path ["cxx"])@ ["/usr/local/include"] >X+ val cxx_libs = mk_path ["cxx"]@ ["/usr/local/lib"] >X >X val java_classes = [] (*mk_path ["java"]*) >X >X val cm_path = [] (* mk_path ["sml","base"]*) >X val icon_ucode = [] (* mk_path ["icon"] *) >X val haskell_path = (* (mk_path ["haskell"])@*) >X- ["/usr/share/hugs/lib"] >X+ [ (*"/usr/share/hugs/lib"*) ] >X val ocaml_path = [] (* (mk_path ["ocaml"]) *) >X end >X >X@@ -208,7 +208,7 @@ >X val sigs = (get_files "sml" i) >X val outs = strs@sigs >X val cm_path = S.cm_path >X- in P.sml_batch{cm_path=cm_path,inputs="smlnj-lib.cm"::outs} >X+ in P.sml_batch{cm_path=cm_path,inputs="$/smlnj-lib.cm"::outs} >X end >X >X fun ocaml_comp i = >X@@ -295,9 +295,9 @@ >X mk_path ["modTest","pos.asdl"]]) >X >X val big_int_test = >X- (test_all "generic.asdl" [mk_path ["generic.asdl"]]) >X+ (test_all "generic.asdl" [mk_path ["..","generic.asdl"]]) >X val asdl_test = >X- (test_all "asdl.asdl" [mk_path ["asdl.asdl"]]) >X+ (test_all "asdl.asdl" [mk_path ["..","asdl.asdl"]]) >X >X val pattern_test = >X (test_all "pattern.asdl" [mk_path ["pattern.asdl"]]) >END-of-asdlgen/files/patch-src_sml_test_harness.sml >echo x - asdlgen/files/patch-src_sml_translate_oo_java-pp.sml >sed 's/^X//' >asdlgen/files/patch-src_sml_translate_oo_java-pp.sml << 'END-of-asdlgen/files/patch-src_sml_translate_oo_java-pp.sml' >X--- src/sml/translate/oo/java-pp.sml.orig 2000-01-14 02:42:28.000000000 +0100 >X+++ src/sml/translate/oo/java-pp.sml 2007-10-12 21:02:26.000000000 +0200 >X@@ -36,7 +36,8 @@ >X (case qualifier of >X [] => NONE >X | [""] => SOME {base=base,qualifier=[package_prefix]} >X- | _ => SOME {base=base,qualifier=[package_prefix]@qualifier}) >X+ | _ => SOME {base=base,qualifier=[package_prefix]@ >X+ (map (String.map Char.toLower) qualifier)}) >X fun fix_ty_path {qualifier,base} = >X case base of >X "java_boolean" => SOME {qualifier=[],base="boolean"} >X@@ -280,6 +281,7 @@ >X end >X | pp_cls mn x = >X let >X+ val mn = String.map Char.toLower mn >X fun get_name (DeclClass x) = PP.fix_tid(#name(x)) >X | get_name (DeclAbstractClass x) = PP.fix_tid(#name(x)) >X | get_name _ = raise Error.internal >X@@ -311,6 +313,7 @@ >X >X fun mk_dep name = >X let val mn = ModuleId.toString (PP.fix_mid name) >X+ val mn = String.map Char.toLower mn >X in >X OS.Path.concat(package_prefix, >X OS.Path.concat(mn, >X@@ -337,6 +340,7 @@ >X end >X | pp_consts mn x props imports = >X let >X+ val mn = String.map Char.toLower mn >X val pp = >X cat >X [str ("package "^package_prefix^"."^mn^";"), nl, >END-of-asdlgen/files/patch-src_sml_translate_oo_java-pp.sml >echo x - asdlgen/files/patch-src_sml_translate_support_idmaps.sml >sed 's/^X//' >asdlgen/files/patch-src_sml_translate_support_idmaps.sml << 'END-of-asdlgen/files/patch-src_sml_translate_support_idmaps.sml' >X--- src/sml/translate/support/idmaps.sml.orig 1999-09-13 00:27:25.000000000 +0200 >X+++ src/sml/translate/support/idmaps.sml 2007-10-12 18:43:12.000000000 +0200 >X@@ -102,15 +102,17 @@ >X struct >X val id_map = >X List.map (fix_kw "_") >X- ["abstract","boolean", "break", "byte", "case", "char", >X- "class", "const", "continue", "do", "double", "else", >X- "extends", "final","finally", "int", "float", "for", >X- "default", "if", "implements", "import", "instanceof", >X- "interface", "long", "native", "new", "public", >X- "short", "super", "switch", "synchroinized", "package", >X- "private", "protected", "transient", "return", "void", >X- "static", "while", "throw", "throws", "try", >X- "volatile","kind"] >X+ ["abstract", "assert", "boolean", "break", "byte", >X+ "case", "catch", "char", "class", "const", "continue", >X+ "default", "do", "double", "else", "enum", "extends", >X+ "final", "finally", "float", "for", "goto", "if", >X+ "implements", "import", "instanceof", "int", >X+ "interface", "long", "native", "new", "package", >X+ "private", "protected", "public", "return", "short", >X+ "static", "strictfp", "super", "switch", >X+ "synchronized", "this", "throw", "throws", >X+ "transient", "try", "void", "volatile", "while", >X+ "kind"] >X >X val ty_map = id_map >X val name = "Java" >X@@ -129,4 +131,4 @@ >X val name = "Icon" >X end >X >X- end >X\ No newline at end of file >X+ end >END-of-asdlgen/files/patch-src_sml_translate_support_idmaps.sml >echo x - asdlgen/files/patch-src_sml_translate_support_mk-file-set.sml >sed 's/^X//' >asdlgen/files/patch-src_sml_translate_support_mk-file-set.sml << 'END-of-asdlgen/files/patch-src_sml_translate_support_mk-file-set.sml' >X--- src/sml/translate/support/mk-file-set.sml.orig 2000-01-10 01:09:21.000000000 +0100 >X+++ src/sml/translate/support/mk-file-set.sml 2007-09-25 18:00:55.000000000 +0200 >X@@ -9,9 +9,9 @@ >X let >X fun do_one ((name,depends),fs) = >X let >X- val path = Paths.pathConcat (root,Paths.pathFromArcs [name]) >X+ val path = Paths.pathConcat (root,Paths.pathFromNative name) >X val fname = (Paths.pathToNative path) >X- val ins = TextIO.openIn (Paths.pathToNative path) >X+ val ins = TextIO.openIn fname >X val file = TextIO.inputAll ins >X val _ = (TextIO.closeIn ins;print ("Read file:"^fname^"\n")) >X val body = PPUtil.s file >X@@ -21,4 +21,4 @@ >X end >X in List.foldl do_one init rest >X end >X- end >X\ No newline at end of file >X+ end >END-of-asdlgen/files/patch-src_sml_translate_support_mk-file-set.sml >echo x - asdlgen/files/patch-src_sml_util_misc_file-set.sml >sed 's/^X//' >asdlgen/files/patch-src_sml_util_misc_file-set.sml << 'END-of-asdlgen/files/patch-src_sml_util_misc_file-set.sml' >X--- src/sml/util/misc/file-set.sml.orig 2000-01-14 02:42:30.000000000 +0100 >X+++ src/sml/util/misc/file-set.sml 2007-09-28 22:50:55.000000000 +0200 >X@@ -68,11 +68,18 @@ >X fun libPath x = d@x >X fun get_node "" = NONE >X | get_node x = OM.find(fs',x) >X- fun fix_dep x = case OM.find(fs',x) of >X- (SOME (L _)) => libPath [x] | _ => [x] >X- fun cvt (F x) = {name=[#name x], >X+ fun fix_dep x = let open OS.Path >X+ val xarcs = (#arcs o fromString) x >X+ in case OM.find(fs',x) of >X+ (SOME (L _)) => libPath xarcs | _ => xarcs >X+ end >X+ fun cvt (F x) = let open OS.Path >X+ val xarcs = (#arcs o fromString) (#name x) >X+ in >X+ {name=xarcs, >X depends=List.map fix_dep (#depends x), >X body=(#body x)} >X+ end >X | cvt _ = raise (Fail "impossible") >X >X fun prefix_it {name,depends,body} = >X@@ -90,4 +97,4 @@ >X val components = Scc.topOrder {root="",follow=follow} >X in List.foldl no_cycle [] components >X end >X- end >X\ No newline at end of file >X+ end >END-of-asdlgen/files/patch-src_sml_util_misc_file-set.sml >exit
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 117703
: 82285