Opened 15 years ago
Closed 15 years ago
#20215 closed defect (fixed)
Universal build of fontconfig broken
Reported by: | dbsgeo@… | Owned by: | ryandesign (Ryan Carsten Schmidt) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.7.1 |
Keywords: | libfontconfig, universal | Cc: | MarcusCalhoun-Lopez (Marcus Calhoun-Lopez), lvcargnini@… |
Port: | fontconfig |
Description
With the latest Macports (1.7.1) on a fresh install, when trying to get a universal build of cairo/cairomm the build fails on fontconfig.
First it failed due to odd inability to install in some deep /Applications folder then (after doing a clean and re-install) due to the inability to create the right arch libraries.
First:
$ sudo port -d install cairomm +universal [...snip..] Making install in test make[2]: Nothing to be done for `install-exec-am'. make[2]: Nothing to be done for `install-data-am'. make[2]: Nothing to be done for `install-exec-am'. test -z "/opt/local/etc/fonts" || /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/fontconfig-2.6.0-i386/install-sh -d "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386/opt/local/etc/fonts" /usr/bin/install -c -m 644 'fonts.dtd' '/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386/opt/local/etc/fonts/fonts.dtd' /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/fontconfig-2.6.0-i386/install-sh -d /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386/opt/local/etc/fonts /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386/opt/local/var/cache/fontconfig if [ -f /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386/opt/local/etc/fonts/fonts.conf ]; then \ echo "backing up existing /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386/opt/local/etc/fonts/fonts.conf"; \ mv /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386/opt/local/etc/fonts/fonts.conf /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386/opt/local/etc/fonts/fonts.conf.bak; \ fi backing up existing /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386/opt/local/etc/fonts/fonts.conf if [ -f ./fonts.conf ]; then \ echo " /usr/bin/install -c -m 644 ./fonts.conf /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386/opt/local/etc/fonts/fonts.conf"; \ /usr/bin/install -c -m 644 ./fonts.conf /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386/opt/local/etc/fonts/fonts.conf; \ else if [ -f fonts.conf ]; then \ echo " /usr/bin/install -c -m 644 fonts.conf /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386/opt/local/etc/fonts/fonts.conf"; \ /usr/bin/install -c -m 644 fonts.conf /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386/opt/local/etc/fonts/fonts.conf; \ fi; fi /usr/bin/install -c -m 644 ./fonts.conf /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386/opt/local/etc/fonts/fonts.conf *** *** Warning: fonts.cache not built *** *** Generate this file manually on host system using fc-cache *** test -z "/opt/local/lib/pkgconfig" || /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/fontconfig-2.6.0-i386/install-sh -d "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386/opt/local/lib/pkgconfig" /usr/bin/install -c -m 644 'fontconfig.pc' '/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386/opt/local/lib/pkgconfig/fontconfig.pc' DEBUG: delete: /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot DEBUG: universal: merge: /Applications only exists in /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-ppc Error: Target org.macports.destroot returned: error copying "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-ppc//Applications" to "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-powerpc/Applications": file already exists Warning: the following items did not execute (for fontconfig): org.macports.activate org.macports.destroot org.macports.install Error: The following dependencies failed to build: cairo fontconfig libpixman libpng xrender xorg-libX11 xorg-bigreqsproto xorg-inputproto xorg-kbproto xorg-libXau xorg-xproto xorg-libXdmcp xorg-xcmiscproto xorg-xextproto xorg-xf86bigfontproto xorg-xtrans xorg-renderproto libsigcxx2 Error: Status 1 encountered during processing.
Then after a clean and re-install:
[...snip...] DEBUG: universal: merge: merging /opt/local/include/fontconfig/fontconfig.h from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386 and /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-x86_64 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386//opt/local/include/fontconfig/fontconfig.h -> /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-intel//opt/local/include/fontconfig/fontconfig.h DEBUG: universal: merge: /opt/local/include/fontconfig/fontconfig.h is identical in /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386 and /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-x86_64 DEBUG: universal: merge: merging /opt/local/lib from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386 and /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-x86_64 xinstall: mkdir /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-intel//opt/local/lib DEBUG: universal: merge: merging /opt/local/lib/libfontconfig.1.3.0.dylib from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386 and /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-x86_64 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386//opt/local/lib/libfontconfig.1.3.0.dylib -> /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-intel//opt/local/lib/libfontconfig.1.3.0.dylib DEBUG: universal: merge: /opt/local/lib/libfontconfig.1.3.0.dylib is identical in /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386 and /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-x86_64 DEBUG: universal: merge: merging /opt/local/lib/libfontconfig.1.dylib from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386 and /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-x86_64 DEBUG: universal: merge: /opt/local/lib/libfontconfig.1.dylib is a link DEBUG: universal: merge: merging /opt/local/lib/libfontconfig.a from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386 and /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-x86_64 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386//opt/local/lib/libfontconfig.a /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-x86_64//opt/local/lib/libfontconfig.a differ: char 34, line 2 /usr/bin/lipo: /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386//opt/local/lib/libfontconfig.a and /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-x86_64//opt/local/lib/libfontconfig.a have the same architectures (i386) and can't be in the same fat output file DEBUG: delete: /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-intel//opt/local/lib/libfontconfig.a Error: Target org.macports.destroot returned: Can not create /opt/local/lib/libfontconfig.a from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386 and /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-x86_64 Warning: the following items did not execute (for fontconfig): org.macports.activate org.macports.destroot org.macports.install Error: The following dependencies failed to build: cairo fontconfig libpixman libpng xrender xorg-libX11 xorg-bigreqsproto xorg-inputproto xorg-kbproto xorg-libXau xorg-xproto xorg-libXdmcp xorg-xcmiscproto xorg-xextproto xorg-xf86bigfontproto xorg-xtrans xorg-renderproto libsigcxx2 Error: Status 1 encountered during processing.
Attachments (2)
Change History (12)
comment:1 Changed 15 years ago by blb@…
Owner: | changed from macports-tickets@… to ryandesign@… |
---|
comment:2 Changed 15 years ago by jmroot (Joshua Root)
Changed 15 years ago by jmroot (Joshua Root)
Attachment: | fontconfig-muniversal-options.diff added |
---|
comment:3 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | mcalhoun@… added |
---|
Cc'ing the author of the original approach.
Note also that the port will be updated to 2.7.0 soon which might change things for universal again.
comment:4 Changed 15 years ago by dbsgeo@…
I just tried again after the update in #20192 but this did not seem to change anything:
---> Staging fontconfig into destroot ---> Staging fontconfig into destroot for architecture x86_64 ---> Staging fontconfig into destroot for architecture ppc ---> Staging fontconfig into destroot for architecture i386 Error: Target org.macports.destroot returned: Can not create /opt/local/lib/libfontconfig.a from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386 and /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-x86_64
comment:5 follow-up: 6 Changed 15 years ago by lvcargnini@…
I getting the following error:
sudo port install fontconfig Password: ---> Staging fontconfig into destroot ---> Staging fontconfig into destroot for architecture i386 Error: Target org.macports.destroot returned: error copying "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot" to "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386/destroot": file already exists Error: Status 1 encountered during processing.
comment:6 Changed 15 years ago by lvcargnini@…
I forgot to say my universal_architecture is i386 x86_64
Replying to lvcargnini@…:
I getting the following error:
sudo port install fontconfig
Password:
---> Staging fontconfig into destroot
---> Staging fontconfig into destroot for architecture i386
Error: Target org.macports.destroot returned: error copying
"/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot" to
"/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_graphics_fontconfig/work/destroot-i386/destroot": file already exists
Error: Status 1 encountered during processing.
Changed 15 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Attachment: | Portfile.diff added |
---|
comment:8 follow-up: 10 Changed 15 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
The default behavior of the muniversal PortGroup was changed in r53389.
The attached patch should fix the problem.
comment:9 Changed 15 years ago by lvcargnini@…
It seems to be working, for me with my two archs in the universal_arch :
sudo port install fontconfig
---> Fetching fontconfig ---> Verifying checksum(s) for fontconfig ---> Extracting fontconfig ---> Applying patches to fontconfig ---> Configuring fontconfig ---> Configuring fontconfig for architecture i386 ---> Configuring fontconfig for architecture x86_64 ---> Building fontconfig ---> Building fontconfig for architecture i386 ---> Building fontconfig for architecture x86_64 ---> Staging fontconfig into destroot ---> Staging fontconfig into destroot for architecture i386 ---> Staging fontconfig into destroot for architecture x86_64 ---> Installing fontconfig @2.7.0_0+macosx+universal ---> Activating fontconfig @2.7.0_0+macosx+universal ---> Cleaning fontconfig
comment:10 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → fixed |
---|---|
Status: | new → closed |
Replying to mcalhoun@…:
The default behavior of the muniversal PortGroup was changed in r53389.
I figured it must have been one of those changes to the portgroup, since I haven't changed the fontconfig portfile, and I did have 2.6.0 installed 4-way universal before so it used to work.
The attached patch should fix the problem.
Works for me with 4-way universal on Leopard. Committed in r53607.
Attaching a patch that seemed to work for me, note however that I do not understand the reasons behind the original approach.