mirror of
https://github.com/samba-team/samba.git
synced 2024-12-23 17:34:34 +03:00
r9052: Support lex/yacc compilers without support for -o
(This used to be commit e641d3a847
)
This commit is contained in:
parent
4b8733c245
commit
586838c306
@ -180,7 +180,9 @@ valgrindtest: all
|
||||
./script/tests/selftest.sh ${selftest_prefix}/st quick SOCKET_WRAPPER
|
||||
|
||||
.y.c:
|
||||
$(YACC) -d -o $@ $<
|
||||
@echo "Building $< with $(YACC)"
|
||||
@-$(srcdir)/script/yacc_compile.sh "$(YACC)" "$<" "$@"
|
||||
|
||||
.l.c:
|
||||
$(LEX) -o $@ $<
|
||||
@echo "Building $< with $(LEX)"
|
||||
@-$(srcdir)/script/lex_compile.sh "$(LEX)" "$<" "$@"
|
||||
|
24
source4/script/lex_compile.sh
Executable file
24
source4/script/lex_compile.sh
Executable file
@ -0,0 +1,24 @@
|
||||
#!/bin/sh
|
||||
|
||||
LEX="$1"
|
||||
SRC="$2"
|
||||
DEST="$3"
|
||||
|
||||
dir=`dirname $SRC`
|
||||
file=`basename $SRC`
|
||||
base=`basename $SRC .l`
|
||||
if [ -z "$LEX" ]; then
|
||||
echo "lex not found - not regenerating $DEST"
|
||||
return;
|
||||
fi
|
||||
if [ -r $DEST ]; then
|
||||
if [ x`find $SRC -newer $DEST -print` != x$SRC ]; then
|
||||
return;
|
||||
fi
|
||||
fi
|
||||
TOP=`pwd`
|
||||
if cd $dir && $LEX $file; then
|
||||
sed '/^#/ s|$base.yy\.c|$DEST|' $base.yy.c > $base.c
|
||||
rm -f $base.yy.c
|
||||
fi
|
||||
cd $TOP
|
25
source4/script/yacc_compile.sh
Executable file
25
source4/script/yacc_compile.sh
Executable file
@ -0,0 +1,25 @@
|
||||
#!/bin/sh
|
||||
|
||||
YACC="$1"
|
||||
SRC="$2"
|
||||
DEST="$3"
|
||||
|
||||
dir=`dirname $SRC`
|
||||
file=`basename $SRC`
|
||||
base=`basename $SRC .y`
|
||||
if [ -z "$YACC" ]; then
|
||||
echo "yacc not found"
|
||||
return;
|
||||
fi
|
||||
if [ -r $DEST ]; then
|
||||
if [ x`find $SRC -newer $DEST -print` != x$SRC ]; then
|
||||
return;
|
||||
fi
|
||||
fi
|
||||
TOP=`pwd`
|
||||
if cd $dir && $YACC -d $file; then
|
||||
sed -e "/^#/!b" -e "s|y\.tab\.h|$base.h|" y.tab.h > $base.h
|
||||
sed '/^#/ s|y\.tab\.c|$base.c|' y.tab.c > $base.c
|
||||
rm -f y.tab.c y.tab.h
|
||||
fi
|
||||
cd $TOP
|
Loading…
Reference in New Issue
Block a user