[MacPorts] #21476: jbigkit 2.0 Doesn't build universal
MacPorts
noreply at macports.org
Fri Sep 18 08:47:11 PDT 2009
#21476: jbigkit 2.0 Doesn't build universal
---------------------------------------+------------------------------------
Reporter: eborisch@… | Owner: macports-tickets@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 1.8.0
Keywords: jbigkit universal leopard | Port: jbigkit
---------------------------------------+------------------------------------
Here's the build output on a system where it should be building i386 and
x86_64:
(run on 10.5.8 build host)
{{{
MacPro:~$ sudo port -v build jbigkit +universal
---> Computing dependencies for jbigkit.
---> Fetching jbigkit
---> Verifying checksum(s) for jbigkit
---> Checksumming jbigkit-2.0.tar.gz
---> Extracting jbigkit
---> Extracting jbigkit-2.0.tar.gz
---> Applying patches to jbigkit
---> Applying
/opt/local/var/macports/sources/rsync.macports.org/release/ports/graphics/jbigkit/files
/patch-Makefile
patching file Makefile
---> Applying
/opt/local/var/macports/sources/rsync.macports.org/release/ports/graphics/jbigkit/files
/patch-libjbig_Makefile_darwin
patching file libjbig/Makefile
---> Configuring jbigkit
---> Building jbigkit
(cd libjbig; make "CC=/usr/bin/gcc-4.0" "CFLAGS=-W -O2 -I../libjbig")
make[1]: warning: jobserver unavailable: using -j1. Add `+' to parent
make rule.
/usr/bin/gcc-4.0 -W -O2 -I../libjbig -c -o jbig.o jbig.c
/usr/bin/gcc-4.0 -W -O2 -I../libjbig -c -o jbig_ar.o jbig_ar.c
rm -f libjbig.a
ar rc libjbig.a jbig.o jbig_ar.o
ranlib libjbig.a
rm -f libjbig.2.0.dylib
/usr/bin/gcc-4.0 -dynamiclib -install_name /opt/local/lib/libjbig.2.dylib
-o libjbig.2.0.dylib jbig.o jbig_ar.o
/usr/bin/gcc-4.0 -W -O2 -I../libjbig -c -o tstcodec.o tstcodec.c
/usr/bin/gcc-4.0 -W -O2 -I../libjbig -o tstcodec tstcodec.o jbig.o
jbig_ar.o
/usr/bin/gcc-4.0 -W -O2 -I../libjbig -c -o tstcodec85.o tstcodec85.c
/usr/bin/gcc-4.0 -W -O2 -I../libjbig -c -o jbig85.o jbig85.c
/usr/bin/gcc-4.0 -W -O2 -I../libjbig -o tstcodec85 tstcodec85.o jbig85.o
jbig_ar.o
(cd pbmtools; make "CC=/usr/bin/gcc-4.0" "CFLAGS=-W -O2 -I../libjbig")
make[1]: warning: jobserver unavailable: using -j1. Add `+' to parent
make rule.
/usr/bin/gcc-4.0 -W -O2 -I../libjbig -c -o pbmtojbg.o pbmtojbg.c
/usr/bin/gcc-4.0 -W -O2 -I../libjbig -o pbmtojbg pbmtojbg.o -L../libjbig
-ljbig
/usr/bin/gcc-4.0 -W -O2 -I../libjbig -c -o jbgtopbm.o jbgtopbm.c
/usr/bin/gcc-4.0 -W -O2 -I../libjbig -o jbgtopbm jbgtopbm.o -L../libjbig
-ljbig
/usr/bin/gcc-4.0 -W -O2 -I../libjbig -c -o pbmtojbg85.o pbmtojbg85.c
make -C ../libjbig libjbig85.a
rm -f libjbig85.a
ar rc libjbig85.a jbig85.o jbig_ar.o
ranlib libjbig85.a
/usr/bin/gcc-4.0 -W -O2 -I../libjbig -o pbmtojbg85 pbmtojbg85.o
-L../libjbig -ljbig85
/usr/bin/gcc-4.0 -W -O2 -I../libjbig -c -o jbgtopbm85.o jbgtopbm85.c
/usr/bin/gcc-4.0 -W -O2 -I../libjbig -o jbgtopbm85 jbgtopbm85.o
-L../libjbig -ljbig85
Enter 'make test' in order to start some automatic tests.
}}}
Note the lack of ''-arch i386 -arch x86_64'' throughout.
And inspecting the output file:
{{{
MacPro:~$ file /<snip>/work/jbigkit/libjbig/libjbig.2.0.dylib
/<snip>/work/jbigkit/libjbig/libjbig.2.0.dylib: Mach-O dynamically linked
shared library i386
}}}
I would suggest that these lines need updating in the makefile: (there
used to be a foreach ${arch} loop in the portfile... which r51908 removed)
{{{
configure {
reinplace "s|__CC__|${configure.cc}|" ${worksrcpath}/Makefile
reinplace "s|__CFLAGS__|${configure.cflags}|" ${worksrcpath}/Makefile
}
}}}
And this line section in patch-libjbig_Makefile_darwin probably also needs
a set of -arch ... flags, as well :
{{{
libjbig.__MACPORTS_VERSION__.dylib: jbig.o jbig_ar.o
rm -f $@
$(CC) -dynamiclib -install_name
__MACPORTS_PREFIX__/lib/libjbig.__MACPORTS_INSTALL_VERSION__.dylib -o $@
$^
}}}
--
Ticket URL: <http://trac.macports.org/ticket/21476>
MacPorts <http://www.macports.org/>
Ports system for Mac OS
More information about the macports-tickets
mailing list