Ticket #675 (closed bug: fixed)
r38804 breaks on darwin/OSX
Reported by: | Infinoid | Owned by: | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | none | Version: | 1.1.0 |
Severity: | medium | Keywords: | |
Cc: | jkeenan | Language: | |
Patch status: | Platform: | darwin |
Description (last modified by Infinoid) (diff)
r38804 caused build failures on darwin and OSX. Parrot itself builds fine, but the build process fails later on when compiling pbc_to_exe:
./parrot -o pbc_to_exe.pbc tools/dev/pbc_to_exe.pir ./parrot pbc_to_exe.pbc pbc_to_exe.pbc /usr/bin/gcc -o pbc_to_exe.o -I/Users/jimk/work/parrot/include -c pbc_to_exe.c In file included from pbc_to_exe.c:1: /Users/jimk/work/parrot/include/parrot/parrot.h:239:23: error: libintl.h: No such file or directory compilation failed current instr.: 'compile_file' pc 525 (tools/dev/pbc_to_exe.pir:266)
The Makefile CFLAGS contain some include paths which are necessary for finding libintl.h on Darwin. However, pbc_to_exe.c isn't compiled by the Makefile, it's compiled by tools/dev/pbc_to_exe.pir. r38804 removes the "ccflags" variable from config_lib.pasm, so the cflags are no longer available and builds fail.
r38830 reverts r38804 until a better solution can be found. This ticket tracks that; should we whitelist certain entries?
masak++ and kid51++ have been very helpful in bisecting this issue, and providing detailed information on the config differences caused by r38804.
I'm attaching one of their diffs of what the missing config_lib.pasm items look like. Of those, I think "archname", "ccflags", "longsize" and "optimize" are probably worth keeping. Stay tuned.