Add flex 2.6.4.

This commit is contained in:
Andrius Štikonas 2021-02-04 18:37:43 +00:00
parent e9c8313458
commit fb522be854
10 changed files with 80 additions and 84 deletions

View file

@ -1,13 +1,10 @@
# When we rebuild flex it no longer needs patching
# and can use simplified makefile
src_prepare() {
if test -d /lex; then
default_src_prepare
else
cp ../../mk/main2.mk Makefile
fi
default_src_prepare
touch config.h
rm parse.c parse.h scan.c
rm parse.c parse.h scan.c skel.c
}
src_install() {

View file

@ -1,28 +0,0 @@
CFLAGS = -DVERSION=\"2.5.11\"
all: flex
flex: ccl.o dfa.o ecs.o gen.o main.o misc.o nfa.o parse.o scan.o skel.o sym.o tblcmp.o yylex.o options.o scanopt.o buf.o
tcc -o $@ $^
%.o: %.c
tcc -g -c $(CFLAGS) -o $@ $<
scan.o: parse.h
yylex.o: parse.h
parse.c parse.h: parse.y
yacc -d parse.y
mv y.tab.h parse.h
mv y.tab.c parse.c
scan.c: scan.l
flex scan.l
mv lex.yy.c scan.c
skel.c: mkskel.sh flex.skl
/bin/sh ./mkskel.sh ./flex.skl > skel.c
install: all
install flex $(PREFIX)/bin
ln -sf $(PREFIX)/bin/flex $(PREFIX)/bin/lex

View file

@ -1,6 +0,0 @@
src_prepare() {
default_src_prepare
touch config.h
rm parse.c parse.h scan.c
}

View file

@ -1,29 +0,0 @@
CFLAGS = -I . \
-DVERSION=\"2.5.14\"
all: flex
flex: ccl.o dfa.o ecs.o gen.o main.o misc.o nfa.o parse.o scan.o skel.o sym.o tblcmp.o yylex.o options.o scanopt.o buf.o
tcc -o $@ $^
%.o: %.c
tcc -g -c $(CFLAGS) -o $@ $<
scan.o: parse.h
yylex.o: parse.h
parse.c parse.h: parse.y
yacc -d parse.y
mv y.tab.h parse.h
mv y.tab.c parse.c
scan.c: scan.l
flex scan.l
mv lex.yy.c scan.c
skel.c: mkskel.sh flex.skl
/bin/sh ./mkskel.sh ./flex.skl > skel.c
install: all
install flex $(PREFIX)/bin
ln -sf $(PREFIX)/bin/flex $(PREFIX)/bin/lex

19
sysa/flex-2.6.4/flex-2.6.4.sh Executable file
View file

@ -0,0 +1,19 @@
src_prepare() {
default_src_prepare
mv Makefile src/
touch src/config.h
rm src/parse.c src/parse.h src/scan.c src/skel.c
}
src_compile() {
cd src
default_src_compile
cd ..
}
src_install() {
cd src
default_src_install
cd ..
}

View file

@ -0,0 +1,41 @@
CC := tcc
CFLAGS = -DVERSION=\"2.6.4\" \
-DM4=\"m4\" \
-DHAVE_LIMITS_H=1
all: flex
flex: buf.o ccl.o dfa.o ecs.o filter.o gen.o main.o misc.o nfa.o options.o parse.o regex.o scan.o scanflags.o scanopt.o skel.o sym.o tables.o tables_shared.o tblcmp.o yylex.o
$(CC) -o $@ $^ -lm
flex-tmp: buf.o ccl.o dfa.o ecs.o filter.o gen.o main.o misc.o nfa.o options.o parse.o regex.o scan-tmp.o scanflags.o scanopt.o skel.o sym.o tables.o tables_shared.o tblcmp.o yylex.o
$(CC) -o $@ $^ -lm
%.o: %.c
$(CC) $(CFLAGS) -g -c -I. -o $@ $<
main.o: parse.h
scan.o: parse.h
scan-tmp.o: parse.h
yylex.o: parse.h
parse.c parse.h: parse.y
yacc -d parse.y
mv y.tab.h parse.h
mv y.tab.c parse.c
echo 'extern int yylval;' >> parse.h
scan-tmp.c: scan.l
flex scan.l
mv lex.yy.c scan-tmp.c
scan.c: scan.l flex-tmp
./flex-tmp scan.l
mv lex.yy.c scan.c
skel.c: mkskel.sh flex.skl
/bin/sh ./mkskel.sh . m4 2.6.4 > skel.c
install: all
install flex $(PREFIX)/bin
ln -sf $(PREFIX)/bin/flex $(PREFIX)/bin/lex

View file

@ -16,12 +16,12 @@ build m4-1.4
build flex-2.5.11
# Part 23
build flex-2.5.14
# Part 24
build musl-1.1.24
# Part 25
# Part 24
build tcc-0.9.27 tcc-musl.sh
# Part 25
build flex-2.6.4
echo "Bootstrapping completed."