GNOME Bugzilla – Bug 692638
Don't use AC_CANONICAL_TARGET
Last modified: 2013-06-02 09:11:24 UTC
Created attachment 234533 [details] [review] Proposed patch This autoconf macro should only be used for building compilers (or compiler tools) for a specific target. The current effect of it in GTK3 is that it causes various executables like gtk3-demo to be prefixed with $target- when the --target configure flag is set or when cross-compiling. When cross-compiling GTK3 on Linux for the Win32 target this causes the gtk3-demo binary to be named i686-w64-mingw32-gtk3-demo.exe instead of just gtk3-demo.exe (like it was before commit 53083ea7b423482b) See also http://blog.flameeyes.eu/2008/10/you-dont-want-to-canonicalise-that-and-im-not-referring-to-ubuntu and http://blog.flameeyes.eu/2009/01/the-canonical-target for more information about this subject
Reopening, the fix for this was reverted by commit 717c28e12daff5ae9fcb01b45cd1daf13609cddb
Created attachment 240295 [details] [review] 0001-Do-not-use-AC_CANONICAL_TARGET.patch
Review of attachment 234533 [details] [review]: This patch was committed but regrettably reverted again later.
Matthias, can you review attachment 240295 [details] [review]. It fixes the issue that triggered you to revert the fix for this issue with commit 717c28e12daff5ae9fcb01b45cd1daf13609cddb
Not sure I entirely understand it: You remove AC_CANONICAL_TARGET from configure.ac, but you add a prereq for AC_CANONICAL_HOST - typo ?
(In reply to comment #5) > Not sure I entirely understand it: You remove AC_CANONICAL_TARGET from > configure.ac, but you add a prereq for AC_CANONICAL_HOST - typo ? No, not a typo. I remove AC_CANONICAL_TARGET basically because GTK is not a compiler and thus has no target (as explained in the original bug report). Then, in ax_prog_cc_for_build.m4 I do: -AC_REQUIRE([AC_CANONICAL_SYSTEM])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl The AC_CANONICAL_SYSTEM was also checking for the target system which is unneeded for the purpose of prog_cc_for_build. It is replaced by AC_CANONICAL_HOST, which only checks for the host system, not for the target system.
Attachment 240295 [details] pushed as f59c482 - Do not use AC_CANONICAL_TARGET