diff options
author | Huang Qiyu <huangqy.fnst@cn.fujitsu.com> | 2017-09-21 14:41:03 +0800 |
---|---|---|
committer | Martin Jansa <Martin.Jansa@gmail.com> | 2017-09-22 22:50:48 +0000 |
commit | 01c7f3e75d27f3ac2d761c85e2d94a71e2feb950 (patch) | |
tree | 8b143ff92f7f3fdc82fb85c8b1c0b721c0e48bee /meta-oe/recipes-extended | |
parent | 6aa6ba37021e556c0e3a2f857e71e820c367975c (diff) | |
download | meta-openembedded-01c7f3e75d27f3ac2d761c85e2d94a71e2feb950.tar.gz |
byacc: Add HOMEPAGE info into recipe file.
copy byacc from meta to meta-oe.
Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Diffstat (limited to 'meta-oe/recipes-extended')
4 files changed, 221 insertions, 0 deletions
diff --git a/meta-oe/recipes-extended/byacc/byacc.inc b/meta-oe/recipes-extended/byacc/byacc.inc new file mode 100644 index 000000000..9bdafd244 --- /dev/null +++ b/meta-oe/recipes-extended/byacc/byacc.inc | |||
@@ -0,0 +1,23 @@ | |||
1 | SUMMARY = "Berkeley LALR Yacc parser generator" | ||
2 | HOMEPAGE = "http://invisible-island.net/byacc/" | ||
3 | DESCRIPTION = "A parser generator utility that reads a grammar specification from a file and generates an LR(1) \ | ||
4 | parser for it. The parsers consist of a set of LALR(1) parsing tables and a driver routine written in the C \ | ||
5 | programming language." | ||
6 | SECTION = "devel" | ||
7 | LICENSE = "PD" | ||
8 | |||
9 | SRC_URI = "ftp://invisible-island.net/byacc/byacc-${PV}.tgz \ | ||
10 | file://byacc-open.patch \ | ||
11 | file://0001-byacc-do-not-reorder-CC-and-CFLAGS.patch" | ||
12 | |||
13 | EXTRA_OECONF += "--program-transform-name='s,^,b,'" | ||
14 | |||
15 | BBCLASSEXTEND = "native" | ||
16 | |||
17 | inherit autotools | ||
18 | |||
19 | do_configure() { | ||
20 | install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S} | ||
21 | install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S} | ||
22 | oe_runconf | ||
23 | } | ||
diff --git a/meta-oe/recipes-extended/byacc/byacc/0001-byacc-do-not-reorder-CC-and-CFLAGS.patch b/meta-oe/recipes-extended/byacc/byacc/0001-byacc-do-not-reorder-CC-and-CFLAGS.patch new file mode 100644 index 000000000..7cd2510c8 --- /dev/null +++ b/meta-oe/recipes-extended/byacc/byacc/0001-byacc-do-not-reorder-CC-and-CFLAGS.patch | |||
@@ -0,0 +1,161 @@ | |||
1 | Subject: byacc: do not reorder $CC and $CFLAGS | ||
2 | |||
3 | byacc tries to process $CC and decide which part should belong to CC and which | ||
4 | part should below to CFLAGS and then do reordering. It doesn't make much sense | ||
5 | for OE. And it doesn't do its work correctly. Some options are dropped. | ||
6 | |||
7 | Delete all these stuff so that we could have all options we need. | ||
8 | |||
9 | Upstream-Status: Inappropriate [OE Specific] | ||
10 | |||
11 | Signed-off-by: Chen Qi <Qi.Chen@windriver.com> | ||
12 | --- | ||
13 | aclocal.m4 | 1 - | ||
14 | configure | 119 ------------------------------------------------------------- | ||
15 | 2 files changed, 120 deletions(-) | ||
16 | |||
17 | diff --git a/aclocal.m4 b/aclocal.m4 | ||
18 | index 917a848..62ef241 100644 | ||
19 | --- a/aclocal.m4 | ||
20 | +++ b/aclocal.m4 | ||
21 | @@ -1021,7 +1021,6 @@ CF_GCC_VERSION | ||
22 | CF_ACVERSION_CHECK(2.52, | ||
23 | [AC_PROG_CC_STDC], | ||
24 | [CF_ANSI_CC_REQD]) | ||
25 | -CF_CC_ENV_FLAGS | ||
26 | ])dnl | ||
27 | dnl --------------------------------------------------------------------------- | ||
28 | dnl CF_PROG_GROFF version: 2 updated: 2015/07/04 11:16:27 | ||
29 | diff --git a/configure b/configure | ||
30 | index 9707e50..4f0497c 100755 | ||
31 | --- a/configure | ||
32 | +++ b/configure | ||
33 | @@ -1946,125 +1946,6 @@ esac | ||
34 | # This should have been defined by AC_PROG_CC | ||
35 | : ${CC:=cc} | ||
36 | |||
37 | -echo "$as_me:1949: checking \$CC variable" >&5 | ||
38 | -echo $ECHO_N "checking \$CC variable... $ECHO_C" >&6 | ||
39 | -case "$CC" in | ||
40 | -(*[\ \ ]-*) | ||
41 | - echo "$as_me:1953: result: broken" >&5 | ||
42 | -echo "${ECHO_T}broken" >&6 | ||
43 | - { echo "$as_me:1955: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&5 | ||
44 | -echo "$as_me: WARNING: your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options" >&2;} | ||
45 | - # humor him... | ||
46 | - cf_flags=`echo "$CC" | sed -e 's/^.*[ ]\(-[^ ]\)/\1/'` | ||
47 | - CC=`echo "$CC " | sed -e 's/[ ]-[^ ].*$//' -e 's/[ ]*$//'` | ||
48 | - for cf_arg in $cf_flags | ||
49 | - do | ||
50 | - case "x$cf_arg" in | ||
51 | - (x-[IUDfgOW]*) | ||
52 | - | ||
53 | -cf_fix_cppflags=no | ||
54 | -cf_new_cflags= | ||
55 | -cf_new_cppflags= | ||
56 | -cf_new_extra_cppflags= | ||
57 | - | ||
58 | -for cf_add_cflags in $cf_flags | ||
59 | -do | ||
60 | -case $cf_fix_cppflags in | ||
61 | -(no) | ||
62 | - case $cf_add_cflags in | ||
63 | - (-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) | ||
64 | - case $cf_add_cflags in | ||
65 | - (-D*) | ||
66 | - cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[^=]*='\''\"[^"]*//'` | ||
67 | - | ||
68 | - test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \ | ||
69 | - && test -z "${cf_tst_cflags}" \ | ||
70 | - && cf_fix_cppflags=yes | ||
71 | - | ||
72 | - if test $cf_fix_cppflags = yes ; then | ||
73 | - cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" | ||
74 | - continue | ||
75 | - elif test "${cf_tst_cflags}" = "\"'" ; then | ||
76 | - cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" | ||
77 | - continue | ||
78 | - fi | ||
79 | - ;; | ||
80 | - esac | ||
81 | - case "$CPPFLAGS" in | ||
82 | - (*$cf_add_cflags) | ||
83 | - ;; | ||
84 | - (*) | ||
85 | - case $cf_add_cflags in | ||
86 | - (-D*) | ||
87 | - cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` | ||
88 | - | ||
89 | -CPPFLAGS=`echo "$CPPFLAGS" | \ | ||
90 | - sed -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?[ ]/ /g' \ | ||
91 | - -e 's/-[UD]'"$cf_tst_cppflags"'\(=[^ ]*\)\?$//g'` | ||
92 | - | ||
93 | - ;; | ||
94 | - esac | ||
95 | - cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" | ||
96 | - ;; | ||
97 | - esac | ||
98 | - ;; | ||
99 | - (*) | ||
100 | - cf_new_cflags="$cf_new_cflags $cf_add_cflags" | ||
101 | - ;; | ||
102 | - esac | ||
103 | - ;; | ||
104 | -(yes) | ||
105 | - cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" | ||
106 | - | ||
107 | - cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[^"]*"'\''//'` | ||
108 | - | ||
109 | - test "x${cf_add_cflags}" != "x${cf_tst_cflags}" \ | ||
110 | - && test -z "${cf_tst_cflags}" \ | ||
111 | - && cf_fix_cppflags=no | ||
112 | - ;; | ||
113 | -esac | ||
114 | -done | ||
115 | - | ||
116 | -if test -n "$cf_new_cflags" ; then | ||
117 | - | ||
118 | - CFLAGS="$CFLAGS $cf_new_cflags" | ||
119 | -fi | ||
120 | - | ||
121 | -if test -n "$cf_new_cppflags" ; then | ||
122 | - | ||
123 | - CPPFLAGS="$CPPFLAGS $cf_new_cppflags" | ||
124 | -fi | ||
125 | - | ||
126 | -if test -n "$cf_new_extra_cppflags" ; then | ||
127 | - | ||
128 | - EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" | ||
129 | -fi | ||
130 | - | ||
131 | - ;; | ||
132 | - (*) | ||
133 | - CC="$CC $cf_arg" | ||
134 | - ;; | ||
135 | - esac | ||
136 | - done | ||
137 | - test -n "$verbose" && echo " resulting CC: '$CC'" 1>&6 | ||
138 | - | ||
139 | -echo "${as_me:-configure}:2051: testing resulting CC: '$CC' ..." 1>&5 | ||
140 | - | ||
141 | - test -n "$verbose" && echo " resulting CFLAGS: '$CFLAGS'" 1>&6 | ||
142 | - | ||
143 | -echo "${as_me:-configure}:2055: testing resulting CFLAGS: '$CFLAGS' ..." 1>&5 | ||
144 | - | ||
145 | - test -n "$verbose" && echo " resulting CPPFLAGS: '$CPPFLAGS'" 1>&6 | ||
146 | - | ||
147 | -echo "${as_me:-configure}:2059: testing resulting CPPFLAGS: '$CPPFLAGS' ..." 1>&5 | ||
148 | - | ||
149 | - ;; | ||
150 | -(*) | ||
151 | - echo "$as_me:2063: result: ok" >&5 | ||
152 | -echo "${ECHO_T}ok" >&6 | ||
153 | - ;; | ||
154 | -esac | ||
155 | - | ||
156 | echo "$as_me:2068: checking whether ${MAKE-make} sets \${MAKE}" >&5 | ||
157 | echo $ECHO_N "checking whether ${MAKE-make} sets \${MAKE}... $ECHO_C" >&6 | ||
158 | set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,./+-,__p_,'` | ||
159 | -- | ||
160 | 2.8.3 | ||
161 | |||
diff --git a/meta-oe/recipes-extended/byacc/byacc/byacc-open.patch b/meta-oe/recipes-extended/byacc/byacc/byacc-open.patch new file mode 100644 index 000000000..005831130 --- /dev/null +++ b/meta-oe/recipes-extended/byacc/byacc/byacc-open.patch | |||
@@ -0,0 +1,25 @@ | |||
1 | Ubuntu defaults to passing _FORTIFY_SOURCE=2 which breaks byacc as it doesn't | ||
2 | pass enough arguments to open(): | ||
3 | |||
4 | inlined from 'open_tmpfile' at byacc-20150711/main.c:588:5: | ||
5 | /usr/include/x86_64-linux-gnu/bits/fcntl2.h:50:24: error: call to '__open_missing_mode' declared with attribute error: | ||
6 | open with O_CREAT in second argument needs 3 arguments | ||
7 | |||
8 | Add a mode of 0666 to fix this. | ||
9 | |||
10 | Upstream-Status: Pending | ||
11 | Signed-off-by: Ross Burton <ross.burton@intel.com> | ||
12 | |||
13 | diff --git a/main.c b/main.c | ||
14 | index 620ce3f..82071a4 100644 | ||
15 | --- a/main.c | ||
16 | +++ b/main.c | ||
17 | @@ -526,7 +526,7 @@ my_mkstemp(char *temp) | ||
18 | } | ||
19 | if ((name = tempnam(dname, fname)) != 0) | ||
20 | { | ||
21 | - fd = open(name, O_CREAT | O_EXCL | O_RDWR); | ||
22 | + fd = open(name, O_CREAT | O_EXCL | O_RDWR, 0666); | ||
23 | strcpy(temp, name); | ||
24 | } | ||
25 | else | ||
diff --git a/meta-oe/recipes-extended/byacc/byacc_20170201.bb b/meta-oe/recipes-extended/byacc/byacc_20170201.bb new file mode 100644 index 000000000..702c4c99e --- /dev/null +++ b/meta-oe/recipes-extended/byacc/byacc_20170201.bb | |||
@@ -0,0 +1,12 @@ | |||
1 | # Sigh. This is one of those places where everyone licenses it differently. Someone | ||
2 | # even apply UCB to it (Free/Net/OpenBSD). The maintainer states that: | ||
3 | # "I've found no reliable source which states that byacc must bear a UCB copyright." | ||
4 | # Setting to PD as this is what the upstream has it as. | ||
5 | |||
6 | LICENSE = "PD" | ||
7 | LIC_FILES_CHKSUM = "file://package/debian/copyright;md5=9176bfb16dab43ebcb8e50d9ee9550b6" | ||
8 | require byacc.inc | ||
9 | |||
10 | SRC_URI[md5sum] = "4bb274bbd7b648d4251c2b9ca36ed0c9" | ||
11 | SRC_URI[sha256sum] = "90b768d177f91204e6e7cef226ae1dc7cac831b625774cebd3e233a917754f91" | ||
12 | |||