[m-dev.] Upgrading Boehm GC, attempt #2

Julien Fischer jfischer at opturion.com
Sun Nov 16 15:02:23 AEDT 2014



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".)

Cheers,
Julien.



More information about the developers mailing list