byacc patch for building mesa
This commit is contained in:
parent
71e71c1978
commit
27cb7ab164
4 changed files with 124 additions and 4 deletions
|
@ -1,4 +1,4 @@
|
|||
pkgver=20200910
|
||||
pkgver=20210109
|
||||
pkgname=byacc
|
||||
bad=""
|
||||
ext="doc"
|
||||
|
@ -6,6 +6,7 @@ ext="doc"
|
|||
fetch() {
|
||||
curl https://invisible-island.net/datafiles/release/byacc.tar.gz -o $pkgname-$pkgver.tar.gz
|
||||
tar -xf $pkgname-$pkgver.tar.gz
|
||||
cp ../reader-mesa.patch .
|
||||
}
|
||||
|
||||
build() {
|
||||
|
@ -14,6 +15,7 @@ build() {
|
|||
--prefix=/usr \
|
||||
--program-prefix=b \
|
||||
--enable-btyacc
|
||||
patch -p1 < ../reader-mesa.patch
|
||||
make
|
||||
}
|
||||
|
||||
|
|
11
pkgs/byacc/reader-mesa.patch
Normal file
11
pkgs/byacc/reader-mesa.patch
Normal file
|
@ -0,0 +1,11 @@
|
|||
--- a/reader.c
|
||||
+++ b/reader.c
|
||||
@@ -902,7 +902,7 @@
|
||||
|
||||
if (!lflag)
|
||||
fprintf(text_file, line_format, lineno, input_file_name);
|
||||
- puts_both("typedef union");
|
||||
+ puts_both("typedef union YYSTYPE");
|
||||
|
||||
depth = 0;
|
||||
loop:
|
|
@ -7,7 +7,7 @@ fetch() {
|
|||
tar -xf $pkgname-$pkgver.tar.gz
|
||||
mkdir $pkgname-$pkgver/build
|
||||
cp ../byacc-out-mid-build.patch .
|
||||
cd ../LICENSE .
|
||||
cp ../LICENSE .
|
||||
}
|
||||
|
||||
build() {
|
||||
|
@ -46,8 +46,11 @@ build() {
|
|||
-Dbuild-tests=false
|
||||
|
||||
samu
|
||||
patch -p1 < ../../byacc-out-mid-build.patch
|
||||
samu
|
||||
|
||||
# NEEDED IF NOT USING A PATCHED BYACC
|
||||
# ===================================
|
||||
# patch -p1 < ../../byacc-out-mid-build.patch
|
||||
# samu
|
||||
}
|
||||
|
||||
package() {
|
||||
|
|
104
pkgs/mesa/byacc.patch
Normal file
104
pkgs/mesa/byacc.patch
Normal file
|
@ -0,0 +1,104 @@
|
|||
diff --git a/meson.build b/meson.build
|
||||
index 96571c9df2569ff77b1d04944883f49118570ee8..c0a2316a263bc2628d13103359539b692c9b56aa 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -1708,7 +1708,7 @@ if host_machine.system() == 'windows'
|
||||
prog_bison = find_program('bison', 'yacc', required : with_any_opengl)
|
||||
endif
|
||||
else
|
||||
- prog_bison = find_program('bison', required : with_any_opengl)
|
||||
+ prog_bison = find_program('bison', 'byacc', required : with_any_opengl)
|
||||
|
||||
# Disable deprecated keyword warnings, since we have to use them for
|
||||
# old-bison compat. See discussion in
|
||||
diff --git a/src/compiler/glsl/glcpp/meson.build b/src/compiler/glsl/glcpp/meson.build
|
||||
index 9c40fd72c61a780ba77a245e13cced974011c7ab..6441bc6313f39e8ca93991f07b8658b9974913d9 100644
|
||||
--- a/src/compiler/glsl/glcpp/meson.build
|
||||
+++ b/src/compiler/glsl/glcpp/meson.build
|
||||
@@ -18,14 +18,24 @@
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
+bison_command=[]
|
||||
+if prog_bison == 'bison'
|
||||
+ bison_command = [
|
||||
+ prog_bison, '-o', '@OUTPUT0@', '-p', 'glcpp_parser_',
|
||||
+ '--defines=@OUTPUT1@', '@INPUT@',
|
||||
+ ]
|
||||
+else
|
||||
+ bison_command = [
|
||||
+ prog_bison, '-o', '@OUTPUT0@', '-p', 'glcpp_parser_',
|
||||
+ '-H', '@OUTPUT1@', '@INPUT@',
|
||||
+ ]
|
||||
+endif
|
||||
+
|
||||
glcpp_parse = custom_target(
|
||||
'glcpp-parse.[ch]',
|
||||
input : 'glcpp-parse.y',
|
||||
output : ['glcpp-parse.c', 'glcpp-parse.h'],
|
||||
- command : [
|
||||
- prog_bison, '-o', '@OUTPUT0@', '-p', 'glcpp_parser_',
|
||||
- '--defines=@OUTPUT1@', '@INPUT@',
|
||||
- ],
|
||||
+ command : bison_command
|
||||
)
|
||||
|
||||
glcpp_lex = custom_target(
|
||||
diff --git a/src/compiler/glsl/meson.build b/src/compiler/glsl/meson.build
|
||||
index 92635958adfe52d2a9a3726ad7de73195654dc9c..c44903d4f18fe6772d4906f0866c5e5a7e291935 100644
|
||||
--- a/src/compiler/glsl/meson.build
|
||||
+++ b/src/compiler/glsl/meson.build
|
||||
@@ -20,14 +20,24 @@
|
||||
|
||||
subdir('glcpp')
|
||||
|
||||
+bison_command=[]
|
||||
+if prog_bison == 'bison'
|
||||
+ bison_command = [
|
||||
+ prog_bison, '-o', '@OUTPUT0@', '-p', '_mesa_glsl_', '--defines=@OUTPUT1@',
|
||||
+ '@INPUT@',
|
||||
+ ]
|
||||
+else
|
||||
+ bison_command = [
|
||||
+ prog_bison, '-o', '@OUTPUT0@', '-p', '_mesa_glsl_', '-H', '@OUTPUT1@',
|
||||
+ '@INPUT@',
|
||||
+ ]
|
||||
+endif
|
||||
+
|
||||
glsl_parser = custom_target(
|
||||
'glsl_parser',
|
||||
input : 'glsl_parser.yy',
|
||||
output : ['glsl_parser.cpp', 'glsl_parser.h'],
|
||||
- command : [
|
||||
- prog_bison, '-o', '@OUTPUT0@', '-p', '_mesa_glsl_', '--defines=@OUTPUT1@',
|
||||
- '@INPUT@',
|
||||
- ],
|
||||
+ command : bison_command
|
||||
)
|
||||
|
||||
glsl_lexer_cpp = custom_target(
|
||||
diff --git a/src/mesa/program/meson.build b/src/mesa/program/meson.build
|
||||
index 5f3325ff53c66fb34f4643dd6cea20aa3ee69104..a22d332d3594bae215158a140f1bf1bcb93b64b5 100644
|
||||
--- a/src/mesa/program/meson.build
|
||||
+++ b/src/mesa/program/meson.build
|
||||
@@ -18,6 +18,13 @@
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
|
||||
+bison_command=[]
|
||||
+if prog_bison == 'bison'
|
||||
+ bison_command = [prog_bison, '-o', '@OUTPUT0@', '--defines=@OUTPUT1@', '@INPUT@']
|
||||
+else
|
||||
+ bison_command = [prog_bison, '-o', '@OUTPUT0@', '-H', '@OUTPUT1@', '@INPUT@']
|
||||
+endif
|
||||
+
|
||||
mesa_lex = custom_target(
|
||||
'mesa_lex',
|
||||
input : 'program_lexer.l',
|
||||
@@ -29,5 +36,5 @@ program_parse_tab = custom_target(
|
||||
'program_parse_tab.[ch]',
|
||||
input : 'program_parse.y',
|
||||
output : ['program_parse.tab.c', 'program_parse.tab.h'],
|
||||
- command : [prog_bison, '-o', '@OUTPUT0@', '--defines=@OUTPUT1@', '@INPUT@'],
|
||||
+ command : bison_command,
|
||||
)
|
Loading…
Reference in a new issue