From e7a4eea6fe9ed9630eddf508a07af0e9dccd66da Mon Sep 17 00:00:00 2001 From: Chen Qi Date: Mon, 26 Dec 2016 11:35:23 +0800 Subject: byacc: upgrade to 20161202 0001-byacc-do-not-reorder-CC-and-CFLAGS.patch is added to fix the problem of byacc dropping options from $CC. Signed-off-by: Chen Qi --- meta/recipes-extended/byacc/byacc.inc | 3 +- .../0001-byacc-do-not-reorder-CC-and-CFLAGS.patch | 161 +++++++++++++++++++++ meta/recipes-extended/byacc/byacc_20160606.bb | 12 -- meta/recipes-extended/byacc/byacc_20161202.bb | 12 ++ 4 files changed, 175 insertions(+), 13 deletions(-) create mode 100644 meta/recipes-extended/byacc/byacc/0001-byacc-do-not-reorder-CC-and-CFLAGS.patch delete mode 100644 meta/recipes-extended/byacc/byacc_20160606.bb create mode 100644 meta/recipes-extended/byacc/byacc_20161202.bb diff --git a/meta/recipes-extended/byacc/byacc.inc b/meta/recipes-extended/byacc/byacc.inc index f9f8d6b5f0..adb07193d7 100644 --- a/meta/recipes-extended/byacc/byacc.inc +++ b/meta/recipes-extended/byacc/byacc.inc @@ -6,7 +6,8 @@ SECTION = "devel" LICENSE = "PD" SRC_URI = "ftp://invisible-island.net/byacc/byacc-${PV}.tgz \ - file://byacc-open.patch" + file://byacc-open.patch \ + file://0001-byacc-do-not-reorder-CC-and-CFLAGS.patch" EXTRA_OECONF += "--program-transform-name='s,^,b,'" diff --git a/meta/recipes-extended/byacc/byacc/0001-byacc-do-not-reorder-CC-and-CFLAGS.patch b/meta/recipes-extended/byacc/byacc/0001-byacc-do-not-reorder-CC-and-CFLAGS.patch new file mode 100644 index 0000000000..7cd2510c8e --- /dev/null +++ b/meta/recipes-extended/byacc/byacc/0001-byacc-do-not-reorder-CC-and-CFLAGS.patch @@ -0,0 +1,161 @@ +Subject: byacc: do not reorder $CC and $CFLAGS + +byacc tries to process $CC and decide which part should belong to CC and which +part should below to CFLAGS and then do reordering. It doesn't make much sense +for OE. And it doesn't do its work correctly. Some options are dropped. + +Delete all these stuff so that we could have all options we need. + +Upstream-Status: Inappropriate [OE Specific] + +Signed-off-by: Chen Qi +--- + aclocal.m4 | 1 - + configure | 119 ------------------------------------------------------------- + 2 files changed, 120 deletions(-) + +diff --git a/aclocal.m4 b/aclocal.m4 +index 917a848..62ef241 100644 +--- a/aclocal.m4 ++++ b/aclocal.m4 +@@ -1021,7 +1021,6 @@ CF_GCC_VERSION + CF_ACVERSION_CHECK(2.52, + [AC_PROG_CC_STDC], + [CF_ANSI_CC_REQD]) +-CF_CC_ENV_FLAGS + ])dnl + dnl --------------------------------------------------------------------------- + dnl CF_PROG_GROFF version: 2 updated: 2015/07/04 11:16:27 +diff --git a/configure b/configure +index 9707e50..4f0497c 100755 +--- a/configure ++++ b/configure +@@ -1946,125 +1946,6 @@ esac + # This should have been defined by AC_PROG_CC + : ${CC:=cc} + +-echo "$as_me:1949: checking \$CC variable" >&5 +-echo $ECHO_N "checking \$CC variable... $ECHO_C" >&6 +-case "$CC" in +-(*[\ \ ]-*) +- echo "$as_me:1953: result: broken" >&5 +-echo "${ECHO_T}broken" >&6 +- { echo "$as_me:1955: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&5 +-echo "$as_me: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&2;} +- # humor him... +- cf_flags=`echo "$CC" | sed -e 's/^.*[ ]\(-[^ ]\)/\1/'` +- CC=`echo "$CC " | sed -e 's/[ ]-[^ ].*$//' -e 's/[ ]*$//'` +- for cf_arg in $cf_flags +- do +- case "x$cf_arg" in +- (x-[IUDfgOW]*) +- +-cf_fix_cppflags=no +-cf_new_cflags= +-cf_new_cppflags= +-cf_new_extra_cppflags= +- +-for cf_add_cflags in $cf_flags +-do +-case $cf_fix_cppflags in +-(no) +- case $cf_add_cflags in +- (-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) +- case $cf_add_cflags in +- (-D*) +- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` +- +- test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \ +- && test -z "${cf_tst_cflags}" \ +- && cf_fix_cppflags=yes +- +- if test $cf_fix_cppflags = yes ; then +- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" +- continue +- elif test "${cf_tst_cflags}" = "\"'" ; then +- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" +- continue +- fi +- ;; +- esac +- case "$CPPFLAGS" in +- (*$cf_add_cflags) +- ;; +- (*) +- case $cf_add_cflags in +- (-D*) +- cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` +- +-CPPFLAGS=`echo "$CPPFLAGS" | \ +- sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ +- -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` +- +- ;; +- esac +- cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" +- ;; +- esac +- ;; +- (*) +- cf_new_cflags="$cf_new_cflags $cf_add_cflags" +- ;; +- esac +- ;; +-(yes) +- cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" +- +- cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` +- +- test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \ +- && test -z "${cf_tst_cflags}" \ +- && cf_fix_cppflags=no +- ;; +-esac +-done +- +-if test -n "$cf_new_cflags" ; then +- +- CFLAGS="$CFLAGS $cf_new_cflags" +-fi +- +-if test -n "$cf_new_cppflags" ; then +- +- CPPFLAGS="$CPPFLAGS $cf_new_cppflags" +-fi +- +-if test -n "$cf_new_extra_cppflags" ; then +- +- EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" +-fi +- +- ;; +- (*) +- CC="$CC $cf_arg" +- ;; +- esac +- done +- test -n "$verbose" && echo " resulting CC: '$CC'" 1>&6 +- +-echo "${as_me:-configure}:2051: testing resulting CC: '$CC' ..." 1>&5 +- +- test -n "$verbose" && echo " resulting CFLAGS: '$CFLAGS'" 1>&6 +- +-echo "${as_me:-configure}:2055: testing resulting CFLAGS: '$CFLAGS' ..." 1>&5 +- +- test -n "$verbose" && echo " resulting CPPFLAGS: '$CPPFLAGS'" 1>&6 +- +-echo "${as_me:-configure}:2059: testing resulting CPPFLAGS: '$CPPFLAGS' ..." 1>&5 +- +- ;; +-(*) +- echo "$as_me:2063: result: ok" >&5 +-echo "${ECHO_T}ok" >&6 +- ;; +-esac +- + echo "$as_me:2068: checking whether ${MAKE-make} sets \${MAKE}" >&5 + echo $ECHO_N "checking whether ${MAKE-make} sets \${MAKE}... $ECHO_C" >&6 + set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,./+-,__p_,'` +-- +2.8.3 + diff --git a/meta/recipes-extended/byacc/byacc_20160606.bb b/meta/recipes-extended/byacc/byacc_20160606.bb deleted file mode 100644 index 98129d0ec4..0000000000 --- a/meta/recipes-extended/byacc/byacc_20160606.bb +++ /dev/null @@ -1,12 +0,0 @@ -# Sigh. This is one of those places where everyone licenses it differently. Someone -# even apply UCB to it (Free/Net/OpenBSD). The maintainer states that: -# "I've found no reliable source which states that byacc must bear a UCB copyright." -# Setting to PD as this is what the upstream has it as. - -LICENSE = "PD" -LIC_FILES_CHKSUM = "file://package/debian/copyright;md5=74533d32ffd38bca4cbf1f1305f8bc60" -require byacc.inc - - -SRC_URI[md5sum] = "d527c811b360f04a8c5f5a0a90625966" -SRC_URI[sha256sum] = "cc8fdced486cb70cec7a7c9358de836bfd267d19d6456760bb4721ccfea5ac91" diff --git a/meta/recipes-extended/byacc/byacc_20161202.bb b/meta/recipes-extended/byacc/byacc_20161202.bb new file mode 100644 index 0000000000..755f8ab515 --- /dev/null +++ b/meta/recipes-extended/byacc/byacc_20161202.bb @@ -0,0 +1,12 @@ +# Sigh. This is one of those places where everyone licenses it differently. Someone +# even apply UCB to it (Free/Net/OpenBSD). The maintainer states that: +# "I've found no reliable source which states that byacc must bear a UCB copyright." +# Setting to PD as this is what the upstream has it as. + +LICENSE = "PD" +LIC_FILES_CHKSUM = "file://package/debian/copyright;md5=74533d32ffd38bca4cbf1f1305f8bc60" +require byacc.inc + + +SRC_URI[md5sum] = "48ef38447f2cc864c70ef864b26cf817" +SRC_URI[sha256sum] = "30dc58cfcdb708eea7ba022db29b41d2d392f20727491b956954366f2f2117f0" -- cgit 1.2.3-korg