From d1f4ba08df3844a0d6af5e39ac66e724e68c32b3 Mon Sep 17 00:00:00 2001 From: Andrew Bartlett Date: Wed, 10 Nov 2004 03:08:59 +0000 Subject: r3651: Add a new configure option --with-eparserdir This allows us to call 'make eparser_idl', generate the files required by the ethereal pidl plugin, and put them in the right place. (See lorikeet/ethereal) Andrew Bartlett (This used to be commit bd9497b092335b2646a1955ea7c55ad33eb7d538) --- source4/build/smb_build/check_path.m4 | 19 +++++++++++++++++++ source4/build/smb_build/makefile.pl | 7 ++++++- source4/script/build_idl.sh | 7 +++++++ 3 files changed, 32 insertions(+), 1 deletion(-) diff --git a/source4/build/smb_build/check_path.m4 b/source4/build/smb_build/check_path.m4 index bfd15d3d8c..5ceda46d87 100644 --- a/source4/build/smb_build/check_path.m4 +++ b/source4/build/smb_build/check_path.m4 @@ -107,6 +107,24 @@ AC_ARG_WITH(logfilebase, ;; esac]) +################################################# +# set configuration directory location +eparserdir="" + +AC_ARG_WITH(eparserdir, +[ --with-eparserdir=DIR Where to put output for the Ethereal/PIDL plugin], +[ case "$withval" in + yes|no) + # + # Just in case anybody does it + # + AC_MSG_ERROR([--with-eparserdir called without argument]) + ;; + * ) + eparserdir="$withval" + ;; + esac]) + AC_SUBST(configdir) AC_SUBST(lockdir) AC_SUBST(piddir) @@ -114,6 +132,7 @@ AC_SUBST(logfilebase) AC_SUBST(privatedir) AC_SUBST(bindir) AC_SUBST(sbindir) +AC_SUBST(eparserdir) debug=no AC_ARG_ENABLE(debug, diff --git a/source4/build/smb_build/makefile.pl b/source4/build/smb_build/makefile.pl index 9664728e93..a5e86e76f0 100644 --- a/source4/build/smb_build/makefile.pl +++ b/source4/build/smb_build/makefile.pl @@ -29,6 +29,7 @@ exec_prefix=\@exec_prefix\@ VPATH=\@srcdir\@ srcdir=\@srcdir\@ builddir=\@builddir\@ +eparserdir=\@eparserdir\@ BASEDIR= \@prefix\@ BINDIR = \@bindir\@ @@ -37,6 +38,7 @@ LIBDIR = \@libdir\@ CONFIGDIR = \@configdir\@ VARDIR = \@localstatedir\@ + # The permissions to give the executables INSTALLPERMS = 0755 @@ -125,7 +127,10 @@ idl_full: build/pidl/idl.pm CPP=\"\@CPP\@\" PERL=\"\$(PERL)\" script/build_idl.sh FULL idl: build/pidl/idl.pm - \@CPP=\"\@CPP\@\" script/build_idl.sh + \@CPP=\"\@CPP\@\" script/build_idl.sh PARTIAL + +eparser_idl: build/pidl/idl.pm + CPP=\"\@CPP\@\" PERL=\"\$(PERL)\" EPARSERPREFIX=\"\$(eparserdir)\" script/build_idl.sh EPARSER build/pidl/idl.pm: build/pidl/idl.yp -yapp -s build/pidl/idl.yp diff --git a/source4/script/build_idl.sh b/source4/script/build_idl.sh index ec67c0aec0..6e4e049cb7 100755 --- a/source4/script/build_idl.sh +++ b/source4/script/build_idl.sh @@ -5,6 +5,7 @@ FULLBUILD=$1 [ -d librpc/gen_ndr ] || mkdir -p librpc/gen_ndr || exit 1 PIDL="$PERL ./build/pidl/pidl.pl --output librpc/gen_ndr/ndr_ --parse --header --parser --server" +EPARSERPIDL="$PERL ./build/pidl/pidl.pl --output $EPARSERPREFIX/ndr_ --parse --header --eparser" TABLES="$PERL ./build/pidl/tables.pl --output librpc/gen_ndr/tables" if [ x$FULLBUILD = xFULL ]; then @@ -16,6 +17,12 @@ if [ x$FULLBUILD = xFULL ]; then exit 0 fi +if [ x$FULLBUILD = xEPARSER ]; then + echo Rebuilding all idl files in librpc/idl + $EPARSERPIDL librpc/idl/*.idl || exit 1 + exit 0 +fi + list="" for f in librpc/idl/*.idl; do -- cgit