Opened 15 years ago
Closed 15 years ago
#24191 closed defect (fixed)
Coin: Coin.pc and coin-default.cfg contain -arch flags
Reported by: | ryandesign (Ryan Carsten Schmidt) | Owned by: | cssdev |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.8.2 |
Keywords: | Cc: | ||
Port: | Coin |
Description
$ port installed Coin The following ports are currently installed: Coin @3.1.2_0+darwin+universal (active) $ port contents Coin | sed 1d | xargs grep -- -arch /opt/local/lib/pkgconfig/Coin.pc:Libs: -L${libdir} -L${exec_prefix}/lib -arch x86_64 -arch i386 -L/usr/X11R6/lib -lCoin -lGL -lXext -lSM -lICE -lX11 -lpthread /opt/local/lib/pkgconfig/Coin.pc:Cflags: -I${includedir} -O2 -arch x86_64 -arch i386 -I${prefix}/include -I${prefix}/include/Inventor/annex -D_REENTRANT -I/usr/X11R6/include /opt/local/share/Coin/conf/coin-default.cfg:cflags="-O2 -arch x86_64 -arch i386" /opt/local/share/Coin/conf/coin-default.cfg:cxxflags="-O2 -arch x86_64 -arch i386" /opt/local/share/Coin/conf/coin-default.cfg:ldflags="-L${exec_prefix}/lib -arch x86_64 -arch i386 -L/usr/X11R6/lib"
These files should not contain -arch flags because it will cause other software trying to use Coin to build with those archs, even if different archs were requested when building that other software. For example, if I install Coin universal, then try to install Quarter non-universal, Quarter still tries to build universal because it picks up the arch flags from Coin's pkgconfig file:
$ sudo port install Quarter ---> Computing dependencies for Quarter ---> Fetching Quarter ---> Verifying checksum(s) for Quarter ---> Extracting Quarter ---> Configuring Quarter ---> Building Quarter Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_Users_rschmidt_macports_dports_graphics_Quarter/work/Quarter-1.0.0" && /usr/bin/nice -n 10 /usr/bin/make -j1 all " returned error 2 Command output: Making all in eventhandlers make[4]: Nothing to be done for `all'. make[4]: Nothing to be done for `all-am'. Making all in boost make[3]: Nothing to be done for `all'. make[3]: Nothing to be done for `all-am'. Making all in src Making all in Quarter /opt/local/libexec/qt4-mac//bin/moc -o moc_QuarterWidget.cpp `echo ../../include/Quarter/QuarterWidget.h` /opt/local/libexec/qt4-mac//bin/moc -o moc_SensorManager.cpp `echo ./SensorManager.h` /opt/local/libexec/qt4-mac//bin/moc -o moc_ContextMenu.cpp `echo ./ContextMenu.h` /opt/local/libexec/qt4-mac//bin/moc -o moc_SignalThread.cpp `echo ./SignalThread.h` /opt/local/libexec/qt4-mac//bin/moc -o moc_EventFilter.cpp `echo ../../include/Quarter/eventhandlers/EventFilter.h` /opt/local/libexec/qt4-mac//bin/moc -o moc_DragDropHandler.cpp `echo ../../include/Quarter/eventhandlers/DragDropHandler.h` /opt/local/libexec/qt4-mac//bin/moc -o moc_InteractionMode.cpp `echo ./InteractionMode.h` /opt/local/libexec/qt4-mac//bin/moc -o moc_FocusHandler.cpp `echo ../../include/Quarter/eventhandlers/FocusHandler.h` /usr/bin/make all-am if /bin/sh ../../libtool --mode=compile /usr/bin/g++-4.2 -DHAVE_CONFIG_H -I../../include -I../../src/Quarter -DQUARTER_INTERNAL -I/opt/local/include -I/opt/local/include/Inventor/annex -D_REENTRANT -I/usr/X11R6/include -I/opt/local/libexec/qt4-mac//lib/QtCore.framework/Headers -I/opt/local/libexec/qt4-mac//lib/QtOpenGL.framework/Headers -I/opt/local/libexec/qt4-mac//lib/QtGui.framework/Headers -F/opt/local/libexec/qt4-mac//lib -I/opt/local/include -I/opt/local/libexec/qt4-mac/include -DQUARTER_DEBUG=1 -O2 -arch x86_64 -arch i386 -O2 -arch x86_64 -MT libQuarter_la-Quarter.lo -MD -MP -MF ".deps/libQuarter_la-Quarter.Tpo" \ -c -o libQuarter_la-Quarter.lo `test -f 'Quarter.cpp' || echo './'`Quarter.cpp; \ then mv -f ".deps/libQuarter_la-Quarter.Tpo" ".deps/libQuarter_la-Quarter.Plo"; \ else rm -f ".deps/libQuarter_la-Quarter.Tpo"; exit 1; \ fi mkdir .libs /usr/bin/g++-4.2 -DHAVE_CONFIG_H -I../../include -I../../src/Quarter -DQUARTER_INTERNAL -I/opt/local/include -I/opt/local/include/Inventor/annex -D_REENTRANT -I/usr/X11R6/include -I/opt/local/libexec/qt4-mac//lib/QtCore.framework/Headers -I/opt/local/libexec/qt4-mac//lib/QtOpenGL.framework/Headers -I/opt/local/libexec/qt4-mac//lib/QtGui.framework/Headers -F/opt/local/libexec/qt4-mac//lib -I/opt/local/include -I/opt/local/libexec/qt4-mac/include -DQUARTER_DEBUG=1 -O2 -arch x86_64 -arch i386 -O2 -arch x86_64 -MT libQuarter_la-Quarter.lo -MD -MP -MF .deps/libQuarter_la-Quarter.Tpo -c Quarter.cpp -fno-common -DPIC -o .libs/libQuarter_la-Quarter.o g++-4.2: -E, -S, -save-temps and -M options are not allowed with multiple -arch flags make[4]: *** [libQuarter_la-Quarter.lo] Error 1 make[3]: *** [all] Error 2 make[2]: *** [all-recursive] Error 1 make[1]: *** [all-recursive] Error 1 make: *** [all] Error 2
Attachments (1)
Change History (4)
Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)
Attachment: | Coin-archflags.diff added |
---|
comment:1 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)
This patch ought to do it. If you don't combine this with a version update you should also increase the revision.
comment:2 Changed 15 years ago by cssdev
Status: | new → assigned |
---|
comment:3 Changed 15 years ago by cssdev
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Fixed in r65707. Thanks for the patch!
Note: See
TracTickets for help on using
tickets.
proposed patch