[m-dev.] Upgrading Boehm GC, attempt #2
Paul Bone
paul at bone.id.au
Sun Nov 16 15:06:08 AEDT 2014
On Sun, Nov 16, 2014 at 03:02:23PM +1100, Julien Fischer wrote:
> On Sun, 16 Nov 2014, Julien Fischer wrote:
>> On Sat, 15 Nov 2014, Paul Bone wrote:
>>
>>> I've made another attempt at upgrading Boehm GC. This time using the
>>> submodule method. This way the history of boehm GC doesn't need to be
>>> imported into Mercury (and confuse "git log" and other commands). The
>>> downside is that once you checkout the repository you have to run
>>> ./prepare.sh which will pull in the boehm_gc and libatomic_ops
>>> repositories.
>>>
>>> Here's the repository and branch where I've set this up if anyone
>>> would like
>>> to help me test it.
>>>
>>> https://github.com/PaulBone/mercury/tree/upgrade_boehm
>>
>> I will test it on various platforms this week while your eyes are being
>> fixed.
>
> One immediate issue I noticed is:
>
> ...
>
> cp Makefile.direct Makefile
> MAKEFLAGS=""; export MAKEFLAGS; \
> PATH=../util:$PATH gmake -j1 \
> GRADE=hlc.gc GC_GRADE=gc \
> AR=ar RANLIB=ranlib \
> libgc.a libgc.dylib \
>
> FINAL_INSTALL_MERC_GC_LIB_DIR=/Users/jfischer/Mercury-Staging/mercury-boehm-darwin64-clang/lib/mercury/lib
> \
> dylib
> gmake[2]: Entering directory
> '/Users/jfischer/Mercury-Workspaces/mercury.local-pbone-gc/boehm_gc'
> CC="/Users/jfischer/Mercury-Workspaces/mercury.local-pbone-gc/boehm_gc/../scripts/mgnuc
> --grade hlc.gc --no-ansi --no-check --no-mercury-stdlib-dir" AR="ar"
> RANLIB="ranlib" MAKE=gmake DESTDIR= \
> ./build_atomic_ops.sh --host=x86_64-apple-darwin13.4.0
> ./autogen.sh: line 7: libtoolize: command not found
> ./build_atomic_ops.sh: line 8: ./configure: No such file or directory
> gmake[3]: Entering directory
> '/Users/jfischer/Mercury-Workspaces/mercury.local-pbone-gc/libatomic_ops'
> gmake[3]: *** No rule to make target 'install'. Stop.
> gmake[3]: Leaving directory
> '/Users/jfischer/Mercury-Workspaces/mercury.local-pbone-gc/libatomic_ops'
> Makefile:241: recipe for target 'libatomic_ops-install' failed
> gmake[2]: *** [libatomic_ops-install] Error 2
> gmake[2]: Leaving directory
> '/Users/jfischer/Mercury-Workspaces/mercury.local-pbone-gc/boehm_gc'
> /var/folders/pd/5lypc6_j3vnf65q9x5y9s3p40000gn/T//mmake.U1sgoq:864:
> recipe for target 'submake' failed
> gmake[1]: *** [submake] Error 2
> gmake[1]: Leaving directory
> '/Users/jfischer/Mercury-Workspaces/mercury.local-pbone-gc/boehm_gc'
> /var/folders/pd/5lypc6_j3vnf65q9x5y9s3p40000gn/T//mmake.NuSWB9:1032:
> recipe for target 'boehm_gc' failed
> gmake: *** [boehm_gc] Error 2
>
> We how have a dependency on libtoolize program in both the boehm_gc and
> libatomic_ops directories. (OS X users should note that libtoolize is
> *not* provided as part of Apple's developer tools and that if you
> install the MacPorts libtools package the executables are actually named
> "glibtools" and "glibtoolize".)
>
I found that without this generating the autoconf files and scripts in these
directories properly didn't work. We all know that autotools is a PITA so
there's probably some magic incantation to fix this that I just havn't tried
yet. I'll probably have to try to fix this another day.
--
Paul Bone
More information about the developers
mailing list