From cvs-ghc at haskell.org Wed Aug 1 03:30:06 2007 From: cvs-ghc at haskell.org (BuildBot Collator) Date: Wed Aug 1 03:22:39 2007 Subject: Daily report for head Message-ID: <200708010730.l717U633029245@monk.galois.com> Build results: x86 Windows head: pass x86 Windows head fast: pass pass pass pass pass pass kahl G5 Gentoo Linux head: fail (failed stage2) phil Intel OSX head: fail (failed recompileutilswithstage1 stage2 boottestsuite runtestsuite) phil P4 SuSE Linux head: fail (failed stage1) tnaur x86 Linux head: fail (failed getsubrepos) fail (failed stage1) x86-64 Linux head unreg: fail (failed stage1) New unexpected test passes: arith008 1 x86 Windows head New unexpected test failures: cabal01prof 1 x86 Windows head conc023 1 x86 Windows head getDirContents001 1 x86 Windows head typecheck.testeq1 1 x86 Windows head Fixed unexpected test failures: copyFile001 Old unexpected test failures: GMapAssoc 9 x86-64 Linux head GMapTop 9 x86-64 Linux head arith005 5 x86 Windows head arith011 1 x86-64 Linux head unreg barton-mangler-bug 2 x86 Windows head break017 1 mnemosyne x86-64 Gentoo head bug1010 2 x86 Windows head cabal01 2 x86 Windows head cg015 1 x86-64 Linux head unreg cg035 1 x86-64 Linux head unreg conc022 1 x86-64 Linux head unreg conc024 1 phil Intel OSX head conc040 1 kahl G5 Gentoo Linux head conc046 1 x86-64 Linux head unreg conc049 1 x86-64 Linux head unreg conc057 7 x86-64 Linux head conc060 1 x86-64 Linux head unreg conc061 1 x86-64 Linux head unreg conc062 1 x86-64 Linux head unreg conc063 3 x86-64 Linux head conc064 2 gbesh Intel x86_64 Linux head conc068 7 gbesh Intel x86_64 Linux head concio001 1 tnaur PPC OSX head concio001.thr 3 kahl G5 Gentoo Linux head concprog001 5 x86-64 Linux head driver017 2 kahl G5 Gentoo Linux head driver028 1 kahl G5 Gentoo Linux head driver035 2 kahl G5 Gentoo Linux head driver045 1 kahl G5 Gentoo Linux head expfloat 4 x86-64 Linux head fed001 2 kahl G5 Gentoo Linux head ffi002 1 tnaur PPC OSX head ffi003 1 x86-64 Linux head unreg ffi004 1 x86-64 Linux head unreg ffi006 2 kahl G5 Gentoo Linux head ffi007 1 kahl G5 Gentoo Linux head ffi008 1 kahl G5 Gentoo Linux head ffi009 3 kahl G5 Gentoo Linux head ffi010 1 x86-64 Linux head unreg ffi011 2 kahl G5 Gentoo Linux head ffi013 2 kahl G5 Gentoo Linux head ffi018 1 x86-64 Linux head unreg galois_raytrace 5 x86 Windows head ghc-e001 1 kahl G5 Gentoo Linux head hpc001 1 tnaur PPC OSX head ind2 3 x86-64 Linux head joao-circular 1 tnaur PPC OSX head num012 3 x86 Windows head read002 4 x86-64 Linux head read003 4 x86-64 Linux head seward-space-leak 1 tnaur PPC OSX head signals002 2 phil Intel OSX head tcrun022 8 x86-64 Linux head -------------- next part -------------- Last 30 lines: mkdir stage2/stranal mkdir stage2/stgSyn mkdir stage2/simplStg mkdir stage2/codeGen mkdir stage2/main mkdir stage2/profiling mkdir stage2/parser mkdir stage2/cprAnalysis mkdir stage2/ndpFlatten mkdir stage2/iface mkdir stage2/cmm Creating stage2/ghc_boot_platform.h... Done. gcc -E -undef -traditional -P \ -DIMPORT_DIR='"/var/buildbot/ghc/kahl/build/libraries/ghc"' \ -DLIB_DIR='"/var/buildbot/ghc/kahl/build/libraries/ghc"' \ -DINCLUDE_DIR='"/var/buildbot/ghc/kahl/build/libraries/ghc/include"' \ -DDATA_DIR='"/var/buildbot/ghc/kahl/build/libraries/ghc"' \ -DHTML_DIR='"/var/buildbot/ghc/kahl/build/libraries/ghc/html"' \ -DHADDOCK_IFACE='"/var/buildbot/ghc/kahl/build/libraries/ghc/html/ghc.haddock"' \ -DFPTOOLS_TOP_ABS='"/var/buildbot/ghc/kahl/build"' \ -x c -DPKG_DEPENDS='hpc unix Cabal base haskell98' -DSTAGE='"2"' -I../includes -Iinclude -DPACKAGE=ghc -DVERSION=6.7.20070731 -DPKG_LIBDIR='"/usr/local/lib/ghc-6.7.20070731"' -DPKG_DATADIR='"/usr/local/share/ghc-6.7.20070731"' package.conf.in | \ grep -v '^#pragma GCC' | \ sed -e 's/""//g' -e 's/:[ ]*,/: /g' >package.conf.inplace ../utils/ghc-pkg/ghc-pkg-inplace update - --force-files > make all echo "import System.Cmd; import System.Environment; import System.Exit" > ghc-pkg-inplace.hs echo "main = do args <- getArgs; rawSystem \"/opt/buildbot/ghc/phil-mac/build/utils/ghc-pkg/ghc-pkg.bin\" (\"--global-conf\":\"/opt/buildbot/ghc/phil-mac/build/driver/package.conf.inplace\":args) >>= exitWith" >> ghc-pkg-inplace.hs /usr/local/bin/ghc --make ghc-pkg-inplace.hs -o ghc-pkg-inplace [1 of 1] Compiling Main ( ghc-pkg-inplace.hs, ghc-pkg-inplace.o ) Linking ghc-pkg-inplace ... ../../compiler/stage1/ghc-inplace -H16m -O -cpp -Wall -fno-warn-name-shadowing -fno-warn-unused-matches -package Cabal -Rghc-timing -O -fasm -c Version.hs -o Version.o -ohi Version.hi <> ../../compiler/stage1/ghc-inplace -H16m -O -cpp -Wall -fno-warn-name-shadowing -fno-warn-unused-matches -package Cabal -Rghc-timing -O -fasm -c Main.hs -o Main.o -ohi Main.hi <> ../../compiler/stage1/ghc-inplace -o ghc-pkg.bin -H16m -O -cpp -Wall -fno-warn-name-shadowing -fno-warn-unused-matches -package Cabal -Rghc-timing -O -fasm Main.o Version.o /usr/bin/ld: unknown flag: -rpath collect2: ld returned 1 exit status <> make[3]: *** [ghc-pkg.bin] Error 1 make[2]: *** [boot] Error 2 Failed making boot in ghc-pkg: 1 make[1]: *** [boot] Error 1 -------------- next part -------------- Last 30 lines: mkdir stage2/stranal mkdir stage2/stgSyn mkdir stage2/simplStg mkdir stage2/codeGen mkdir stage2/main mkdir stage2/profiling mkdir stage2/parser mkdir stage2/cprAnalysis mkdir stage2/ndpFlatten mkdir stage2/iface mkdir stage2/cmm mkdir stage2/nativeGen mkdir stage2/ghci Creating stage2/ghc_boot_platform.h... Done. gcc -E -undef -traditional -P \ -DIMPORT_DIR='"/opt/buildbot/ghc/phil-mac/build/libraries/ghc"' \ -DLIB_DIR='"/opt/buildbot/ghc/phil-mac/build/libraries/ghc"' \ -DINCLUDE_DIR='"/opt/buildbot/ghc/phil-mac/build/libraries/ghc/include"' \ -DDATA_DIR='"/opt/buildbot/ghc/phil-mac/build/libraries/ghc"' \ -DHTML_DIR='"/opt/buildbot/ghc/phil-mac/build/libraries/ghc/html"' \ -DHADDOCK_IFACE='"/opt/buildbot/ghc/phil-mac/build/libraries/ghc/html/ghc.haddock"' \ -DFPTOOLS_TOP_ABS='"/opt/buildbot/ghc/phil-mac/build"' \ -x c -DPKG_DEPENDS='hpc template-haskell unix Cabal base haskell98' -DSTAGE='"2"' -I../includes -Iinclude -DPACKAGE=ghc -DVERSION=6.7.20070801 -DPKG_LIBDIR='"/usr/local/lib/ghc-6.7.20070801"' -DPKG_DATADIR='"/usr/local/share/ghc-6.7.20070801"' package.conf.in | \ grep -v '^#pragma GCC' | \ sed -e 's/""//g' -e 's/:[ ]*,/: /g' >package.conf.inplace ../utils/ghc-pkg/ghc-pkg-inplace update - --force-files calibrate.out /usr/bin/ld: unknown flag: -rpath collect2: ld returned 1 exit status ../../compiler/ghc-inplace -H16m -O -threaded -package unix -c timeout.hs -o timeout.o -ohi timeout.hi ../../compiler/ghc-inplace -o timeout -H16m -O -threaded -package unix timeout.o /usr/bin/ld: unknown flag: -rpath collect2: ld returned 1 exit status make[2]: *** [timeout] Error 1 Failed making boot in timeout: 1 make[1]: *** [boot] Error 1 -------------- next part -------------- Last 30 lines: ../../mk/test.mk:20: ../../mk/wordsize.mk: No such file or directory gcc -E -undef -traditional -x c ../../mk/wordsize.mk.in > ../../mk/wordsize.mk Looks like you don't have timeout, building it first... cd ../../timeout && make -r all ../../compiler/ghc-inplace -o timeout -H16m -O -threaded -package unix timeout.o /usr/bin/ld: unknown flag: -rpath collect2: ld returned 1 exit status make[2]: *** [timeout] Error 1 make[1]: *** [../../timeout/timeout] Error 2 -------------- next part -------------- Last 30 lines: ../compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-I../includes -optc-I. -optc-Iparallel -optc-Ism -optc-DCOMPILING_RTS -optc-g -optc-O0 -optc-I../gmp/gmpbuild -optc-fno-strict-aliasing -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c sm/BlockAlloc.c -o sm/BlockAlloc.debug_o ../compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-I../includes -optc-I. -optc-Iparallel -optc-Ism -optc-DCOMPILING_RTS -optc-g -optc-O0 -optc-I../gmp/gmpbuild -optc-fno-strict-aliasing -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -optc-finline-limit=2500 -c sm/Compact.c -o sm/Compact.debug_o ../compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-I../includes -optc-I. -optc-Iparallel -optc-Ism -optc-DCOMPILING_RTS -optc-g -optc-O0 -optc-I../gmp/gmpbuild -optc-fno-strict-aliasing -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -optc-funroll-loops -c sm/Evac.c -o sm/Evac.debug_o ../compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-I../includes -optc-I. -optc-Iparallel -optc-Ism -optc-DCOMPILING_RTS -optc-g -optc-O0 -optc-I../gmp/gmpbuild -optc-fno-strict-aliasing -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c sm/GC.c -o sm/GC.debug_o ../compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-I../includes -optc-I. -optc-Iparallel -optc-Ism -optc-DCOMPILING_RTS -optc-g -optc-O0 -optc-I../gmp/gmpbuild -optc-fno-strict-aliasing -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c sm/GCUtils.c -o sm/GCUtils.debug_o ../compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-I../includes -optc-I. -optc-Iparallel -optc-Ism -optc-DCOMPILING_RTS -optc-g -optc-O0 -optc-I../gmp/gmpbuild -optc-fno-strict-aliasing -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c sm/MBlock.c -o sm/MBlock.debug_o ../compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-I../includes -optc-I. -optc-Iparallel -optc-Ism -optc-DCOMPILING_RTS -optc-g -optc-O0 -optc-I../gmp/gmpbuild -optc-fno-strict-aliasing -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c sm/MarkWeak.c -o sm/MarkWeak.debug_o ../compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-I../includes -optc-I. -optc-Iparallel -optc-Ism -optc-DCOMPILING_RTS -optc-g -optc-O0 -optc-I../gmp/gmpbuild -optc-fno-strict-aliasing -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c sm/Scav.c -o sm/Scav.debug_o ../compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-I../includes -optc-I. -optc-Iparallel -optc-Ism -optc-DCOMPILING_RTS -optc-g -optc-O0 -optc-I../gmp/gmpbuild -optc-fno-strict-aliasing -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c sm/Storage.c -o sm/Storage.debug_o ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c Apply.cmm -o Apply.debug_o ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c Exception.cmm -o Exception.debug_o ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c HeapStackCheck.cmm -o HeapStackCheck.debug_o ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -#include posix/Itimer.h -c PrimOps.cmm -o PrimOps.debug_o ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c StgMiscClosures.cmm -o StgMiscClosures.debug_o ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c StgStartup.cmm -o StgStartup.debug_o ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c StgStdThunks.cmm -o StgStdThunks.debug_o ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c Updates.cmm -o Updates.debug_o ../utils/genapply/genapply >AutoApply_debug.cmm ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c AutoApply_debug.cmm -o AutoApply_debug.debug_o Prologue junk?: .globl stg_ap_p_ret .type stg_ap_p_ret, @function stg_ap_p_ret: pushl %ebp movl %esp, %ebp make[3]: *** [AutoApply_debug.debug_o] Error 255 make[2]: *** [all] Error 1 make[1]: *** [stage1] Error 1 make[1]: Leaving directory `/local/holzensp/buildbot/ghc/phil-ewi/build' -------------- next part -------------- Last 30 lines: touch .depend-BASE /usr/bin/ghc -M -optdep-f -optdep.depend-BASE -osuf o -I../includes -optdep--exclude-module=Compat.RawSystem -optdep--exclude-module=Compat.Directory -optdep--exclude-module=Compat.Unicode -optdep--exclude-module=Distribution.Compat.FilePath -optdep--exclude-module=Distribution.Compat.ReadP -optdep--exclude-module=Distribution.Extension -optdep--exclude-module=Distribution.GetOpt -optdep--exclude-module=Distribution.InstalledPackageInfo -optdep--exclude-module=Distribution.License -optdep--exclude-module=Distribution.Package -optdep--exclude-module=Distribution.ParseUtils -optdep--exclude-module=Distribution.Compiler -optdep--exclude-module=Distribution.Version -optdep--exclude-module=System.FilePath -optdep--exclude-module=System.FilePath.Posix -optdep--exclude-module=System.FilePath.Windows -optdep--exclude-module=System.Directory.Internals -optdep--exclude-module=Trace.Hpc.Mix -optdep--exclude-module=Trace.Hpc.Tix -optdep--exclude-module=Trace.Hpc.Util -H16m -O -iutils -ibasicTypes -itypes -ihsSyn -iprelude -irename -itypecheck -ideSugar -icoreSyn -ivectorise -ispecialise -isimplCore -istranal -istgSyn -isimplStg -icodeGen -imain -iprofiling -iparser -icprAnalysis -indpFlatten -iiface -icmm -inativeGen -Istage1 -cpp -fglasgow-exts -fno-generics -Rghc-timing -I. -Iparser -package unix -recomp -Rghc-timing -O -fasm -H16M '-#include "cutils.h"' -DUSING_COMPAT -i../compat basicTypes/BasicTypes.lhs basicTypes/DataCon.lhs basicTypes/Demand.lhs basicTypes/Id.lhs basicTypes/IdInfo.lhs basicTypes/Literal.lhs basicTypes/MkId.lhs basicTypes/Module.lhs basicTypes/Name.lhs basicTypes/NameEnv.lhs basicTypes/NameSet.lhs basicTypes/NewDemand.lhs basicTypes/OccName.lhs basicTypes/RdrName.lhs basicTypes/SrcLoc.lhs basicTypes/UniqSupply.lhs basicTypes/Unique.lhs basicTypes/Var.lhs basicTypes/VarEnv.lhs basicTypes/VarSet.lhs cmm/CLabel.hs cmm/Cmm.hs cmm/CmmBrokenBlock.hs cmm/CmmCPS.hs cmm/CmmCPSGen.hs cmm/CmmCallConv.hs cmm/CmmInfo.hs cmm/CmmLex.hs cmm/CmmLint.hs cmm/CmmLive.hs cmm/CmmOpt.hs cmm/CmmParse.hs cmm/CmmProcPoint.h s cmm/CmmUtils.hs cmm/Dataflow.hs cmm/MachOp.hs cmm/PprC.hs cmm/PprCmm.hs codeGen/Bitmap.hs codeGen/CgBindery.lhs codeGen/CgCallConv.hs codeGen/CgCase.lhs codeGen/CgClosure.lhs codeGen/CgCon.lhs codeGen/CgExpr.lhs codeGen/CgForeignCall.hs codeGen/CgHeapery.lhs codeGen/CgHpc.hs codeGen/CgInfoTbls.hs codeGen/CgLetNoEscape.lhs codeGen/CgMonad.lhs codeGen/CgParallel.hs codeGen/CgPrimOp.hs codeGen/CgProf.hs codeGen/CgStackery.lhs codeGen/CgTailCall.lhs codeGen/CgTicky.hs codeGen/CgUtils.hs codeGen/ClosureInfo.lhs codeGen/CodeGen.lhs codeGen/SMRep.lhs coreSyn/CoreFVs.lhs coreSyn/CoreLint.lhs coreSyn/CorePrep.lhs coreSyn/CoreSubst.lhs coreSyn/CoreSyn.lhs coreSyn/CoreTidy.lhs coreSyn/CoreUnfold.lhs coreSyn/CoreUtils.lhs coreSyn/ExternalCore.lhs coreSyn/MkExternalCore.lhs coreSyn/PprCore.lhs coreSyn/PprExternalCore.lhs cprAnalysis/CprAnalyse.lhs deSugar/Check.lhs deSugar/Coverage.lhs deSugar/Desugar.lhs deSugar/DsArrows.lhs deSugar/DsBinds.lhs deSugar/DsCCall.lhs deSugar/DsExpr.lhs deSugar/DsForeign.lhs deSugar/DsGRHSs.lhs deSugar/DsListComp.lhs deSugar/DsMonad.lhs deSugar/DsUtils.lhs deSugar/Match.lhs deSugar/MatchCon.lhs deSugar/MatchLit.lhs hsSyn/HsBinds.lhs hsSyn/HsDecls.lhs hsSyn/HsDoc.hs hsSyn/HsExpr.lhs hsSyn/HsImpExp.lhs hsSyn/HsLit.lhs hsSyn/HsPat.lhs hsSyn/HsSyn.lhs hsSyn/HsTypes.lhs hsSyn/HsUtils.lhs iface/BinIface.hs iface/BuildTyCl.lhs iface/IfaceEnv.lhs iface/IfaceSyn.lhs iface/IfaceType.lhs iface/LoadIface.lhs iface/MkIface.lhs iface/TcIface.lhs main/BreakArray.hs main/CmdLineParser.hs main/CodeOutput.lhs main/Config.hs main/Constants.lhs main/DriverMkDepend.hs main/DriverPhases.hs main/DriverPipeline.hs main/DynFlags.hs main/ErrUtils.lhs main/Finder.lhs main/GHC.hs main/HeaderInfo.hs main/HscMain.lhs main/HscStats.lhs main/HscTypes.lhs main/InteractiveEval.hs main/Main.hs main/PackageConfig.hs main/Packages.lhs main/ParsePkgConf.hs main/PprTyThing.hs main/StaticFlags.hs main/SysTools.lhs main/TidyPgm.lhs nativeGen/AsmCodeGen.lhs nativeGen/MachCodeGen.hs nativeGen/MachInstrs.hs nativeGen/MachRegs.lhs nativ eGen/NCGMonad.hs nativeGen/PositionIndependentCode.hs nativeGen/PprMach.hs nativeGen/RegAllocInfo.hs nativeGen/RegisterAlloc.hs ndpFlatten/FlattenInfo.hs ndpFlatten/FlattenMonad.hs ndpFlatten/Flattening.hs ndpFlatten/NDPCoreUtils.hs ndpFlatten/PArrAnal.hs parser/Ctype.lhs parser/HaddockLex.hs parser/HaddockParse.hs parser/HaddockUtils.hs parser/LexCore.hs parser/Lexer.hs parser/Parser.hs parser/ParserCore.hs parser/ParserCoreUtils.hs parser/RdrHsSyn.lhs prelude/ForeignCall.lhs prelude/PrelInfo.lhs prelude/PrelNames.lhs prelude/PrelRules.lhs prelude/PrimOp.lhs prelude/TysPrim.lhs prelude/TysWiredIn.lhs profiling/CostCentre.lhs profiling/SCCfinal.lhs rename/RnBinds.lhs rename/RnEnv.lhs rename/RnExpr.lhs rename/RnHsDoc.hs rename/RnHsSyn.lhs rename/RnNames.lhs rename/RnSource.lhs rename/RnTypes.lhs simplCore/CSE.lhs simplCore/FloatIn.lhs simplCore/FloatOut.lhs simplCore/LiberateCase.lhs simplCore/OccurAnal.lhs simplCore/SAT.lhs simplCore/SATMonad.lhs simplCore/SetLevels.lhs simplCore/SimplCore.lhs simplCore/SimplEnv.lhs simplCore/SimplMonad.lhs simplCore/SimplUtils.lhs simplCore/Simplify.lhs simplStg/SRT.lhs simplStg/SimplStg.lhs simplStg/StgStats.lhs specialise/Rules.lhs specialise/SpecConstr.lhs specialise/Specialise.lhs stgSyn/CoreToStg.lhs stgSyn/StgLint.lhs stgSyn/StgSyn.lhs stranal/DmdAnal.lhs stranal/SaAbsInt.lhs stranal/SaLib.lhs stranal/StrictAnal.lhs stranal/WorkWrap.lhs stranal/WwLib.lhs typecheck/FamInst.lhs typecheck/Inst.lhs typecheck/TcArrows.lhs typecheck/TcBinds.lhs typecheck/TcClassDcl.lhs typecheck/TcDefaults.lhs typecheck/TcDeriv.lhs typecheck/TcEnv.lhs typecheck/TcExpr.lhs typecheck/TcForeign.lhs typecheck/TcGadt.lhs typecheck/TcGenDeriv.lhs typecheck/TcHsSyn.lhs typecheck/TcHsType.lhs typecheck/TcInstDcls.lhs typecheck/TcMType.lhs typecheck/TcMatches.lhs typecheck/TcPat.lhs typecheck/TcRnDriver.lhs typecheck/TcRnMonad.lhs typecheck/TcRnTypes.lhs typecheck/TcRules.lhs typecheck/TcSimplify.lhs typecheck/TcTyClsDecls.lhs typecheck/TcTyDecls.lhs typecheck/TcType.lhs typecheck/TcUnify.lhs types/Clas s.lhs types/Coercion.lhs types/FamInstEnv.lhs types/FunDeps.lhs types/Generics.lhs types/InstEnv.lhs types/TyCon.lhs types/Type.lhs types/TypeRep.lhs types/Unify.lhs utils/Bag.lhs utils/Binary.hs utils/BufWrite.hs utils/Digraph.lhs utils/Encoding.hs utils/FastMutInt.lhs utils/FastString.lhs utils/FastTypes.lhs utils/FiniteMap.lhs utils/IOEnv.hs utils/ListSetOps.lhs utils/Maybes.lhs utils/OrdList.lhs utils/Outputable.lhs utils/Panic.lhs utils/Pretty.lhs utils/StringBuffer.lhs utils/UniqFM.lhs utils/UniqSet.lhs utils/Util.lhs vectorise/VectMonad.hs vectorise/VectType.hs vectorise/VectUtils.hs vectorise/Vectorise.hs In file included from cmm/CmmLex.hs:25: ../includes/config.h:4: warning: #warning config.h is deprecated; please use ghcconfig.h instead In file included from parser/HaddockLex.hs:24: ../includes/config.h:4: warning: #warning config.h is deprecated; please use ghcconfig.h instead In file included from parser/Lexer.hs:44: ../includes/config.h:4: warning: #warning config.h is deprecated; please use ghcconfig.h instead <> ../utils/mkdependC/mkdependC -f .depend-BASE -D__GLASGOW_HASKELL__=607 -I../includes -- -O -Iparser -I. -O -- parser/cutils.c parser/hschooks.c /usr/bin/perl -pe 'binmode(stdin); binmode(stdout); s@^(\S*\.o)@stage1/$1@g; s@(\S*\.hi)@stage1/$1@g; s@^.*/compat.*$@@g;' <.depend-BASE >.depend-1 ------------------------------------------------------------------------ == make boot -r; in /home/tn/tn/buildbot/ghc/tnaur-x86-linux/tnaur-x86-linux-head/build/rts ------------------------------------------------------------------------ gcc -E -undef -traditional -P \ -DIMPORT_DIR='"/libraries/rts"' \ -DLIB_DIR='"/libraries/rts"' \ -DINCLUDE_DIR='"/libraries/rts/include"' \ -DDATA_DIR='"/libraries/rts"' \ -DHTML_DIR='"/libraries/rts/html"' \ -DHADDOCK_IFACE='"/libraries/rts/html/rts.haddock"' \ -DFPTOOLS_TOP_ABS='""' \ -x c -DGMP_INCLUDE_DIRS='' -DGMP_LIB_DIRS='' -I../includes -Iinclude -DPACKAGE=rts -DVERSION= -DPKG_LIBDIR='"/usr/local/lib/ghc-6.7.20070731"' -DPKG_DATADIR='"/usr/local/share/ghc-6.7.20070731"' package.conf.in | \ grep -v '^#pragma GCC' | \ sed -e 's/""//g' -e 's/:[ ]*,/: /g' >package.conf.inplace ../utils/ghc-pkg/ghc-pkg-inplace update - --force-files > ../../compiler/stage1/ghc-inplace -package-name haskell-src-1.0.1 -hide-all-packages -i -idist/build/autogen -idist/build -i. -Idist/build -odir dist/build -hidir dist/build -package base-2.1 -package haskell98-1.0 -package pretty-1.0 -O -cpp -idist/build -H16m -O -O -Rghc-timing -fgenerics -c Language/Haskell/Lexer.hs -o dist/build/Language/Haskell/Lexer.o -ohi dist/build/Language/Haskell/Lexer.hi <> ../../compiler/stage1/ghc-inplace -package-name haskell-src-1.0.1 -hide-all-packages -i -idist/build/autogen -idist/build -i. -Idist/build -odir dist/build -hidir dist/build -package base-2.1 -package haskell98-1.0 -package pretty-1.0 -O -cpp -idist/build -H16m -O -O -Rghc-timing -fgenerics -c Language/Haskell/Pretty.hs -o dist/build/Language/Haskell/Pretty.o -ohi dist/build/Language/Haskell/Pretty.hi <> ../../compiler/stage1/ghc-inplace -package-name haskell-src-1.0.1 -hide-all-packages -i -idist/build/autogen -idist/build -i. -Idist/build -odir dist/build -hidir dist/build -package base-2.1 -package haskell98-1.0 -package pretty-1.0 -O -cpp -idist/build -H16m -O -O -Rghc-timing -fgenerics -c Language/Haskell/ParseUtils.hs -o dist/build/Language/Haskell/ParseUtils.o -ohi dist/build/Language/Haskell/ParseUtils.hi <> ../../compiler/stage1/ghc-inplace -package-name haskell-src-1.0.1 -hide-all-packages -i -idist/build/autogen -idist/build -i. -Idist/build -odir dist/build -hidir dist/build -package base-2.1 -package haskell98-1.0 -package pretty-1.0 -O -cpp -idist/build -H16m -O -O -Rghc-timing -fgenerics -c dist/build/Language/Haskell/Parser.hs -o dist/build/Language/Haskell/Parser.o -ohi dist/build/Language/Haskell/Parser.hi dist/build/Language/Haskell/Parser.hs:3706:1: Warning: Pattern match(es) are overlapped In a case alternative: _ -> ... <> echo dist/build/Language/Haskell/Lexer.o dist/build/Language/Haskell/Parser.o dist/build/Language/Haskell/ParseMonad.o dist/build/Language/Haskell/Pretty.o dist/build/Language/Haskell/Syntax.o dist/build/Language/Haskell/ParseUtils.o `find dist/build -name "*_stub.o" -print` | xargs -s 30000 /usr/bin/ar q dist/build/libHShaskell-src-1.0.1.a /usr/bin/ar: creating dist/build/libHShaskell-src-1.0.1.a ld -r -x -o dist/build/HShaskell-src-1.0.1.o dist/build/Language/Haskell/Lexer.o dist/build/Language/Haskell/Parser.o dist/build/Language/Haskell/ParseMonad.o dist/build/Language/Haskell/Pretty.o dist/build/Language/Haskell/Syntax.o dist/build/Language/Haskell/ParseUtils.o `find dist/build -name "*_stub.o" -print` == make way=p -f GNUmakefile all; ../../compiler/stage1/ghc-inplace -package-name haskell-src-1.0.1 -hide-all-packages -i -idist/build/autogen -idist/build -i. -Idist/build -odir dist/build -hidir dist/build -package base-2.1 -package haskell98-1.0 -package pretty-1.0 -O -cpp -idist/build -prof -hisuf p_hi -hcsuf p_hc -osuf p_o -H16m -O -O -Rghc-timing -fgenerics -c Language/Haskell/Syntax.hs -o dist/build/Language/Haskell/Syntax.p_o -ohi dist/build/Language/Haskell/Syntax.p_hi gcc: Internal error: Killed (program cc1) Please submit a full bug report. See for instructions. <> make[4]: *** [dist/build/Language/Haskell/Syntax.p_o] Error 1 make[3]: *** [all] Error 1 make[3]: Leaving directory `/64playpen/buildbot/x86_64-linux-head-unreg/build/libraries/haskell-src' make[2]: *** [make.library.haskell-src] Error 2 make[2]: Leaving directory `/64playpen/buildbot/x86_64-linux-head-unreg/build/libraries' make[1]: *** [stage1] Error 2 make[1]: Leaving directory `/64playpen/buildbot/x86_64-linux-head-unreg/build' From simonmarhaskell at gmail.com Wed Aug 1 04:07:23 2007 From: simonmarhaskell at gmail.com (Simon Marlow) Date: Wed Aug 1 03:59:48 2007 Subject: patch applied (ghc): Make lndir work on Windows (by copying) In-Reply-To: <20070731144325.GA28942@cvs.haskell.org> References: <20070731144325.GA28942@cvs.haskell.org> Message-ID: <46B03F3B.9080907@gmail.com> Ian Lynagh wrote: > Mon Jul 30 15:31:52 PDT 2007 Ian Lynagh > * Make lndir work on Windows (by copying) > > M ./utils/lndir/lndir.c -9 +91 Just out of interest, what's the purpose of this? Isn't it pointless to do an lndir if it copies all the files? Cheers, Simon From simonmarhaskell at gmail.com Wed Aug 1 04:15:29 2007 From: simonmarhaskell at gmail.com (Simon Marlow) Date: Wed Aug 1 04:07:53 2007 Subject: Update; cpphs for GHC? In-Reply-To: <20070731225935.152b0b04.Malcolm.Wallace@cs.york.ac.uk> References: <0AEDB300-5A2E-42FC-92E7-1BC7FE865BE4@gmail.com> <46A852FD.2070609@gmail.com> <1185446434.29694.126.camel@localhost> <46A89979.2000900@gmail.com> <20070731225935.152b0b04.Malcolm.Wallace@cs.york.ac.uk> Message-ID: <46B04121.3080107@gmail.com> Malcolm Wallace wrote: > given that (if I have understood correctly) the > technical context here is using GHC in conjunction with a Microsoft C > compiler as a backend Slight correction - we're not using the MS C compiler as a backend. We'll be using the MS linker and a free assembler. GHC will also be able to invoke the MS C compiler for compiling C code. >> But nobody else seems to care about this, I haven't seen any >> authors of Haskell LGPL libraries complain that users can't easily comply >> with it. I suppose the re-linking requirement isn't as critical > > Many Haskell LGPL libraries already employ the same static-linking > exception that wxWidgets pioneered. That's handy to know, thanks. Cheers, Simon From simonmarhaskell at gmail.com Wed Aug 1 04:20:57 2007 From: simonmarhaskell at gmail.com (Simon Marlow) Date: Wed Aug 1 04:13:21 2007 Subject: HEAD doesn't build (was Re: patch applied (ghc): Add hardwire-lib-paths option and make it default for inplace invocations) In-Reply-To: <46AFF3CC.2060600@cse.unsw.edu.au> References: <20070731102844.GA21382@cvs.haskell.org> <46AFF3CC.2060600@cse.unsw.edu.au> Message-ID: <46B04269.1010909@gmail.com> Roman Leshchinskiy wrote: > Hi Clemens, > > Simon Marlow wrote: >> Tue Jul 17 12:26:22 PDT 2007 Clemens Fruhwirth >> * Add hardwire-lib-paths option and make it default for inplace >> invocations > > This patch unconditionally adds -rpath to the linker options for > in-place invocations. The MacOS linker doesn't understand this option > (and has no concept of an rpath) which means that stage2 can't be > linked. IIRC, this will also break Solaris as the flag is called -R > there. Note also that -rpath won't help you if someone sets > LD_LIBRARY_PATH as the latter usually has precedence. Perhaps using > libtool might help here? We had a discussion on glasgow-haskell-users recently about whether to use libtool, and the general concensus was not: http://www.haskell.org/pipermail/glasgow-haskell-users/2007-June/012730.html > In any case, when you change things which are obviously system-dependent > could you please try to make sure that they are portable at least across > the major platforms. If you do not have access to some of those please > ask on the mailing list. I will gladly check on MacOS. Partly my fault for sloppy reviewing, sorry about that. I was under the impression that this only affected dynamic linking so it wouldn't break anything. Clemens, shouldn't we only be adding -rpath when -dynamic is on? Cheers, Simon From rl at cse.unsw.edu.au Wed Aug 1 05:08:04 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Wed Aug 1 05:00:16 2007 Subject: HEAD doesn't build (was Re: patch applied (ghc): Add hardwire-lib-paths option and make it default for inplace invocations) In-Reply-To: <46B04269.1010909@gmail.com> References: <20070731102844.GA21382@cvs.haskell.org> <46AFF3CC.2060600@cse.unsw.edu.au> <46B04269.1010909@gmail.com> Message-ID: <46B04D74.1030708@cse.unsw.edu.au> Simon Marlow wrote: > > We had a discussion on glasgow-haskell-users recently about whether to > use libtool, and the general concensus was not: Hmm, I missed that one completely. It's probably too late for me to jump in but I just don't see how the approach you outlined in http://www.haskell.org/pipermail/glasgow-haskell-users/2007-June/012740.html deals with systems which don't *have* an rpath and with users who manually set LD_LIBRARY_PATH. To be entirely honest, I suspect that what you are trying to achieve can't be done portably and reliably. Roman From simonmarhaskell at gmail.com Wed Aug 1 05:08:27 2007 From: simonmarhaskell at gmail.com (Simon Marlow) Date: Wed Aug 1 05:00:51 2007 Subject: Daily report for head: tnaur x86 Linux head: fail (failed stage1) In-Reply-To: <200707311658.38383.naur@post11.tele.dk> References: <200707310730.l6V7U5i0015805@monk.galois.com> <200707311305.52176.naur@post11.tele.dk> <200707311658.38383.naur@post11.tele.dk> Message-ID: <46B04D8B.60202@gmail.com> Thorkil Naur wrote: > Hello, > > On Tuesday 31 July 2007 13:05, Thorkil Naur wrote: >> Hello, >> >> On Tuesday 31 July 2007 09:30, BuildBot Collator wrote: >>> ... >>> tnaur x86 Linux head: fail (failed stage1) >>> ... >> The latest 4 builds (38, 37, 36, 35) failed building stage 1 with >> > (http://darcs.haskell.org/buildbot/head/tnaur%20x86%20Linux%20head/builds/38/step-stage1/0): >>> ... >>> ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include >> HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf >> debug_o -optc-DDEBUG -c Updates.cmm -o Updates.debug_o >>> ../utils/genapply/genapply >AutoApply_debug.cmm >>> ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include >> HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf >> debug_o -optc-DDEBUG -c AutoApply_debug.cmm -o AutoApply_debug.debug_o >>> Prologue junk?: .globl stg_ap_p_ret >>> .type stg_ap_p_ret, @function >>> stg_ap_p_ret: >>> pushl %ebp >>> movl %esp, %ebp >>> >>> make[2]: *** [AutoApply_debug.debug_o] Error 255 >>> make[1]: *** [all] Error 1 >>> make: *** [stage1] Error 1 >>> program finished with exit code 2 >> Build 34 failed earlier. Build 33 succeeded. >> >> I haven't tried to figure out what goes on here (my guess is some code >> generation error and/or an error/limitation in the mangler). Please indicate >> if there is something I can do to investigate further. >> >> Thanks and best regards >> Thorkil >> >> _______________________________________________ >> Cvs-ghc mailing list >> Cvs-ghc@haskell.org >> http://www.haskell.org/mailman/listinfo/cvs-ghc >> > > I have tried to unpull patches back to, and including, > > < Fri Jul 27 12:41:57 CEST 2007 Simon Marlow > < * Pointer Tagging > > and the above error disappeared. (Or, rather, it was replced by another error, > reported somewhat further along in the build process.) I then tried to pull > the "Pointer Tagging" patch back in, and the error re-appeared. Additional > details are available if desired. In a tree with that patch, could you try running the fast testsuite using the stage1 compiler? I want to find a small testcase that fails, for debugging. Then if you or someone else could give me remote access to a PPC machine that I can use to debug this, that would be great. Cheers, Simon From simonmar at microsoft.com Wed Aug 1 05:08:57 2007 From: simonmar at microsoft.com (Simon Marlow) Date: Wed Aug 1 05:01:18 2007 Subject: patch applied (ghc): compile the -inplace programs using $(HC), not $(GHC) Message-ID: <20070801090857.GA321@cvs.haskell.org> Tue Jul 31 04:49:25 PDT 2007 Simon Marlow * compile the -inplace programs using $(HC), not $(GHC) $(UseStage1) modifies $(HC) rather than $(GHC) M ./utils/ghc-pkg/Makefile -1 +1 M ./utils/hsc2hs/Makefile -1 +1 From simonmar at microsoft.com Wed Aug 1 05:09:01 2007 From: simonmar at microsoft.com (Simon Marlow) Date: Wed Aug 1 05:01:22 2007 Subject: patch applied (ghc): fix the hardtop test for ghc-6.2.x, and make it notice failure earlier Message-ID: <20070801090901.GA347@cvs.haskell.org> Wed Aug 1 01:32:57 PDT 2007 Simon Marlow * fix the hardtop test for ghc-6.2.x, and make it notice failure earlier M ./aclocal.m4 -1 +5 M ./configure.ac -1 +1 From simonmar at microsoft.com Wed Aug 1 06:35:14 2007 From: simonmar at microsoft.com (Simon Marlow) Date: Wed Aug 1 06:27:35 2007 Subject: patch applied (ghc): Only add -rpath to linker invocation when -dynamic Message-ID: <20070801103514.GA7158@cvs.haskell.org> Wed Aug 1 02:24:29 PDT 2007 Clemens Fruhwirth * Only add -rpath to linker invocation when -dynamic M ./compiler/main/DriverPipeline.hs -1 +1 From simonmarhaskell at gmail.com Wed Aug 1 06:36:40 2007 From: simonmarhaskell at gmail.com (Simon Marlow) Date: Wed Aug 1 06:29:02 2007 Subject: HEAD doesn't build (was Re: patch applied (ghc): Add hardwire-lib-paths option and make it default for inplace invocations) In-Reply-To: <46B04D74.1030708@cse.unsw.edu.au> References: <20070731102844.GA21382@cvs.haskell.org> <46AFF3CC.2060600@cse.unsw.edu.au> <46B04269.1010909@gmail.com> <46B04D74.1030708@cse.unsw.edu.au> Message-ID: <46B06238.8070903@gmail.com> Roman Leshchinskiy wrote: > Simon Marlow wrote: >> >> We had a discussion on glasgow-haskell-users recently about whether to >> use libtool, and the general concensus was not: > > Hmm, I missed that one completely. It's probably too late for me to jump > in but I just don't see how the approach you outlined in > > http://www.haskell.org/pipermail/glasgow-haskell-users/2007-June/012740.html > > > deals with systems which don't *have* an rpath and with users who > manually set LD_LIBRARY_PATH. To be entirely honest, I suspect that what > you are trying to achieve can't be done portably and reliably. I don't expect it to be portable. So on MacOS X, is it the case that the only way to build a binary that links to a particular shared library outside the system location is to use LD_LIBRARY_PATH? How does libtool work on this OS? Cheers, Simon From rl at cse.unsw.edu.au Wed Aug 1 07:33:34 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Wed Aug 1 07:25:41 2007 Subject: HEAD doesn't build (was Re: patch applied (ghc): Add hardwire-lib-paths option and make it default for inplace invocations) In-Reply-To: <46B06238.8070903@gmail.com> References: <20070731102844.GA21382@cvs.haskell.org> <46AFF3CC.2060600@cse.unsw.edu.au> <46B04269.1010909@gmail.com> <46B04D74.1030708@cse.unsw.edu.au> <46B06238.8070903@gmail.com> Message-ID: <46B06F8E.5080504@cse.unsw.edu.au> Simon Marlow wrote: > Roman Leshchinskiy wrote: >> Simon Marlow wrote: >>> >>> We had a discussion on glasgow-haskell-users recently about whether >>> to use libtool, and the general concensus was not: >> >> Hmm, I missed that one completely. It's probably too late for me to >> jump in but I just don't see how the approach you outlined in >> >> http://www.haskell.org/pipermail/glasgow-haskell-users/2007-June/012740.html >> >> >> deals with systems which don't *have* an rpath and with users who >> manually set LD_LIBRARY_PATH. To be entirely honest, I suspect that >> what you are trying to achieve can't be done portably and reliably. > > I don't expect it to be portable. So on MacOS X, is it the case that > the only way to build a binary that links to a particular shared library > outside the system location is to use LD_LIBRARY_PATH? IIUC yes, except that it's called DYLD_LIBRARY_PATH. From man dyld: For each library that a program uses, the dynamic linker looks for it in each directory in DYLD_LIBRARY_PATH in turn. If it still can't find the library, it then searches DYLD_FALL- BACK_FRAMEWORK_PATH and DYLD_FALLBACK_LIBRARY_PATH in turn. But I think on MacOS, the library paths are usually hardcoded in the executable. > How does libtool work on this OS? Not sure, I'll have to look that up. Roman From simonpj at microsoft.com Wed Aug 1 07:53:05 2007 From: simonpj at microsoft.com (Simon Peyton Jones) Date: Wed Aug 1 07:45:27 2007 Subject: patch applied (ghc): Fix generalisation during type inference (again); fixes Trac #1564 Message-ID: <20070801115305.GA11171@cvs.haskell.org> Wed Aug 1 00:26:12 PDT 2007 simonpj@microsoft.com * Fix generalisation during type inference (again); fixes Trac #1564 Figuring out which type variables to generalise when inferring the type of a let-bound function is always trickier than I think! This patch fixes a bug (related, inevitably, to functional depenencies) found by iampure, Trac #1564. I'll add a test shortly. M ./compiler/typecheck/TcSimplify.lhs -26 +38 From simonmarhaskell at gmail.com Wed Aug 1 08:28:44 2007 From: simonmarhaskell at gmail.com (Simon Marlow) Date: Wed Aug 1 08:21:07 2007 Subject: HEAD doesn't build (was Re: patch applied (ghc): Add hardwire-lib-paths option and make it default for inplace invocations) In-Reply-To: <46B06F8E.5080504@cse.unsw.edu.au> References: <20070731102844.GA21382@cvs.haskell.org> <46AFF3CC.2060600@cse.unsw.edu.au> <46B04269.1010909@gmail.com> <46B04D74.1030708@cse.unsw.edu.au> <46B06238.8070903@gmail.com> <46B06F8E.5080504@cse.unsw.edu.au> Message-ID: <46B07C7C.5050508@gmail.com> Roman Leshchinskiy wrote: > Simon Marlow wrote: >> Roman Leshchinskiy wrote: >>> Simon Marlow wrote: >>>> >>>> We had a discussion on glasgow-haskell-users recently about whether >>>> to use libtool, and the general concensus was not: >>> >>> Hmm, I missed that one completely. It's probably too late for me to >>> jump in but I just don't see how the approach you outlined in >>> >>> http://www.haskell.org/pipermail/glasgow-haskell-users/2007-June/012740.html >>> >>> >>> deals with systems which don't *have* an rpath and with users who >>> manually set LD_LIBRARY_PATH. To be entirely honest, I suspect that >>> what you are trying to achieve can't be done portably and reliably. >> >> I don't expect it to be portable. So on MacOS X, is it the case that >> the only way to build a binary that links to a particular shared >> library outside the system location is to use LD_LIBRARY_PATH? > > IIUC yes, except that it's called DYLD_LIBRARY_PATH. From man dyld: > > For each library that a program uses, the dynamic linker looks > for it in each directory in DYLD_LIBRARY_PATH in turn. If it > still can't find the library, it then searches DYLD_FALL- > BACK_FRAMEWORK_PATH and DYLD_FALLBACK_LIBRARY_PATH in turn. > > But I think on MacOS, the library paths are usually hardcoded in the > executable. If you can hardcode the library paths in the executable, then that's exactly what -rpath does isn't it? Cheers, Simon From simonpj at microsoft.com Wed Aug 1 08:53:14 2007 From: simonpj at microsoft.com (Simon Peyton Jones) Date: Wed Aug 1 08:45:34 2007 Subject: patch applied (ghc): Clarify comments Message-ID: <20070801125314.GA14169@cvs.haskell.org> Fri Jul 6 02:48:36 PDT 2007 simonpj@microsoft.com * Clarify comments M ./compiler/types/FunDeps.lhs -4 +12 From simonpj at microsoft.com Wed Aug 1 08:53:18 2007 From: simonpj at microsoft.com (Simon Peyton Jones) Date: Wed Aug 1 08:45:37 2007 Subject: patch applied (ghc): Spelling error Message-ID: <20070801125318.GA14192@cvs.haskell.org> Wed Aug 1 05:48:52 PDT 2007 simonpj@microsoft.com * Spelling error M ./docs/users_guide/glasgow_exts.xml -1 +1 From simonpj at microsoft.com Wed Aug 1 08:53:22 2007 From: simonpj at microsoft.com (Simon Peyton Jones) Date: Wed Aug 1 08:45:42 2007 Subject: patch applied (ghc): Fix a knot-tying bug with ghc --make Message-ID: <20070801125322.GA14209@cvs.haskell.org> Wed Aug 1 05:49:07 PDT 2007 simonpj@microsoft.com * Fix a knot-tying bug with ghc --make This bug showed up when I touched Data.Generics.Schemes, and then said make build.library.base This compiles the base library with --make, and I got an assertion failure in TcIface. The explanation is in Note [Tying the knot] in TcIface. As well as fixing the bug, I also impoved the assertion message. This might fix or improve other knot-tying problems with --make M ./compiler/iface/TcIface.lhs -18 +35 From igloo at earth.li Wed Aug 1 09:00:40 2007 From: igloo at earth.li (Ian Lynagh) Date: Wed Aug 1 08:53:00 2007 Subject: patch applied (ghc): Make lndir work on Windows (by copying) In-Reply-To: <46B03F3B.9080907@gmail.com> References: <20070731144325.GA28942@cvs.haskell.org> <46B03F3B.9080907@gmail.com> Message-ID: <20070801130039.GA4960@matrix.chaos.earth.li> On Wed, Aug 01, 2007 at 09:07:23AM +0100, Simon Marlow wrote: > Ian Lynagh wrote: > >Mon Jul 30 15:31:52 PDT 2007 Ian Lynagh > > * Make lndir work on Windows (by copying) > > > > M ./utils/lndir/lndir.c -9 +91 > > Just out of interest, what's the purpose of this? Isn't it pointless to do > an lndir if it copies all the files? Unlike "cp -a" it doesn't spend forever copying the _darcs directories that I don't need. Thanks Ian From simonpj at microsoft.com Wed Aug 1 09:23:58 2007 From: simonpj at microsoft.com (Simon Peyton Jones) Date: Wed Aug 1 09:16:18 2007 Subject: patch applied (testsuite): Add test for Trac #1564 Message-ID: <20070801132358.GA15808@cvs.haskell.org> Wed Aug 1 06:22:35 PDT 2007 simonpj@microsoft.com * Add test for Trac #1564 M ./tests/ghc-regress/typecheck/should_compile/all.T +1 A ./tests/ghc-regress/typecheck/should_compile/tc235.hs From rl at cse.unsw.edu.au Wed Aug 1 09:25:03 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Wed Aug 1 09:17:12 2007 Subject: HEAD doesn't build (was Re: patch applied (ghc): Add hardwire-lib-paths option and make it default for inplace invocations) In-Reply-To: <46B07C7C.5050508@gmail.com> References: <20070731102844.GA21382@cvs.haskell.org> <46AFF3CC.2060600@cse.unsw.edu.au> <46B04269.1010909@gmail.com> <46B04D74.1030708@cse.unsw.edu.au> <46B06238.8070903@gmail.com> <46B06F8E.5080504@cse.unsw.edu.au> <46B07C7C.5050508@gmail.com> Message-ID: <46B089AF.9000101@cse.unsw.edu.au> Simon Marlow wrote: > Roman Leshchinskiy wrote: >> Simon Marlow wrote: >>> Roman Leshchinskiy wrote: >>>> Simon Marlow wrote: >>>>> >>>>> We had a discussion on glasgow-haskell-users recently about whether >>>>> to use libtool, and the general concensus was not: >>>> >>>> Hmm, I missed that one completely. It's probably too late for me to >>>> jump in but I just don't see how the approach you outlined in >>>> >>>> http://www.haskell.org/pipermail/glasgow-haskell-users/2007-June/012740.html >>>> >>>> >>>> deals with systems which don't *have* an rpath and with users who >>>> manually set LD_LIBRARY_PATH. To be entirely honest, I suspect that >>>> what you are trying to achieve can't be done portably and reliably. >>> >>> I don't expect it to be portable. So on MacOS X, is it the case that >>> the only way to build a binary that links to a particular shared >>> library outside the system location is to use LD_LIBRARY_PATH? >> >> IIUC yes, except that it's called DYLD_LIBRARY_PATH. From man dyld: >> >> For each library that a program uses, the dynamic linker looks >> for it in each directory in DYLD_LIBRARY_PATH in turn. If it >> still can't find the library, it then searches DYLD_FALL- >> BACK_FRAMEWORK_PATH and DYLD_FALLBACK_LIBRARY_PATH in turn. >> >> But I think on MacOS, the library paths are usually hardcoded in the >> executable. > > If you can hardcode the library paths in the executable, then that's > exactly what -rpath does isn't it? After looking at the documentation I think I sort of understand how the system works. When you build a shared library you can specify its install_name which is the location where it will ultimately be installed. When linking against the library, the linker hardcodes the library's install_name into the executable. When the executable is run, the dynamic loader looks for the library at that location. If it finds the library, it's happy. If not, it will (appently) look in DYLD_LIBRARY_PATH and friends and then in standard locations (/usr/lib etc.) but will ignore DYLD_LIBRARY_PATH for setuid and setgid processes. Roman From simonmarhaskell at gmail.com Wed Aug 1 09:36:20 2007 From: simonmarhaskell at gmail.com (Simon Marlow) Date: Wed Aug 1 09:28:42 2007 Subject: HEAD doesn't build (was Re: patch applied (ghc): Add hardwire-lib-paths option and make it default for inplace invocations) In-Reply-To: <46B089AF.9000101@cse.unsw.edu.au> References: <20070731102844.GA21382@cvs.haskell.org> <46AFF3CC.2060600@cse.unsw.edu.au> <46B04269.1010909@gmail.com> <46B04D74.1030708@cse.unsw.edu.au> <46B06238.8070903@gmail.com> <46B06F8E.5080504@cse.unsw.edu.au> <46B07C7C.5050508@gmail.com> <46B089AF.9000101@cse.unsw.edu.au> Message-ID: <46B08C54.6030201@gmail.com> Roman Leshchinskiy wrote: > Simon Marlow wrote: >> Roman Leshchinskiy wrote: >>> Simon Marlow wrote: >>>> Roman Leshchinskiy wrote: >>>>> Simon Marlow wrote: >>>>>> >>>>>> We had a discussion on glasgow-haskell-users recently about >>>>>> whether to use libtool, and the general concensus was not: >>>>> >>>>> Hmm, I missed that one completely. It's probably too late for me to >>>>> jump in but I just don't see how the approach you outlined in >>>>> >>>>> http://www.haskell.org/pipermail/glasgow-haskell-users/2007-June/012740.html >>>>> >>>>> >>>>> deals with systems which don't *have* an rpath and with users who >>>>> manually set LD_LIBRARY_PATH. To be entirely honest, I suspect that >>>>> what you are trying to achieve can't be done portably and reliably. >>>> >>>> I don't expect it to be portable. So on MacOS X, is it the case >>>> that the only way to build a binary that links to a particular >>>> shared library outside the system location is to use LD_LIBRARY_PATH? >>> >>> IIUC yes, except that it's called DYLD_LIBRARY_PATH. From man dyld: >>> >>> For each library that a program uses, the dynamic linker looks >>> for it in each directory in DYLD_LIBRARY_PATH in turn. If it >>> still can't find the library, it then searches DYLD_FALL- >>> BACK_FRAMEWORK_PATH and DYLD_FALLBACK_LIBRARY_PATH in turn. >>> >>> But I think on MacOS, the library paths are usually hardcoded in the >>> executable. >> >> If you can hardcode the library paths in the executable, then that's >> exactly what -rpath does isn't it? > > After looking at the documentation I think I sort of understand how the > system works. When you build a shared library you can specify its > install_name which is the location where it will ultimately be > installed. When linking against the library, the linker hardcodes the > library's install_name into the executable. When the executable is run, > the dynamic loader looks for the library at that location. If it finds > the library, it's happy. If not, it will (appently) look in > DYLD_LIBRARY_PATH and friends and then in standard locations (/usr/lib > etc.) but will ignore DYLD_LIBRARY_PATH for setuid and setgid processes. It sounds like the only way to get the effect of -rpath is to create a wrapper script that sets DYLD_LIBRARY_PATH, then. Presumably this is what libtool does. This is a bit of a pain. We can't support -hardwire-lib-paths on MacOS, and we'll need some jiggery-pokery in the build system to get the same effect - perhaps ghc-inplace sets DYLD_LIBRARY_PATH before invoking the ghc binary. Cheers, Simon From simonmar at microsoft.com Wed Aug 1 11:44:34 2007 From: simonmar at microsoft.com (Simon Marlow) Date: Wed Aug 1 11:36:53 2007 Subject: patch applied (ghc): revert accidental modification of version number Message-ID: <20070801154434.GA23006@cvs.haskell.org> Wed Aug 1 06:39:38 PDT 2007 Simon Marlow * revert accidental modification of version number M ./configure.ac -1 +1 From simonmar at microsoft.com Wed Aug 1 11:44:37 2007 From: simonmar at microsoft.com (Simon Marlow) Date: Wed Aug 1 11:36:57 2007 Subject: patch applied (ghc): FIX recent PPC crashes introduced by the pointer-tagging patch (I hope) Message-ID: <20070801154437.GA23027@cvs.haskell.org> Wed Aug 1 07:02:31 PDT 2007 Simon Marlow * FIX recent PPC crashes introduced by the pointer-tagging patch (I hope) There was an accidental endian-dependency in changes related to RET_FUN. The changes in question weren't strictly necessary - they were left over from the original workaround for the compacting GC problems, so I've just reverted those changes in this patch, which should hopefully fix the PPC problems. M ./includes/Closures.h -2 +1 M ./includes/mkDerivedConstants.c -4 M ./rts/HeapStackCheck.cmm -19 +5 From naur at post11.tele.dk Wed Aug 1 17:25:38 2007 From: naur at post11.tele.dk (Thorkil Naur) Date: Wed Aug 1 17:17:51 2007 Subject: Daily report for head: tnaur x86 Linux head: fail (failed stage1) In-Reply-To: <200707311658.38383.naur@post11.tele.dk> References: <200707310730.l6V7U5i0015805@monk.galois.com> <200707311305.52176.naur@post11.tele.dk> <200707311658.38383.naur@post11.tele.dk> Message-ID: <200708012325.40582.naur@post11.tele.dk> Hello, This is about the x86 linux build: The error (" Prologue junk?: .globl stg_ap_p_ret" etc.) is reported again in tonight's build http://darcs.haskell.org/buildbot/head/tnaur%20x86%20Linux%20head/builds/41/step-stage1/0. And, as mentioned below, the error disappears when unpulling all the way back past the pointer tagging patch. And it re-appears when the pointer tagging patch is pulled back in. Best regards Thorkil On Tuesday 31 July 2007 16:58, Thorkil Naur wrote: > Hello, > > On Tuesday 31 July 2007 13:05, Thorkil Naur wrote: > > Hello, > > > > On Tuesday 31 July 2007 09:30, BuildBot Collator wrote: > > > ... > > > tnaur x86 Linux head: fail (failed stage1) > > > ... > > > > The latest 4 builds (38, 37, 36, 35) failed building stage 1 with > > > (http://darcs.haskell.org/buildbot/head/tnaur%20x86%20Linux%20head/builds/38/step-stage1/0): > > > > > ... > > > ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include > > HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf > > debug_o -optc-DDEBUG -c Updates.cmm -o Updates.debug_o > > > ../utils/genapply/genapply >AutoApply_debug.cmm > > > ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include > > HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf > > debug_o -optc-DDEBUG -c AutoApply_debug.cmm -o AutoApply_debug.debug_o > > > Prologue junk?: .globl stg_ap_p_ret > > > .type stg_ap_p_ret, @function > > > stg_ap_p_ret: > > > pushl %ebp > > > movl %esp, %ebp > > > > > > make[2]: *** [AutoApply_debug.debug_o] Error 255 > > > make[1]: *** [all] Error 1 > > > make: *** [stage1] Error 1 > > > program finished with exit code 2 > > > > Build 34 failed earlier. Build 33 succeeded. > > > > I haven't tried to figure out what goes on here (my guess is some code > > generation error and/or an error/limitation in the mangler). Please indicate > > if there is something I can do to investigate further. > > > > Thanks and best regards > > Thorkil > > > > _______________________________________________ > > Cvs-ghc mailing list > > Cvs-ghc@haskell.org > > http://www.haskell.org/mailman/listinfo/cvs-ghc > > > > I have tried to unpull patches back to, and including, > > < Fri Jul 27 12:41:57 CEST 2007 Simon Marlow > < * Pointer Tagging > > and the above error disappeared. (Or, rather, it was replced by another error, > reported somewhat further along in the build process.) I then tried to pull > the "Pointer Tagging" patch back in, and the error re-appeared. Additional > details are available if desired. > > Best regards > Thorkil > > _______________________________________________ > Cvs-ghc mailing list > Cvs-ghc@haskell.org > http://www.haskell.org/mailman/listinfo/cvs-ghc > From rl at cse.unsw.edu.au Wed Aug 1 17:44:08 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Wed Aug 1 17:36:15 2007 Subject: HEAD doesn't build (was Re: patch applied (ghc): Add hardwire-lib-paths option and make it default for inplace invocations) In-Reply-To: <46B08C54.6030201@gmail.com> References: <20070731102844.GA21382@cvs.haskell.org> <46AFF3CC.2060600@cse.unsw.edu.au> <46B04269.1010909@gmail.com> <46B04D74.1030708@cse.unsw.edu.au> <46B06238.8070903@gmail.com> <46B06F8E.5080504@cse.unsw.edu.au> <46B07C7C.5050508@gmail.com> <46B089AF.9000101@cse.unsw.edu.au> <46B08C54.6030201@gmail.com> Message-ID: <46B0FEA8.7050408@cse.unsw.edu.au> Simon Marlow wrote: > It sounds like the only way to get the effect of -rpath is to create a > wrapper script that sets DYLD_LIBRARY_PATH, then. Presumably this is > what libtool does. I'm still not sure which effect precisely you're after. -rpath helps with finding shared libraries but it doesn't (portably) guarantee that you'll find the right ones. Consider the following (IMO not entirely unreasonable) scenario: - ghc-9.9 is installed in /somewhere, with libghc-9.9 living in /somewhere/lib - LD_LIBRARY_PATH is set to /somewhere/lib - I download and build my own ghc-9.9 in ~/build - I compile myapp with ~/build/compiler/ghc-inplace which sets -rpath ~/build/lib (where the new libghc-9.9 lives) Now, when I run myapp on Linux, everything will be fine because here, rpath takes precedence over LD_LIBRARY_PATH. However, on Solaris and, apparently, on FreeBSD myapp will pick up the wrong libghc, namely the one in /somewhere/lib because on these systems, LD_LIBRARY_PATH is searched first (unless I'm completely mistaken). > This is a bit of a pain. We can't support -hardwire-lib-paths on MacOS, > and we'll need some jiggery-pokery in the build system to get the same > effect - perhaps ghc-inplace sets DYLD_LIBRARY_PATH before invoking the > ghc binary. IMO it should do that on all systems. But this still doesn't help with programs that are compiled with ghc-inplace as it is rather easy for them to pick up the wrong libraries. Perhaps this can be mitigated somewhat by having ghc-inplace link against libghc-inplace. This would avoid a conflict with a libghc installed in LD_LIBRARY_PATH. Indeed, this would also help with MacOS since the inplace library can have a different install_name than the one which ultimately gets installed. Roman From rfhayes at reillyhayes.com Wed Aug 1 20:21:19 2007 From: rfhayes at reillyhayes.com (R Hayes) Date: Wed Aug 1 20:13:48 2007 Subject: HEAD doesn't build (was Re: patch applied (ghc): Add hardwire-lib-paths option and make it default for inplace invocations) In-Reply-To: <46B08C54.6030201@gmail.com> References: <20070731102844.GA21382@cvs.haskell.org> <46AFF3CC.2060600@cse.unsw.edu.au> <46B04269.1010909@gmail.com> <46B04D74.1030708@cse.unsw.edu.au> <46B06238.8070903@gmail.com> <46B06F8E.5080504@cse.unsw.edu.au> <46B07C7C.5050508@gmail.com> <46B089AF.9000101@cse.unsw.edu.au> <46B08C54.6030201@gmail.com> Message-ID: <81A3E69E-F2EA-4DF1-97E0-6D183329730A@reillyhayes.com> I think there is some misinformation in here, as well as some correct but misleading information. Some of the documentation is dodgy, so I have taken the time to verify my assertions on my Mac (Intel OS X 10.4.10) and my linux box (Linux 2.6.15 X86_64). I will reiterate what I understand the goals to be: 1) When creating an executable, specify where the dynamic loader should look for shared libraries at runtime. The intent is to expand the shared library search space beyond the default search path and remove the need to set environment variables. 2) When running an executable, override the default. Primarily a requirement for building GHC. On Linux ------------ An ELF executable can have an embedded list of paths to search for dynamic libraries (the DT_RPATH entry). This can be set by using - rpath with ld. DT_RPATH is deprecated. This list applies to all shared libraries used by the executable (it is not per shared library). There is no default value placed in the DT_RPATH entry. You must use -rpath to set it. There is a new entry, DT_RUNPATH. DT_RUNPATH works similarly to DT_RPATH. However, when it is set, DT_RPATH is ignored. DT_RUNPATH is also set using -rpath, but you must use the --enable-new-dtags switch as well. When looking for a shared library, the dynamic linker(ld.so) checks the paths listed in DT_RPATH (unless DT_RUNPATH Is set) , the paths listed in the environment variable LD_LIBRARY_PATH, the paths listed in DT_RUNPATH, the libraries listed in /etc/ld.so.cache, and finally / usr/lib and /lib. It checks in that order and takes the first library found. At least on my linux box, LD_LIBRARY_PATH does NOT override the paths in DT_RPATH even though the documentation implies that it does. LD_LIBRARY_PATH does override DT_RUNPATH. You CAN override the search path embedded using DT_RPATH by using the LD_PRELOAD environment variable. This variable contains a *whitespace-separated* list of libraries (not directories to search) to load prior to the search process. The listed libraries are loaded whether or not they are needed to resolve a dependency in the executable. Finally, an ELF shared library can also have a DT_RPATH entry. This only impacts the search for shared libraries that are dependencies of the shared library and not the executable. As with the DT_RPATH entry in an ELF executable, this is not overridden by LD_LIBRARY_PATH but can be overridden using LD_PRELOAD as above. On Mac OS X ------------------ A Mach-O executable can embed the full path name for each shared library (as well as rules for acceptable substitutes). This is called the "install name" for the library and it is included by default when building an executable. The install name for the library is NOT based on where the static linker (ld) found the library when the executable was built. The static linker (ld) extracts the install name from the shared library when building the executable. The install name of the shared library is set when building the shared library. When you build a shared library you should know where the library is going to be installed so that the install name is set correctly. When looking for shared libraries, the dynamic linker (dyld) first scans the directories in DYLD_LIBRARY_PATH, then checks the location in the install name (which is per library), and finally checks the standard locations. DYLD_LIBRARY_PATH successfully overrides the the path embedded in the executable. Caveat 1: LD_LIBRARY_PATH has no runtime impact, but it does impact where the static linker looks for share libraries. It looks first in the directories specified using -L, the the directories in LD_LIBRARY_PATH, and finally in /lib, /usr/lib, & /usr/local/lib. This is particularly confusing because many configure scripts seem to ignore LD_LIBRARY_PATH and you can get inconsistent results from configure and gcc/ld on whether a library is present. Caveat 2: Mac OS X has a set of compiler/linker switches for dealing with Frameworks (packages of shared libraries and include files). These are installed outside the typical *nix directory structure. These switches act like -I (to gcc) and -L (to ld). If you end up totally confused about where to find something, read up on this. The OpenGL and OpenAL headers and libraries are in Frameworks, for example. My Conclusions ----------------------- For Mac: The -rpath switch is not available on Mac OS X because it is superfluous. The default behavior of embedding a location for each individual shared library is at least as good. Cabal (and the GHC build process) should use their knowledge of the ultimate install location to set the install name when shared libraries are built. In- place compilation can override this with DYLD_LIBRARY_PATH For Linux: On linux, we should be sure to use the --enable-new-dtags switch if we use -rpath. Otherwise we risk having paths that can't be overridden by LD_LIBRARY_PATH. I know we don't want to have an install that *requires* root access, but we should consider adding entries to /etc/ld.so.conf and running ldconfig to eliminate the need to hardwire path names. Verification --------------- I wrote a small but heinous C program that called a trivial function in a shared library. Using 2 copies of the shared library, I observed which was used under the various scenarios. On linux, I used "objdump -p" to examine the ELF executables and shared libraries. I used "ldd" to see which libraries were actually being loaded. When I got an unexpected result from ldd (LD_LIBRARY_PATH not overriding DT_RPATH), I went so far as using lsof on the process to see which files were mapped. On the Mac, I used "otool -l" to examine the Mach-O executables and shared libraries. I used the environment variable DYLD_PRINT_LIBRARIES=YES to see which libraries were actually being loaded (this forces dyld to print the location of each library as it is loaded). --Reilly Hayes On Aug 1, 2007, at 6:36 AM, Simon Marlow wrote: > Roman Leshchinskiy wrote: >> Simon Marlow wrote: >>> Roman Leshchinskiy wrote: >>>> Simon Marlow wrote: >>>>> Roman Leshchinskiy wrote: >>>>>> Simon Marlow wrote: >>>>>>> >>>>>>> We had a discussion on glasgow-haskell-users recently about >>>>>>> whether to use libtool, and the general concensus was not: >>>>>> >>>>>> Hmm, I missed that one completely. It's probably too late for >>>>>> me to jump in but I just don't see how the approach you >>>>>> outlined in >>>>>> >>>>>> http://www.haskell.org/pipermail/glasgow-haskell-users/2007- >>>>>> June/012740.html >>>>>> >>>>>> deals with systems which don't *have* an rpath and with users >>>>>> who manually set LD_LIBRARY_PATH. To be entirely honest, I >>>>>> suspect that what you are trying to achieve can't be done >>>>>> portably and reliably. >>>>> >>>>> I don't expect it to be portable. So on MacOS X, is it the >>>>> case that the only way to build a binary that links to a >>>>> particular shared library outside the system location is to use >>>>> LD_LIBRARY_PATH? >>>> >>>> IIUC yes, except that it's called DYLD_LIBRARY_PATH. From man dyld: >>>> >>>> For each library that a program uses, the dynamic linker looks >>>> for it in each directory in DYLD_LIBRARY_PATH in turn. If it >>>> still can't find the library, it then searches DYLD_FALL- >>>> BACK_FRAMEWORK_PATH and DYLD_FALLBACK_LIBRARY_PATH in turn. >>>> >>>> But I think on MacOS, the library paths are usually hardcoded in >>>> the executable. >>> >>> If you can hardcode the library paths in the executable, then >>> that's exactly what -rpath does isn't it? >> After looking at the documentation I think I sort of understand >> how the system works. When you build a shared library you can >> specify its install_name which is the location where it will >> ultimately be installed. When linking against the library, the >> linker hardcodes the library's install_name into the executable. >> When the executable is run, the dynamic loader looks for the >> library at that location. If it finds the library, it's happy. If >> not, it will (appently) look in DYLD_LIBRARY_PATH and friends and >> then in standard locations (/usr/lib etc.) but will ignore >> DYLD_LIBRARY_PATH for setuid and setgid processes. > > It sounds like the only way to get the effect of -rpath is to > create a wrapper script that sets DYLD_LIBRARY_PATH, then. > Presumably this is what libtool does. > > This is a bit of a pain. We can't support -hardwire-lib-paths on > MacOS, and we'll need some jiggery-pokery in the build system to > get the same effect - perhaps ghc-inplace sets DYLD_LIBRARY_PATH > before invoking the ghc binary. > > Cheers, > Simon > > _______________________________________________ > Cvs-ghc mailing list > Cvs-ghc@haskell.org > http://www.haskell.org/mailman/listinfo/cvs-ghc -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.haskell.org/pipermail/cvs-ghc/attachments/20070801/ccf43a56/attachment-0001.htm From rl at cse.unsw.edu.au Wed Aug 1 21:54:39 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Wed Aug 1 21:46:57 2007 Subject: patch applied (ghc): Optimise parallel arrays of products Message-ID: <20070802015439.GA28504@cvs.haskell.org> Thu Jul 26 00:13:08 PDT 2007 Roman Leshchinskiy * Optimise parallel arrays of products M ./compiler/vectorise/VectType.hs -18 +52 From rl at cse.unsw.edu.au Wed Aug 1 21:54:43 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Wed Aug 1 21:47:01 2007 Subject: patch applied (ghc): Refactoring Message-ID: <20070802015443.GA28528@cvs.haskell.org> Mon Jul 30 21:06:21 PDT 2007 Roman Leshchinskiy * Refactoring M ./compiler/vectorise/VectType.hs -1 +1 M ./compiler/vectorise/VectUtils.hs -6 +7 M ./compiler/vectorise/Vectorise.hs -6 +5 From rl at cse.unsw.edu.au Wed Aug 1 21:54:46 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Wed Aug 1 21:47:04 2007 Subject: patch applied (ghc): New closure generation code Message-ID: <20070802015446.GA28544@cvs.haskell.org> Mon Jul 30 21:40:29 PDT 2007 Roman Leshchinskiy * New closure generation code M ./compiler/vectorise/VectUtils.hs +101 From rl at cse.unsw.edu.au Wed Aug 1 21:54:50 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Wed Aug 1 21:47:09 2007 Subject: patch applied (ghc): Simplify closure generation code Message-ID: <20070802015450.GA28559@cvs.haskell.org> Mon Jul 30 22:54:19 PDT 2007 Roman Leshchinskiy * Simplify closure generation code M ./compiler/vectorise/VectUtils.hs -49 +80 From rl at cse.unsw.edu.au Wed Aug 1 21:54:53 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Wed Aug 1 21:47:11 2007 Subject: patch applied (ghc): Simplify handling of variables during vectorisation Message-ID: <20070802015453.GA28574@cvs.haskell.org> Mon Jul 30 23:09:17 PDT 2007 Roman Leshchinskiy * Simplify handling of variables during vectorisation M ./compiler/vectorise/VectMonad.hs -5 +5 M ./compiler/vectorise/Vectorise.hs -15 +15 From rl at cse.unsw.edu.au Wed Aug 1 21:54:57 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Wed Aug 1 21:47:15 2007 Subject: patch applied (ghc): Use a Var instead of a CoreExpr as the lifting context during vectorisation Message-ID: <20070802015457.GA28588@cvs.haskell.org> Mon Jul 30 23:16:10 PDT 2007 Roman Leshchinskiy * Use a Var instead of a CoreExpr as the lifting context during vectorisation M ./compiler/vectorise/Vectorise.hs -11 +11 From rl at cse.unsw.edu.au Wed Aug 1 21:55:00 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Wed Aug 1 21:47:18 2007 Subject: patch applied (ghc): Move vectorisation-related smart constructors into a separate module Message-ID: <20070802015500.GA28603@cvs.haskell.org> Mon Jul 30 23:27:11 PDT 2007 Roman Leshchinskiy * Move vectorisation-related smart constructors into a separate module M ./compiler/package.conf.in +1 A ./compiler/vectorise/VectCore.hs M ./compiler/vectorise/VectUtils.hs -27 +2 From rl at cse.unsw.edu.au Wed Aug 1 21:55:04 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Wed Aug 1 21:47:22 2007 Subject: patch applied (ghc): Use VectCore stuff in vectorisation Message-ID: <20070802015504.GA28622@cvs.haskell.org> Mon Jul 30 23:34:48 PDT 2007 Roman Leshchinskiy * Use VectCore stuff in vectorisation M ./compiler/vectorise/Vectorise.hs -18 +21 From rl at cse.unsw.edu.au Wed Aug 1 21:55:08 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Wed Aug 1 21:47:26 2007 Subject: patch applied (ghc): More vectorisation-related smart constructors Message-ID: <20070802015508.GA28636@cvs.haskell.org> Mon Jul 30 23:50:24 PDT 2007 Roman Leshchinskiy * More vectorisation-related smart constructors M ./compiler/vectorise/VectCore.hs -2 +28 M ./compiler/vectorise/Vectorise.hs -26 +20 From rl at cse.unsw.edu.au Wed Aug 1 21:55:11 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Wed Aug 1 21:47:29 2007 Subject: patch applied (ghc): Use new closure generation code in vectorisation Message-ID: <20070802015511.GA28650@cvs.haskell.org> Tue Jul 31 18:37:28 PDT 2007 Roman Leshchinskiy * Use new closure generation code in vectorisation M ./compiler/vectorise/VectCore.hs +6 M ./compiler/vectorise/VectUtils.hs -32 +47 M ./compiler/vectorise/Vectorise.hs -152 +16 From rl at cse.unsw.edu.au Wed Aug 1 21:55:15 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Wed Aug 1 21:47:35 2007 Subject: patch applied (ghc): Rename functions Message-ID: <20070802015515.GA28668@cvs.haskell.org> Tue Jul 31 18:40:56 PDT 2007 Roman Leshchinskiy * Rename functions M ./compiler/vectorise/VectCore.hs -6 +5 M ./compiler/vectorise/VectUtils.hs -2 +2 From rl at cse.unsw.edu.au Wed Aug 1 22:11:01 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Wed Aug 1 22:03:12 2007 Subject: HEAD doesn't build (was Re: patch applied (ghc): Add hardwire-lib-paths option and make it default for inplace invocations) In-Reply-To: <81A3E69E-F2EA-4DF1-97E0-6D183329730A@reillyhayes.com> References: <20070731102844.GA21382@cvs.haskell.org> <46AFF3CC.2060600@cse.unsw.edu.au> <46B04269.1010909@gmail.com> <46B04D74.1030708@cse.unsw.edu.au> <46B06238.8070903@gmail.com> <46B06F8E.5080504@cse.unsw.edu.au> <46B07C7C.5050508@gmail.com> <46B089AF.9000101@cse.unsw.edu.au> <46B08C54.6030201@gmail.com> <81A3E69E-F2EA-4DF1-97E0-6D183329730A@reillyhayes.com> Message-ID: <46B13D35.1050705@cse.unsw.edu.au> R Hayes wrote: > > I will reiterate what I understand the goals to be: > > 1) When creating an executable, specify where the dynamic loader should > look for shared libraries at runtime. The intent is to expand the > shared library search space beyond the default search path and remove > the need to set environment variables. > > 2) When running an executable, override the default. Primarily a > requirement for building GHC. I would add: 3) Building binary distributions of ghc-compiled programs. Those can't use -rpath for obvious reasons. 4) ghc-inplace should be able to produce binaries which use libraries from the uninstalled tree. Hacking on ghc would become rather annoying otherwise. > For Mac: The -rpath switch is not available on Mac OS X because it is > superfluous. The default behavior of embedding a location for each > individual shared library is at least as good. Cabal (and the GHC build > process) should use their knowledge of the ultimate install location to > set the install name when shared libraries are built. In-place > compilation can override this with DYLD_LIBRARY_PATH The problem is that this scheme doesn't really account for 3) and 4). > For Linux: On linux, we should be sure to use the --enable-new-dtags > switch if we use -rpath. Otherwise we risk having paths that can't be > overridden by LD_LIBRARY_PATH. I know we don't want to have an install > that *requires* root access, but we should consider adding entries to > /etc/ld.so.conf and running ldconfig to eliminate the need to hardwire > path names. IMO, this is a very bad idea. It shouldn't be necessary and if it was it would be the OS package manager's job to add such entries upon installation and, crucially, to remove them upon deinstallation. Roman From rl at cse.unsw.edu.au Thu Aug 2 00:58:27 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Thu Aug 2 00:50:47 2007 Subject: patch applied (ghc): Improve closure generation for functions with multiple parameters Message-ID: <20070802045827.GA6334@cvs.haskell.org> Tue Jul 31 20:41:19 PDT 2007 Roman Leshchinskiy * Improve closure generation for functions with multiple parameters M ./compiler/vectorise/VectUtils.hs -2 +36 M ./compiler/vectorise/Vectorise.hs -8 +13 From rl at cse.unsw.edu.au Thu Aug 2 00:58:32 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Thu Aug 2 00:50:51 2007 Subject: patch applied (ghc): Nicer names for hoisted functions Message-ID: <20070802045832.GA6356@cvs.haskell.org> Tue Jul 31 21:13:22 PDT 2007 Roman Leshchinskiy * Nicer names for hoisted functions M ./compiler/vectorise/VectMonad.hs -1 +15 M ./compiler/vectorise/VectUtils.hs -7 +8 M ./compiler/vectorise/Vectorise.hs -8 +13 From rl at cse.unsw.edu.au Thu Aug 2 00:58:35 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Thu Aug 2 00:50:53 2007 Subject: patch applied (ghc): Move code Message-ID: <20070802045835.GA6371@cvs.haskell.org> Tue Jul 31 21:24:04 PDT 2007 Roman Leshchinskiy * Move code M ./compiler/vectorise/VectUtils.hs -2 +12 M ./compiler/vectorise/Vectorise.hs -13 +2 From rl at cse.unsw.edu.au Thu Aug 2 00:58:40 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Thu Aug 2 00:50:58 2007 Subject: patch applied (ghc): Reuse the lifting context Var Message-ID: <20070802045840.GA6387@cvs.haskell.org> Tue Jul 31 21:24:41 PDT 2007 Roman Leshchinskiy * Reuse the lifting context Var M ./compiler/vectorise/Vectorise.hs -3 +2 From rl at cse.unsw.edu.au Thu Aug 2 00:58:43 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Thu Aug 2 00:51:02 2007 Subject: patch applied (ghc): Trace vectorisation failures Message-ID: <20070802045843.GA6406@cvs.haskell.org> Tue Jul 31 21:56:40 PDT 2007 Roman Leshchinskiy * Trace vectorisation failures M ./compiler/vectorise/VectMonad.hs -2 +9 From rl at cse.unsw.edu.au Thu Aug 2 00:58:47 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Thu Aug 2 00:51:05 2007 Subject: patch applied (ghc): Fix calls to replicatePA Message-ID: <20070802045847.GA6421@cvs.haskell.org> Tue Jul 31 21:56:56 PDT 2007 Roman Leshchinskiy * Fix calls to replicatePA M ./compiler/vectorise/Vectorise.hs -3 +3 From rl at cse.unsw.edu.au Thu Aug 2 00:58:51 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Thu Aug 2 00:51:09 2007 Subject: patch applied (ghc): Thread lifting context implicitly in the vectorisation monad Message-ID: <20070802045851.GA6438@cvs.haskell.org> Wed Aug 1 19:25:03 PDT 2007 Roman Leshchinskiy * Thread lifting context implicitly in the vectorisation monad M ./compiler/vectorise/VectMonad.hs +6 M ./compiler/vectorise/VectUtils.hs -19 +28 M ./compiler/vectorise/Vectorise.hs -42 +41 From rl at cse.unsw.edu.au Thu Aug 2 00:58:55 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Thu Aug 2 00:51:14 2007 Subject: patch applied (ghc): Refactoring Message-ID: <20070802045855.GA6454@cvs.haskell.org> Wed Aug 1 19:28:40 PDT 2007 Roman Leshchinskiy * Refactoring M ./compiler/vectorise/VectMonad.hs -1 +10 M ./compiler/vectorise/Vectorise.hs -4 +2 From rl at cse.unsw.edu.au Thu Aug 2 00:58:58 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Thu Aug 2 00:51:16 2007 Subject: patch applied (ghc): More refactoring Message-ID: <20070802045858.GA6475@cvs.haskell.org> Wed Aug 1 19:28:59 PDT 2007 Roman Leshchinskiy * More refactoring M ./compiler/vectorise/VectUtils.hs -3 +6 From rl at cse.unsw.edu.au Thu Aug 2 00:59:02 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Thu Aug 2 00:51:19 2007 Subject: patch applied (ghc): Include original tycon in PAInstance Message-ID: <20070802045902.GA6492@cvs.haskell.org> Wed Aug 1 21:29:38 PDT 2007 Roman Leshchinskiy * Include original tycon in PAInstance M ./compiler/vectorise/VectType.hs -3 +5 From rl at cse.unsw.edu.au Thu Aug 2 00:59:06 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Thu Aug 2 00:51:25 2007 Subject: patch applied (ghc): Vectorise DataCon workers Message-ID: <20070802045906.GA6511@cvs.haskell.org> Wed Aug 1 21:37:12 PDT 2007 Roman Leshchinskiy * Vectorise DataCon workers M ./compiler/vectorise/VectType.hs -1 +63 M ./compiler/vectorise/Vectorise.hs -3 +4 From cvs-ghc at haskell.org Thu Aug 2 03:30:05 2007 From: cvs-ghc at haskell.org (BuildBot Collator) Date: Thu Aug 2 03:22:27 2007 Subject: Daily report for head Message-ID: <200708020730.l727U5R2015432@monk.galois.com> Build results: x86 Windows head fast: pass lost fail (failed stage1) fail (failed stage1) kahl G5 Gentoo Linux head: fail (failed stage2) phil Intel OSX head: fail (failed stage1) phil P4 SuSE Linux head: fail (failed stage1) tnaur PPC OSX head: fail (failed stage1) tnaur x86 Linux head: fail (failed stage1) Dropping unexpected test passes reports from builders not seen in 7 days: tnaur x86 Linux head Old unexpected test passes: arith008 1 x86 Windows head Dropping unexpected test failures reports from builders not seen in 7 days: tnaur x86 Linux head Old unexpected test failures: GMapAssoc 8 x86-64 Linux head GMapTop 8 x86-64 Linux head arith005 4 x86 Windows head arith011 1 x86-64 Linux head unreg barton-mangler-bug 2 x86 Windows head break017 1 mnemosyne x86-64 Gentoo head bug1010 1 x86 Windows head cabal01 1 x86 Windows head cabal01prof 1 x86 Windows head cg015 1 x86-64 Linux head unreg cg035 1 x86-64 Linux head unreg conc022 1 x86-64 Linux head unreg conc023 1 x86 Windows head conc024 1 phil Intel OSX head conc040 1 kahl G5 Gentoo Linux head conc046 1 x86-64 Linux head unreg conc049 1 x86-64 Linux head unreg conc057 6 x86-64 Linux head conc060 1 x86-64 Linux head unreg conc061 1 x86-64 Linux head unreg conc062 1 x86-64 Linux head unreg conc063 3 x86-64 Linux head conc064 2 gbesh Intel x86_64 Linux head conc068 6 gbesh Intel x86_64 Linux head concio001 1 tnaur PPC OSX head concio001.thr 3 kahl G5 Gentoo Linux head concprog001 5 x86-64 Linux head driver017 2 kahl G5 Gentoo Linux head driver028 1 kahl G5 Gentoo Linux head driver035 2 kahl G5 Gentoo Linux head driver045 1 kahl G5 Gentoo Linux head expfloat 4 x86-64 Linux head fed001 2 kahl G5 Gentoo Linux head ffi002 1 tnaur PPC OSX head ffi003 1 x86-64 Linux head unreg ffi004 1 x86-64 Linux head unreg ffi006 2 kahl G5 Gentoo Linux head ffi007 1 kahl G5 Gentoo Linux head ffi008 1 kahl G5 Gentoo Linux head ffi009 3 kahl G5 Gentoo Linux head ffi010 1 x86-64 Linux head unreg ffi011 2 kahl G5 Gentoo Linux head ffi013 2 kahl G5 Gentoo Linux head ffi018 1 x86-64 Linux head unreg galois_raytrace 4 x86 Windows head getDirContents001 1 x86 Windows head ghc-e001 1 kahl G5 Gentoo Linux head hpc001 1 tnaur PPC OSX head ind2 3 x86-64 Linux head joao-circular 1 tnaur PPC OSX head num012 3 x86 Windows head read002 4 x86-64 Linux head read003 4 x86-64 Linux head seward-space-leak 1 tnaur PPC OSX head signals002 2 phil Intel OSX head tcrun022 7 x86-64 Linux head typecheck.testeq1 1 x86 Windows head -------------- next part -------------- Last 30 lines: c:/builds/slave/x86-win-fast-head/build/compiler/stage1/ghc-inplace.exe -package-name Win32-2.1 -hide-all-packages -i -idist/build/autogen -idist/build -i. -Idist/build -Iinclude -optc-DUNICODE -#include "HsWin32.h" -#include "HsGDI.h" -#include "WndProc.h" -odir dist/build -hidir dist/build -package base-2.1 -O -O -fvia-C -Wall -fno-warn-name-shadowing -fffi -idist/build -H16m -O -O -fgenerics -fasm -c dist/build/System/Win32/SimpleMAPI.hs -o dist/build/System/Win32/SimpleMAPI.o -ohi dist/build/System/Win32/SimpleMAPI.hi c:/builds/slave/x86-win-fast-head/build/compiler/stage1/ghc-inplace.exe -Iinclude -package base-2.1 -optc-DUNICODE -odir dist/build -c cbits/HsGDI.c -o dist/build/cbits/HsGDI.o c:/builds/slave/x86-win-fast-head/build/compiler/stage1/ghc-inplace.exe -Iinclude -package base-2.1 -optc-DUNICODE -odir dist/build -c cbits/HsWin32.c -o dist/build/cbits/HsWin32.o c:/builds/slave/x86-win-fast-head/build/compiler/stage1/ghc-inplace.exe -Iinclude -package base-2.1 -optc-DUNICODE -odir dist/build -c cbits/WndProc.c -o dist/build/cbits/WndProc.o c:/builds/slave/x86-win-fast-head/build/compiler/stage1/ghc-inplace.exe -Iinclude -package base-2.1 -optc-DUNICODE -odir dist/build -c cbits/diatemp.c -o dist/build/cbits/diatemp.o c:/builds/slave/x86-win-fast-head/build/compiler/stage1/ghc-inplace.exe -Iinclude -package base-2.1 -optc-DUNICODE -odir dist/build -c cbits/dumpBMP.c -o dist/build/cbits/dumpBMP.o c:/builds/slave/x86-win-fast-head/build/compiler/stage1/ghc-inplace.exe -Iinclude -package base-2.1 -optc-DUNICODE -odir dist/build -c cbits/ellipse.c -o dist/build/cbits/ellipse.o c:/builds/slave/x86-win-fast-head/build/compiler/stage1/ghc-inplace.exe -Iinclude -package base-2.1 -optc-DUNICODE -odir dist/build -c cbits/errors.c -o dist/build/cbits/errors.o echo dist/build/cbits/HsGDI.o dist/build/cbits/HsWin32.o dist/build/cbits/WndProc.o dist/build/cbits/diatemp.o dist/build/cbits/dumpBMP.o dist/build/cbits/ellipse.o dist/build/cbits/errors.o dist/build/Graphics/Win32/GDI.o dist/build/Graphics/Win32/GDI/Bitmap.o dist/build/Graphics/Win32/GDI/Brush.o dist/build/Graphics/Win32/GDI/Clip.o dist/build/Graphics/Win32/GDI/Font.o dist/build/Graphics/Win32/GDI/Graphics2D.o dist/build/Graphics/Win32/GDI/HDC.o dist/build/Graphics/Win32/GDI/Palette.o dist/build/Graphics/Win32/GDI/Path.o dist/build/Graphics/Win32/GDI/Pen.o dist/build/Graphics/Win32/GDI/Region.o dist/build/Graphics/Win32/GDI/Types.o dist/build/Graphics/Win32.o dist/build/Graphics/Win32/Control.o dist/build/Graphics/Win32/Dialogue.o dist/build/Graphics/Win32/Icon.o dist/build/Graphics/Win32/Key.o dist/build/Graphics/Win32/Menu.o dist/build/Graphics/Win32/Message.o dist/build/Graphics/Win32/Misc.o dist/build/Graphics/Win32/Resource.o dist/build/Graphics/Win32/Window.o dist/build/System/Win32.o dist/build/System/Win32/DebugApi.o dist/build/System/Win32/DLL.o dist/build/System/Win32/File.o dist/build/System/Win32/FileMapping.o dist/build/System/Win32/Info.o dist/build/System/Win32/Mem.o dist/build/System/Win32/NLS.o dist/build/System/Win32/Process.o dist/build/System/Win32/Registry.o dist/build/System/Win32/SimpleMAPI.o dist/build/System/Win32/Time.o dist/build/System/Win32/Console.o dist/build/System/Win32/Types.o `find dist/build -name "*_stub.o" -print` | xargs -s 30000 C:/cygwin/bin/ar.exe q dist/build/libHSWin32-2.1.a C:/cygwin/bin/ar: creating dist/build/libHSWin32-2.1.a C:/mingw/bin/ld.exe -r -x -o dist/build/HSWin32-2.1.o dist/build/Graphics/Win32/GDI.o dist/build/Graphics/Win32/GDI/Bitmap.o dist/build/Graphics/Win32/GDI/Brush.o dist/build/Graphics/Win32/GDI/Clip.o dist/build/Graphics/Win32/GDI/Font.o dist/build/Graphics/Win32/GDI/Graphics2D.o dist/build/Graphics/Win32/GDI/HDC.o dist/build/Graphics/Win32/GDI/Palette.o dist/build/Graphics/Win32/GDI/Path.o dist/build/Graphics/Win32/GDI/Pen.o dist/build/Graphics/Win32/GDI/Region.o dist/build/Graphics/Win32/GDI/Types.o dist/build/Graphics/Win32.o dist/build/Graphics/Win32/Control.o dist/build/Graphics/Win32/Dialogue.o dist/build/Graphics/Win32/Icon.o dist/build/Graphics/Win32/Key.o dist/build/Graphics/Win32/Menu.o dist/build/Graphics/Win32/Message.o dist/build/Graphics/Win32/Misc.o dist/build/Graphics/Win32/Resource.o dist/build/Graphics/Win32/Window.o dist/build/System/Win32.o dist/build/System/Win32/DebugApi.o dist/build/System/Win32/DLL.o dist/build/System/Win32/File.o dist/build/System/Win32/FileMapping.o dist/build/System/Win32/Info.o dist/build/System/Win32/Mem.o dist/build/System/Win32/NLS.o dist/build/System/Win32/Process.o dist/build/System/Win32/Registry.o dist/build/System/Win32/SimpleMAPI.o dist/build/System/Win32/Time.o dist/build/System/Win32/Console.o dist/build/System/Win32/Types.o `find dist/build -name "*_stub.o" -print` dist/build/cbits/HsGDI.o dist/build/cbits/HsWin32.o dist/build/cbits/WndProc.o dist/build/cbits/diatemp.o dist/build/cbits/dumpBMP.o dist/build/cbits/ellipse.o dist/build/cbits/errors.o Warning: resolving _genericWndProc by linking to _genericWndProc@16 Use --enable-stdcall-fixup to disable these warnings Use --disable-stdcall-fixup to disable these fixups make[3]: Leaving directory `/buildbot/x86-win-fast-head/build/libraries/Win32' Reading package info from "dist\\inplace-pkg-config" ... done. Saving old package config file... done. Writing new package config file... done. Registering Win32-2.1... if ifBuildable/ifBuildable base; then \ cd base && setup/Setup haddock; \ fi dist\build\tmp\.\System\IO.hs:"././System/IO.hs": 101:5: parse error in doc string: [haddock.exe: reading EOF! Preprocessing library base-2.1... Running Haddock for base-2.1... make[2]: *** [doc.library.base] Error 1 make[2]: Leaving directory `/buildbot/x86-win-fast-head/build/libraries' make[1]: *** [stage1] Error 2 make[1]: Leaving directory `/buildbot/x86-win-fast-head/build' -------------- next part -------------- Last 30 lines: mkdir stage2/stranal mkdir stage2/stgSyn mkdir stage2/simplStg mkdir stage2/codeGen mkdir stage2/main mkdir stage2/profiling mkdir stage2/parser mkdir stage2/cprAnalysis mkdir stage2/ndpFlatten mkdir stage2/iface mkdir stage2/cmm Creating stage2/ghc_boot_platform.h... Done. gcc -E -undef -traditional -P \ -DIMPORT_DIR='"/var/buildbot/ghc/kahl/build/libraries/ghc"' \ -DLIB_DIR='"/var/buildbot/ghc/kahl/build/libraries/ghc"' \ -DINCLUDE_DIR='"/var/buildbot/ghc/kahl/build/libraries/ghc/include"' \ -DDATA_DIR='"/var/buildbot/ghc/kahl/build/libraries/ghc"' \ -DHTML_DIR='"/var/buildbot/ghc/kahl/build/libraries/ghc/html"' \ -DHADDOCK_IFACE='"/var/buildbot/ghc/kahl/build/libraries/ghc/html/ghc.haddock"' \ -DFPTOOLS_TOP_ABS='"/var/buildbot/ghc/kahl/build"' \ -x c -DPKG_DEPENDS='hpc unix Cabal base haskell98' -DSTAGE='"2"' -I../includes -Iinclude -DPACKAGE=ghc -DVERSION=6.7.20070801 -DPKG_LIBDIR='"/usr/local/lib/ghc-6.7.20070801"' -DPKG_DATADIR='"/usr/local/share/ghc-6.7.20070801"' package.conf.in | \ grep -v '^#pragma GCC' | \ sed -e 's/""//g' -e 's/:[ ]*,/: /g' >package.conf.inplace ../utils/ghc-pkg/ghc-pkg-inplace update - --force-files AutoApply_debug.cmm ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c AutoApply_debug.cmm -o AutoApply_debug.debug_o Prologue junk?: .globl stg_ap_p_ret .type stg_ap_p_ret, @function stg_ap_p_ret: pushl %ebp movl %esp, %ebp make[3]: *** [AutoApply_debug.debug_o] Error 255 make[2]: *** [all] Error 1 make[1]: *** [stage1] Error 1 make[1]: Leaving directory `/local/holzensp/buildbot/ghc/phil-ewi/build' -------------- next part -------------- Last 30 lines: ../../compiler/stage1/ghc-inplace -package-name unix-2.0 -hide-all-packages -i -idist/build/autogen -idist/build -i. -Idist/build -Iinclude -#include "HsUnix.h" -odir dist/build -hidir dist/build -package base-2.1 -package directory-1.0 -package process-1.0 -O -cpp -idist/build -H16m -O -O -fgenerics -fvia-C -c dist/build/System/Posix/IO.hs -o dist/build/System/Posix/IO.o -ohi dist/build/System/Posix/IO.hi ../../compiler/stage1/ghc-inplace -package-name unix-2.0 -hide-all-packages -i -idist/build/autogen -idist/build -i. -Idist/build -Iinclude -#include "HsUnix.h" -odir dist/build -hidir dist/build -package base-2.1 -package directory-1.0 -package process-1.0 -O -cpp -idist/build -H16m -O -O -fgenerics -fvia-C -c dist/build/System/Posix/Temp.hs -o dist/build/System/Posix/Temp.o -ohi dist/build/System/Posix/Temp.hi ../../compiler/stage1/ghc-inplace -package-name unix-2.0 -hide-all-packages -i -idist/build/autogen -idist/build -i. -Idist/build -Iinclude -#include "HsUnix.h" -odir dist/build -hidir dist/build -package base-2.1 -package directory-1.0 -package process-1.0 -O -cpp -idist/build -H16m -O -O -fgenerics -fvia-C -c dist/build/System/Posix/Env.hs -o dist/build/System/Posix/Env.o -ohi dist/build/System/Posix/Env.hi ../../compiler/stage1/ghc-inplace -package-name unix-2.0 -hide-all-packages -i -idist/build/autogen -idist/build -i. -Idist/build -Iinclude -#include "HsUnix.h" -odir dist/build -hidir dist/build -package base-2.1 -package directory-1.0 -package process-1.0 -O -cpp -idist/build -H16m -O -O -fgenerics -fvia-C -c dist/build/System/Posix/Process.hs -o dist/build/System/Posix/Process.o -ohi dist/build/System/Posix/Process.hi ../../compiler/stage1/ghc-inplace -package-name unix-2.0 -hide-all-packages -i -idist/build/autogen -idist/build -i. -Idist/build -Iinclude -#include "HsUnix.h" -odir dist/build -hidir dist/build -package base-2.1 -package directory-1.0 -package process-1.0 -O -cpp -idist/build -H16m -O -O -fgenerics -fvia-C -c dist/build/System/Posix/Unistd.hs -o dist/build/System/Posix/Unistd.o -ohi dist/build/System/Posix/Unistd.hi ../../compiler/stage1/ghc-inplace -package-name unix-2.0 -hide-all-packages -i -idist/build/autogen -idist/build -i. -Idist/build -Iinclude -#include "HsUnix.h" -odir dist/build -hidir dist/build -package base-2.1 -package directory-1.0 -package process-1.0 -O -cpp -idist/build -H16m -O -O -fgenerics -fvia-C -c dist/build/System/Posix/Files.hs -o dist/build/System/Posix/Files.o -ohi dist/build/System/Posix/Files.hi ../../compiler/stage1/ghc-inplace -package-name unix-2.0 -hide-all-packages -i -idist/build/autogen -idist/build -i. -Idist/build -Iinclude -#include "HsUnix.h" -odir dist/build -hidir dist/build -package base-2.1 -package directory-1.0 -package process-1.0 -O -cpp -idist/build -H16m -O -O -fgenerics -fvia-C -c dist/build/System/Posix/Directory.hs -o dist/build/System/Posix/Directory.o -ohi dist/build/System/Posix/Directory.hi ../../compiler/stage1/ghc-inplace -package-name unix-2.0 -hide-all-packages -i -idist/build/autogen -idist/build -i. -Idist/build -Iinclude -#include "HsUnix.h" -odir dist/build -hidir dist/build -package base-2.1 -package directory-1.0 -package process-1.0 -O -cpp -idist/build -H16m -O -O -fgenerics -fvia-C -c System/Posix.hs -o dist/build/System/Posix.o -ohi dist/build/System/Posix.hi ../../compiler/stage1/ghc-inplace -package-name unix-2.0 -hide-all-packages -i -idist/build/autogen -idist/build -i. -Idist/build -Iinclude -#include "HsUnix.h" -odir dist/build -hidir dist/build -package base-2.1 -package directory-1.0 -package process-1.0 -O -cpp -idist/build -H16m -O -O -fgenerics -fvia-C -c dist/build/System/Posix/DynamicLinker/Prim.hs -o dist/build/System/Posix/DynamicLinker/Prim.o -ohi dist/build/System/Posix/DynamicLinker/Prim.hi ../../compiler/stage1/ghc-inplace -package-name unix-2.0 -hide-all-packages -i -idist/build/autogen -idist/build -i. -Idist/build -Iinclude -#include "HsUnix.h" -odir dist/build -hidir dist/build -package base-2.1 -package directory-1.0 -package process-1.0 -O -cpp -idist/build -H16m -O -O -fgenerics -fvia-C -c dist/build/System/Posix/DynamicLinker.hs -o dist/build/System/Posix/DynamicLinker.o -ohi dist/build/System/Posix/DynamicLinker.hi ../../compiler/stage1/ghc-inplace -package-name unix-2.0 -hide-all-packages -i -idist/build/autogen -idist/build -i. -Idist/build -Iinclude -#include "HsUnix.h" -odir dist/build -hidir dist/build -package base-2.1 -package directory-1.0 -package process-1.0 -O -cpp -idist/build -H16m -O -O -fgenerics -fvia-C -c dist/build/System/Posix/DynamicLinker/Module.hs -o dist/build/System/Posix/DynamicLinker/Module.o -ohi dist/build/System/Posix/DynamicLinker/Module.hi ../../compiler/stage1/ghc-inplace -package-name unix-2.0 -hide-all-packages -i -idist/build/autogen -idist/build -i. -Idist/build -Iinclude -#include "HsUnix.h" -odir dist/build -hidir dist/build -package base-2.1 -package directory-1.0 -package process-1.0 -O -cpp -idist/build -H16m -O -O -fgenerics -fvia-C -c dist/build/System/Posix/Signals/Exts.hs -o dist/build/System/Posix/Signals/Exts.o -ohi dist/build/System/Posix/Signals/Exts.hi ../../compiler/stage1/ghc-inplace -Iinclude -package base-2.1 -package directory-1.0 -package process-1.0 -odir dist/build -c cbits/HsUnix.c -o dist/build/cbits/HsUnix.o echo dist/build/cbits/HsUnix.o dist/build/System/Posix.o dist/build/System/Posix/DynamicLinker/Module.o dist/build/System/Posix/DynamicLinker/Prim.o dist/build/System/Posix/Directory.o dist/build/System/Posix/DynamicLinker.o dist/build/System/Posix/Env.o dist/build/System/Posix/Error.o dist/build/System/Posix/Files.o dist/build/System/Posix/IO.o dist/build/System/Posix/Process.o dist/build/System/Posix/Resource.o dist/build/System/Posix/Temp.o dist/build/System/Posix/Terminal.o dist/build/System/Posix/Time.o dist/build/System/Posix/Unistd.o dist/build/System/Posix/User.o dist/build/System/Posix/Signals/Exts.o dist/build/System/Posix/Semaphore.o dist/build/System/Posix/SharedMem.o `find dist/build -name "*_stub.o" -print` | xargs -s 30000 /usr/bin/ar q dist/build/libHSunix-2.0.a ar: creating archive dist/build/libHSunix-2.0.a ld -r -x -o dist/build/HSunix-2.0.o dist/build/System/Posix.o dist/build/System/Posix/DynamicLinker/Module.o dist/build/System/Posix/DynamicLinker/Prim.o dist/build/System/Posix/Directory.o dist/build/System/Posix/DynamicLinker.o dist/build/System/Posix/Env.o dist/build/System/Posix/Error.o dist/build/System/Posix/Files.o dist/build/System/Posix/IO.o dist/build/System/Posix/Process.o dist/build/System/Posix/Resource.o dist/build/System/Posix/Temp.o dist/build/System/Posix/Terminal.o dist/build/System/Posix/Time.o dist/build/System/Posix/Unistd.o dist/build/System/Posix/User.o dist/build/System/Posix/Signals/Exts.o dist/build/System/Posix/Semaphore.o dist/build/System/Posix/SharedMem.o `find dist/build -name "*_stub.o" -print` dist/build/cbits/HsUnix.o Reading parameters from /Users/thorkilnaur/tn/buildbot/ghc/tnaur-ppc-osx/tnaur-ppc-osx-head/build/libraries/unix/unix.buildinfo Registering unix-2.0... Reading package info from "dist/inplace-pkg-config" ... done. Saving old package config file... done. Writing new package config file... done. if ifBuildable/ifBuildable base; then \ cd base && setup/Setup haddock; \ fi Preprocessing library base-2.1... Running Haddock for base-2.1... dist/build/tmp/./System/IO.hs:"././System/IO.hs": 101:5: parse error in doc string: [haddock: reading EOF! make[1]: *** [doc.library.base] Error 1 make: *** [stage1] Error 2 -------------- next part -------------- Last 30 lines: ../compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-I../includes -optc-I. -optc-Iparallel -optc-Ism -optc-DCOMPILING_RTS -optc-g -optc-O0 -optc-I../gmp/gmpbuild -optc-fno-strict-aliasing -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c posix/Signals.c -o posix/Signals.debug_o ../compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-I../includes -optc-I. -optc-Iparallel -optc-Ism -optc-DCOMPILING_RTS -optc-g -optc-O0 -optc-I../gmp/gmpbuild -optc-fno-strict-aliasing -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c sm/BlockAlloc.c -o sm/BlockAlloc.debug_o ../compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-I../includes -optc-I. -optc-Iparallel -optc-Ism -optc-DCOMPILING_RTS -optc-g -optc-O0 -optc-I../gmp/gmpbuild -optc-fno-strict-aliasing -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -optc-finline-limit=2500 -c sm/Compact.c -o sm/Compact.debug_o ../compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-I../includes -optc-I. -optc-Iparallel -optc-Ism -optc-DCOMPILING_RTS -optc-g -optc-O0 -optc-I../gmp/gmpbuild -optc-fno-strict-aliasing -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -optc-funroll-loops -c sm/Evac.c -o sm/Evac.debug_o ../compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-I../includes -optc-I. -optc-Iparallel -optc-Ism -optc-DCOMPILING_RTS -optc-g -optc-O0 -optc-I../gmp/gmpbuild -optc-fno-strict-aliasing -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c sm/GC.c -o sm/GC.debug_o ../compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-I../includes -optc-I. -optc-Iparallel -optc-Ism -optc-DCOMPILING_RTS -optc-g -optc-O0 -optc-I../gmp/gmpbuild -optc-fno-strict-aliasing -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c sm/GCUtils.c -o sm/GCUtils.debug_o ../compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-I../includes -optc-I. -optc-Iparallel -optc-Ism -optc-DCOMPILING_RTS -optc-g -optc-O0 -optc-I../gmp/gmpbuild -optc-fno-strict-aliasing -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c sm/MBlock.c -o sm/MBlock.debug_o ../compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-I../includes -optc-I. -optc-Iparallel -optc-Ism -optc-DCOMPILING_RTS -optc-g -optc-O0 -optc-I../gmp/gmpbuild -optc-fno-strict-aliasing -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c sm/MarkWeak.c -o sm/MarkWeak.debug_o ../compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-I../includes -optc-I. -optc-Iparallel -optc-Ism -optc-DCOMPILING_RTS -optc-g -optc-O0 -optc-I../gmp/gmpbuild -optc-fno-strict-aliasing -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c sm/Scav.c -o sm/Scav.debug_o ../compiler/ghc-inplace -optc-O -optc-Wall -optc-W -optc-Wstrict-prototypes -optc-Wmissing-prototypes -optc-Wmissing-declarations -optc-Winline -optc-Waggregate-return -optc-I../includes -optc-I. -optc-Iparallel -optc-Ism -optc-DCOMPILING_RTS -optc-g -optc-O0 -optc-I../gmp/gmpbuild -optc-fno-strict-aliasing -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c sm/Storage.c -o sm/Storage.debug_o ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c Apply.cmm -o Apply.debug_o ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c Exception.cmm -o Exception.debug_o ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c HeapStackCheck.cmm -o HeapStackCheck.debug_o ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -#include posix/Itimer.h -c PrimOps.cmm -o PrimOps.debug_o ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c StgMiscClosures.cmm -o StgMiscClosures.debug_o ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c StgStartup.cmm -o StgStartup.debug_o ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c StgStdThunks.cmm -o StgStdThunks.debug_o ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c Updates.cmm -o Updates.debug_o ../utils/genapply/genapply >AutoApply_debug.cmm ../compiler/ghc-inplace -H16m -O -static -I../gmp/gmpbuild -I. -#include HCIncludes.h -fvia-C -dcmm-lint -hisuf debug_hi -hcsuf debug_hc -osuf debug_o -optc-DDEBUG -c AutoApply_debug.cmm -o AutoApply_debug.debug_o Prologue junk?: .globl stg_ap_p_ret .type stg_ap_p_ret, @function stg_ap_p_ret: pushl %ebp movl %esp, %ebp make[2]: *** [AutoApply_debug.debug_o] Error 255 make[1]: *** [all] Error 1 make: *** [stage1] Error 1 From simonmarhaskell at gmail.com Thu Aug 2 04:08:31 2007 From: simonmarhaskell at gmail.com (Simon Marlow) Date: Thu Aug 2 04:00:52 2007 Subject: HEAD doesn't build (was Re: patch applied (ghc): Add hardwire-lib-paths option and make it default for inplace invocations) In-Reply-To: <46B0FEA8.7050408@cse.unsw.edu.au> References: <20070731102844.GA21382@cvs.haskell.org> <46AFF3CC.2060600@cse.unsw.edu.au> <46B04269.1010909@gmail.com> <46B04D74.1030708@cse.unsw.edu.au> <46B06238.8070903@gmail.com> <46B06F8E.5080504@cse.unsw.edu.au> <46B07C7C.5050508@gmail.com> <46B089AF.9000101@cse.unsw.edu.au> <46B08C54.6030201@gmail.com> <46B0FEA8.7050408@cse.unsw.edu.au> Message-ID: <46B190FF.2080209@gmail.com> Roman Leshchinskiy wrote: > Simon Marlow wrote: >> It sounds like the only way to get the effect of -rpath is to create a >> wrapper script that sets DYLD_LIBRARY_PATH, then. Presumably this is >> what libtool does. > > I'm still not sure which effect precisely you're after. -rpath helps > with finding shared libraries but it doesn't (portably) guarantee that > you'll find the right ones. Consider the following (IMO not entirely > unreasonable) scenario: > > - ghc-9.9 is installed in /somewhere, with libghc-9.9 living in > /somewhere/lib > - LD_LIBRARY_PATH is set to /somewhere/lib We don't expect people to have to set LD_LIBRARY_PATH in order to use GHC. A standard GHC installation will install its shared libraries in the appropriate place for the system. The intention is that GHC behaves like a proper citizen on its host platform, we'll do whatever the local convention is. > - I download and build my own ghc-9.9 in ~/build > - I compile myapp with ~/build/compiler/ghc-inplace which sets > -rpath ~/build/lib (where the new libghc-9.9 lives) > > Now, when I run myapp on Linux, everything will be fine because here, > rpath takes precedence over LD_LIBRARY_PATH. However, on Solaris and, > apparently, on FreeBSD myapp will pick up the wrong libghc, namely the > one in /somewhere/lib because on these systems, LD_LIBRARY_PATH is > searched first (unless I'm completely mistaken). > >> This is a bit of a pain. We can't support -hardwire-lib-paths on >> MacOS, and we'll need some jiggery-pokery in the build system to get >> the same effect - perhaps ghc-inplace sets DYLD_LIBRARY_PATH before >> invoking the ghc binary. > > IMO it should do that on all systems. But this still doesn't help with > programs that are compiled with ghc-inplace as it is rather easy for > them to pick up the wrong libraries. Perhaps this can be mitigated > somewhat by having ghc-inplace link against libghc-inplace. This would > avoid a conflict with a libghc installed in LD_LIBRARY_PATH. > Indeed, this would also help with MacOS since the inplace library can > have a different install_name than the one which ultimately gets installed. Clemens believes there's a way to get the effect of -rpath on MacOS, so we'll see. Then there would be no reason for people to use LD_LIBRARY_PATH to point to GHC libraries. So I wasn't aware that LD_LIBRARY_PATH takes precedence over rpath on some platforms, that does present a slight problem, but maybe it's not a killer. I don't expect that most people will be using LD_LIBRARY_PATH, and the build system could always check for it. Perhaps we should have more safety nets - a runtime check for the right libraries, for example. If you have a better proposal, please tell us! Cheers, Simon From stefanor at cox.net Thu Aug 2 04:14:22 2007 From: stefanor at cox.net (Stefan O'Rear) Date: Thu Aug 2 04:06:46 2007 Subject: HEAD doesn't build (was Re: patch applied (ghc): Add hardwire-lib-paths option and make it default for inplace invocations) In-Reply-To: <46B190FF.2080209@gmail.com> References: <46AFF3CC.2060600@cse.unsw.edu.au> <46B04269.1010909@gmail.com> <46B04D74.1030708@cse.unsw.edu.au> <46B06238.8070903@gmail.com> <46B06F8E.5080504@cse.unsw.edu.au> <46B07C7C.5050508@gmail.com> <46B089AF.9000101@cse.unsw.edu.au> <46B08C54.6030201@gmail.com> <46B0FEA8.7050408@cse.unsw.edu.au> <46B190FF.2080209@gmail.com> Message-ID: <20070802081422.GA6619@localhost.localdomain> On Thu, Aug 02, 2007 at 09:08:31AM +0100, Simon Marlow wrote: > So I wasn't aware that LD_LIBRARY_PATH takes precedence over rpath on some > platforms, that does present a slight problem, but maybe it's not a killer. > I don't expect that most people will be using LD_LIBRARY_PATH, and the > build system could always check for it. Perhaps we should have more safety > nets - a runtime check for the right libraries, for example. > > If you have a better proposal, please tell us! If you're building stuff with an in-place GHC, you're probably developing GHC. If you're developing GHC, you're probably rebuilding GHC frequently. If you're rebuilding GHC frequently, the symbols in your libraries are probably changing frequently. If the symbols in the libraries are changing meanings frequently, using shared libraries is probably a Bad Idea. If all those probablies are still probably when multiplied (and I suspect this is the case), then the best thing to do - even if you ignore implementation complexity! - is to disable shared library usage in the ghc-inplaces. As a nice side effect, this means that we don't have to worry about RPATH-foo at all under any circumstance. Stefan -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature Url : http://www.haskell.org/pipermail/cvs-ghc/attachments/20070802/793751e0/attachment.bin From rl at cse.unsw.edu.au Thu Aug 2 04:52:13 2007 From: rl at cse.unsw.edu.au (Roman Leshchinskiy) Date: Thu Aug 2 04:44:18 2007 Subject: HEAD doesn't build (was Re: patch applied (ghc): Add hardwire-lib-paths option and make it default for inplace invocations) In-Reply-To: <46B190FF.2080209@gmail.com> References: <20070731102844.GA21382@cvs.haskell.org> <46AFF3CC.2060600@cse.unsw.edu.au> <46B04269.1010909@gmail.com> <46B04D74.1030708@cse.unsw.edu.au> <46B06238.8070903@gmail.com> <46B06F8E.5080504@cse.unsw.edu.au> <46B07C7C.5050508@gmail.com> <46B089AF.9000101@cse.unsw.edu.au> <46B08C54.6030201@gmail.com> <46B0FEA8.7050408@cse.unsw.edu.au> <46B190FF.2080209@gmail.com> Message-ID: <46B19B3D.6090300@cse.unsw.edu.au> Simon Marlow wrote: > Roman Leshchinskiy wrote: >> >> I'm still not sure which effect precisely you're after. -rpath helps >> with finding shared libraries but it doesn't (portably) gua