Hi, Here are patches for mozilla-firefox and firefox-esr to copte with rustc-1.29.0.
`rustc --print target-list' in 1.29.0 outputs triplets with only 2 compoments (like `x86_64-fuchsia') and mozilla's configure scripts doesn't expect it. landry@ pointed to me the right commit to backport. It addresses https://bugzilla.mozilla.org/show_bug.cgi?id=1479540 . I built successfully mozilla-firefox with rust 1.29.0. For firefox-esr, I only checked the configure step works with the patch. Thanks. -- Sebastien Marie Index: mozilla-firefox/Makefile =================================================================== RCS file: /cvs/ports/www/mozilla-firefox/Makefile,v retrieving revision 1.359 diff -u -p -r1.359 Makefile --- mozilla-firefox/Makefile 5 Sep 2018 16:19:01 -0000 1.359 +++ mozilla-firefox/Makefile 16 Sep 2018 05:06:24 -0000 @@ -10,6 +10,8 @@ MOZILLA_BRANCH = release MOZILLA_PROJECT = firefox MOZILLA_CODENAME = browser +REVISION = 0 + WRKDIST = ${WRKDIR}/${MOZILLA_DIST}-${MOZILLA_DIST_VERSION:C/b[0-9]*//} HOMEPAGE = https://www.mozilla.org/firefox/ SO_VERSION = 79.0 Index: mozilla-firefox/patches/patch-build_moz_configure_init_configure =================================================================== RCS file: mozilla-firefox/patches/patch-build_moz_configure_init_configure diff -N mozilla-firefox/patches/patch-build_moz_configure_init_configure --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ mozilla-firefox/patches/patch-build_moz_configure_init_configure 16 Sep 2018 05:06:24 -0000 @@ -0,0 +1,21 @@ +$OpenBSD$ +backport of https://hg.mozilla.org/mozilla-central/rev/36f4ba2fb6f5 +to address https://bugzilla.mozilla.org/show_bug.cgi?id=1479540 +Index: build/moz.configure/init.configure +--- build/moz.configure/init.configure.orig ++++ build/moz.configure/init.configure +@@ -591,7 +591,13 @@ def split_triplet(triplet, allow_unknown=False): + # There is also a quartet form: + # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM + # But we can consider the "KERNEL-OPERATING_SYSTEM" as one. +- cpu, manufacturer, os = triplet.split('-', 2) ++ parts = triplet.split('-', 2) ++ if len(parts) == 3: ++ cpu, _, os = parts ++ elif len(parts) == 2: ++ cpu, os = parts ++ else: ++ die("Unexpected triplet string: %s" % triplet) + + # Autoconf uses config.sub to validate and canonicalize those triplets, + # but the granularity of its results has never been satisfying to our Index: firefox-esr/Makefile =================================================================== RCS file: /cvs/ports/www/firefox-esr/Makefile,v retrieving revision 1.80 diff -u -p -r1.80 Makefile --- firefox-esr/Makefile 5 Sep 2018 16:20:26 -0000 1.80 +++ firefox-esr/Makefile 16 Sep 2018 05:06:24 -0000 @@ -8,6 +8,8 @@ MOZILLA_BRANCH = release MOZILLA_PROJECT = firefox MOZILLA_CODENAME = browser +REVISION = 0 + WRKDIST = ${WRKDIR}/${MOZILLA_DIST}-${MOZILLA_DIST_VERSION:C/esr//} HOMEPAGE = https://www.mozilla.org/firefox/organizations/ PKGNAME = ${MOZILLA_PROJECT}-esr-${MOZILLA_VERSION:S/esr//} Index: firefox-esr/patches/patch-build_moz_configure_init_configure =================================================================== RCS file: firefox-esr/patches/patch-build_moz_configure_init_configure diff -N firefox-esr/patches/patch-build_moz_configure_init_configure --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ firefox-esr/patches/patch-build_moz_configure_init_configure 16 Sep 2018 05:06:24 -0000 @@ -0,0 +1,21 @@ +$OpenBSD$ +backport of https://hg.mozilla.org/mozilla-central/rev/36f4ba2fb6f5 +to address https://bugzilla.mozilla.org/show_bug.cgi?id=1479540 +Index: build/moz.configure/init.configure +--- build/moz.configure/init.configure.orig ++++ build/moz.configure/init.configure +@@ -591,7 +591,13 @@ def split_triplet(triplet, allow_unknown=False): + # There is also a quartet form: + # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM + # But we can consider the "KERNEL-OPERATING_SYSTEM" as one. +- cpu, manufacturer, os = triplet.split('-', 2) ++ parts = triplet.split('-', 2) ++ if len(parts) == 3: ++ cpu, _, os = parts ++ elif len(parts) == 2: ++ cpu, os = parts ++ else: ++ die("Unexpected triplet string: %s" % triplet) + + # Autoconf uses config.sub to validate and canonicalize those triplets, + # but the granularity of its results has never been satisfying to our