Wed Aug 19 19:54:22 PDT 2009 John Meacham <[email protected]> * don't fail if the last line in the file doesn't have a newline ending it.
Wed Aug 19 19:54:57 PDT 2009 John Meacham <[email protected]> * remove 'jhc' from the list of libraries that are automatically loaded. use -pjhc if you need access to it. Wed Aug 19 20:17:33 PDT 2009 John Meacham <[email protected]> * update version to 0.7.0 Wed Aug 19 20:26:41 PDT 2009 John Meacham <[email protected]> * clean up libraries with 'make clean' Wed Aug 19 21:16:37 PDT 2009 John Meacham <[email protected]> * add a 'darcs-fetch' target to the makefile that grabs the supplimental repositories, clean up development instructions. Wed Aug 19 21:24:12 PDT 2009 John Meacham <[email protected]> * make library hash generation deterministic, to avoid unnecesary invalidating of the cache.
New patches: [don't fail if the last line in the file doesn't have a newline ending it. John Meacham <[email protected]>**20090820025422 Ignore-this: 2a96a78772af4ae3015ae50ed0977f3f ] hunk ./src/FrontEnd/Lexer.hs 255 lexWhile (/= '\n') s' <- getInput case s' of - [] -> fail "Unterminated end-of-line comment" + -- [] -> fail "Unterminated end-of-line comment" _ -> lexWhiteSpace False '\n':'#':' ':ns -> discard 2 >> linePragma '\n':'#':'l':'i':'n':'e':' ':ns -> discard 6 >> linePragma [remove 'jhc' from the list of libraries that are automatically loaded. use -pjhc if you need access to it. John Meacham <[email protected]>**20090820025457 Ignore-this: e4c00b74361dcc21ce6ba70d4cda6e7 ] hunk ./src/data/targets.ini 20 cflags_debug=-g cflags_nodebug=-DNDEBUG -O3 profile=false -autoload=jhc,base,haskell98 +autoload=base,haskell98 [win32] [update version to 0.7.0 John Meacham <[email protected]>**20090820031733 Ignore-this: 3f0f7649b050eb6be3097a334417dc77 ] hunk ./configure.ac 1 -AC_INIT([jhc],[0.6.2]) +AC_INIT([jhc],[0.7.0]) AC_CONFIG_SRCDIR(src/Main.hs) AC_CONFIG_MACRO_DIR(ac-macros) AC_CONFIG_AUX_DIR(ac-macros) hunk ./configure.ac 7 AM_INIT_AUTOMAKE([foreign no-dependencies std-options]) -REVISION=20090806 -SHORTVERSION=0.6 +REVISION=20090819 +SHORTVERSION=0.7 AC_CANONICAL_HOST [clean up libraries with 'make clean' John Meacham <[email protected]>**20090820032641 Ignore-this: 3b349f77a6fb831599e76a9c5cdad39f ] hunk ./Makefile.am 85 test -f "$$lib" && $(INSTALL_DATA) $$lib $(DESTDIR)$(datadir)/@pack...@-@SHORTVERSION@ ; \ test -f "$(srcdir)/$$lib" && $(INSTALL_DATA) "$(srcdir)/$$lib" $(DESTDIR)$(datadir)/@pack...@-@SHORTVERSION@ ; \ done - $(INSTALL_DATA) "$(srcdir)/src/data/HsFFI.h" $(DESTDIR)$(datadir)/@pack...@-@SHORTVERSION@/include ; - $(INSTALL_DATA) "$(srcdir)/src/data/targets.ini" $(DESTDIR)$(sysconfdir)/@pack...@-@SHORTVERSION@ ; + $(INSTALL_DATA) "$(srcdir)/src/data/HsFFI.h" $(DESTDIR)$(datadir)/@pack...@-@SHORTVERSION@/include + $(INSTALL_DATA) "$(srcdir)/src/data/targets.ini" $(DESTDIR)$(sysconfdir)/@pack...@-@SHORTVERSION@ uninstall-hook: $(JHC_LIBS) rm -f -- "$(DESTDIR)$(bindir)/jhci$(EXTEXT)" hunk ./Makefile.am 93 for lib in $(JHC_LIBS); do \ rm -f -- "$(DESTDIR)$(datadir)/@pack...@-@SHORTVERSION@/$$lib" ; \ done - rm -f -- "$(DESTDIR)$(datadir)/@pack...@-@SHORTVERSION@/include/HsFFI.h" ; + rm -f -- "$(DESTDIR)$(datadir)/@pack...@-@SHORTVERSION@/include/HsFFI.h" + rm -f -- "$(DESTDIR)$(sysconfdir)/@pack...@-@SHORTVERSION@/targets.ini" -rmdir $(DESTDIR)$(datadir)/@pack...@-@SHORTVERSION@/include -rmdir $(DESTDIR)$(datadir)/@pack...@-@SHORTVERSION@ hunk ./Makefile.am 97 + -rmdir $(DESTDIR)$(sysconfdir)/@pack...@-@SHORTVERSION@ UTILS = utils/op_process.prl utils/opt_sets.prl utils/gen_props.prl utils/op_names.prl utils/op_raw.prl hunk ./Makefile.am 217 MAINTAINERCLEANFILES= $(BUILT_SOURCES) $(DRIFTFILES) +CLEANFILES= $(JHC_LIBS) + LIB_OPTIONS=$(RTSOPTS) $(JHC_TEST) --noauto -L- -L. [add a 'darcs-fetch' target to the makefile that grabs the supplimental repositories, clean up development instructions. John Meacham <[email protected]>**20090820041637 Ignore-this: 53f790845c3f747cff59abf245daef61 ] hunk ./Makefile.am 75 cp $(srcdir)/jhc.1 $(distdir)/jhc.1 find $(distdir) -name _darcs -o -name \*.ho | xargs rm -rf -- +darcs-fetch: + test -d src/Doc || darcs get --partial http://repetae.net/repos/Doc --repodir=src/Doc + test -d lib/haskell98 || darcs get --partial http://darcs.haskell.org/packages/haskell98 --repodir=lib/haskell98 + test -d lib/containers || darcs get --partial http://darcs.haskell.org/packages/containers --repodir=lib/containers + + all-local: libs install-data-hook: $(JHC_LIBS) hunk ./Makefile.am 285 libs: $(JHC_LIBS) %: examples/%.hs jhc - ./jhc -v -L- -L. $(JHC_TEST) $< -o $@ 2>&1 | tee [email protected] + ./jhc -L- -L. $(JHC_TEST) $< -o $@ 2>&1 | tee [email protected] hunk ./docs/development.mkd 32 order to compile jhc, the following should produce a working tree: darcs get http://repetae.net/repos/jhc - cd jhc/src - darcs get http://repetae.net/repos/Doc - cd ../lib - darcs get http://darcs.haskell.org/packages/haskell98 - darcs get http://darcs.haskell.org/packages/containers + cd jhc + autoreconf -i + ./configure + make darcs-fetch Now you can begin to build jhc, in order to do so, switch to the jhc directory and do: hunk ./docs/development.mkd 39 - autoreconf -i - ./configure - make + make jhc after jhc has finished building, you can create the standard libraries via hunk ./docs/development.mkd 49 make HelloWorld -however, during development it is often easier to use the raw haskell source of +however, during development, it is sometimes easier to use the raw haskell source of the libraries directly. in order to do that, you can run jhc with the following options when run in the development tree. hunk ./docs/development.mkd 53 - ./jhc -v --noauto -ilib/base -ilib/haskell98 examples/HelloWorld.hs -o helloworld + ./jhc --noauto -ilib/base -ilib/jhc -ilib/haskell98 examples/HelloWorld.hs -o helloworld [make library hash generation deterministic, to avoid unnecesary invalidating of the cache. John Meacham <[email protected]>**20090820042412 Ignore-this: 3a81d0afca2046055ef2ec961a34c95a ] hunk ./src/Ho/Build.hs 198 resolveDeps done_ref m = do done <- readIORef done_ref case m `mlookup` modEncountered done of - Just (ModLibrary False _ lib) -> putErrDie $ printf "ERROR: Attempt to import module '%s' which is a member of the library '%s'." (show m) (libName lib) + Just (ModLibrary False _ lib) | m /= Module "Jhc.Prim" -> putErrDie $ printf "ERROR: Attempt to import module '%s' which is a member of the library '%s'." (show m) (libName lib) Just _ -> return () Nothing -> fetchSource done_ref (map fst $ searchPaths (show m)) (Just m) >> return () hunk ./src/Ho/Build.hs 461 mkPhonyCompUnit :: [Module] -> CompUnitGraph -> (HoHash,CompUnitGraph) mkPhonyCompUnit need cs = (fhash,(fhash,(fdeps,CompDummy)):cs) where - fhash = MD5.md5String $ show fdeps + fhash = MD5.md5String $ show (sort fdeps) fdeps = [ h | (h,(_,cu)) <- cs, not . null $ providesModules cu `intersect` need ] hunk ./src/Ho/Build.hs 561 writeIORef ref (CompCollected cho CompDummy) return cho (CompHo hoh idep ho) -> do - cho <- ifunc cho ho + cho <- choLibDeps_u (Map.union $ Map.fromList (hohLibDeps hoh)) `fmap` ifunc cho ho writeIORef ref (CompCollected cho cu) return cho (CompLibrary ho (Library hoh _ _ _)) -> do hunk ./src/Ho/Build.hs 741 Just fn -> fn let pdesc = [(packString n, packString v) | (n,v) <- ("jhc-hl-filename",outName):("jhc-description-file",fp):("jhc-compiled-by",versionString):desc, n /= "exposed-modules" ] libr = HoLib { - hoReexports = Map.fromList [ (m,m) | m <- Set.toList $ allMods Set.\\ prvds], + hoReexports = Map.fromList [ (m,m) | m <- Set.toList $ allMods Set.\\ prvds ], hoMetaInfo = pdesc, hoModuleMap = mmap, hoModuleDeps = mdeps Context: [add fix for compiling on MacOSX, thanks to Mark Wotton. John Meacham <[email protected]>**20090819041030 Ignore-this: bdaeb7fde521f98e4580bca36b6b74d3 ] [redo libraries such that only names from explicitly imported libraries are visible to the program being compiled. John Meacham <[email protected]>**20090819035236 Ignore-this: 7eeb43ddaf2f975309b38190ca266150 ] [clean up stats some John Meacham <[email protected]>**20090817231029 Ignore-this: ebfe3952f00720843c0da1fbbf33294 ] [clean up documentation, rename all environment variable to have a consistent JHC_ prefix John Meacham <[email protected]>**20090814023617 Ignore-this: 1dffad758c102990317e7fdbf658b9a3 ] [haskell98 should re-export Prelude and Numeric John Meacham <[email protected]>**20090814022659 Ignore-this: bef4212af66c50e1220e752382337006 ] [initialize CAFs statically, add hs_init and friends to the rts to be compliant with the FFI spec, allow compiling without generating a 'main' John Meacham <[email protected]>**20090813053325 Ignore-this: 8970666bd27accca219beede653459da ] [add 'System.Mem' to jhc library John Meacham <[email protected]>**20090812074322 Ignore-this: f979802508f0976e350e9064b6701973 ] [clean up Main.hs John Meacham <[email protected]>**20090812061523 Ignore-this: 75f574f8251cfcad6227bc48ac74b2f7 ] [enable the ho cache, start using it by default. John Meacham <[email protected]>**20090812060012 Ignore-this: a0d4d4afae50f05d5ce16f5b654d2072 ] [use utf8-string routines in PackedString John Meacham <[email protected]>**20090811165405 Ignore-this: ea852d2e75ba0cc13fe2c92723024565 ] [TAG krasyupheasy John Meacham <[email protected]>**20090811155530 Ignore-this: c3ad24b76191a311e2fc81123c2fa1cf ] Patch bundle hash: 423ab665e27660652b810baf9e5a396d1b5ccbe8
_______________________________________________ jhc mailing list [email protected] http://www.haskell.org/mailman/listinfo/jhc
