diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2008-05-19 02:03:00 +0200 |
---|---|---|
committer | Jelmer Vernooij <jelmer@samba.org> | 2008-05-19 02:03:00 +0200 |
commit | 32dfdae009132ed2152f1c3ba242df630c0d9e22 (patch) | |
tree | 1fbbad81e8d8f9e5efd75c004ca240056d730739 /source4 | |
parent | 60ae8f06574c74261643f469e6be2a945fd90880 (diff) | |
download | samba-32dfdae009132ed2152f1c3ba242df630c0d9e22.tar.gz samba-32dfdae009132ed2152f1c3ba242df630c0d9e22.tar.bz2 samba-32dfdae009132ed2152f1c3ba242df630c0d9e22.zip |
Move IDL build script to rpc directory, make various bits and pieces easier to use externally.
(This used to be commit 8328ff76416df5a6e05461d3a19f510b76f2e902)
Diffstat (limited to 'source4')
-rw-r--r-- | source4/configure.ac | 2 | ||||
-rw-r--r-- | source4/librpc/config.mk | 16 | ||||
-rwxr-xr-x | source4/librpc/idl-deps.pl | 22 | ||||
-rwxr-xr-x | source4/librpc/scripts/build_idl.sh (renamed from source4/script/build_idl.sh) | 16 | ||||
-rw-r--r-- | source4/main.mk | 92 | ||||
-rw-r--r-- | source4/pidl/config.mk | 15 | ||||
-rw-r--r-- | source4/torture/local/config.mk | 50 |
7 files changed, 109 insertions, 104 deletions
diff --git a/source4/configure.ac b/source4/configure.ac index 73d3ffd4d9..34657cf6f9 100644 --- a/source4/configure.ac +++ b/source4/configure.ac @@ -162,7 +162,7 @@ CPPFLAGS="$builddir_headers-I\$(srcdir)/include -I\$(srcdir) -I\$(srcdir)/lib -I SMB_WRITE_PERLVARS(build/smb_build/config.pm) -echo "configure: creating config.mk" +../../source/echo "configure: creating config.mk" cat >config.mk<<CEOF # config.mk - Autogenerated by configure, DO NOT EDIT! $SMB_INFO_EXT_LIBS diff --git a/source4/librpc/config.mk b/source4/librpc/config.mk index f25f90c96d..b9f79a51e6 100644 --- a/source4/librpc/config.mk +++ b/source4/librpc/config.mk @@ -359,7 +359,7 @@ include $(librpcsrcdir)/idl-deps $(gen_ndrsrcdir)/tables.c: $(IDL_NDR_PARSE_H_FILES) @echo Generating $@ - @$(PERL) $(srcdir)/$(librpcsrcdir)/tables.pl --output=$@ $^ > $(gen_ndrsrcdir)/tables.x + @$(PERL) $(librpcsrcdir)/tables.pl --output=$@ $^ > $(gen_ndrsrcdir)/tables.x @mv $(gen_ndrsrcdir)/tables.x $@ [SUBSYSTEM::NDR_TABLE] @@ -801,3 +801,17 @@ python_drsuapi_OBJ_FILES = $(gen_ndrsrcdir)/py_drsuapi.o PRIVATE_DEPENDENCIES = PYTALLOC python_dcerpc_security_OBJ_FILES = $(gen_ndrsrcdir)/py_security.o + +$(IDL_HEADER_FILES) $(IDL_NDR_PARSE_H_FILES) $(IDL_NDR_PARSE_C_FILES) \ + $(IDL_NDR_CLIENT_C_FILES) $(IDL_NDR_CLIENT_H_FILES) \ + $(IDL_NDR_SERVER_C_FILES) $(IDL_SWIG_FILES) \ + $(IDL_NDR_EJS_C_FILES) $(IDL_NDR_EJS_H_FILES) \ + $(IDL_NDR_PY_C_FILES) $(IDL_NDR_PY_H_FILES): idl + +idl_full:: $(pidldir)/lib/Parse/Pidl/IDL.pm $(pidldir)/lib/Parse/Pidl/Expr.pm + @CPP="$(CPP)" PIDL="$(PIDL)" $(librpcsrcdir)/scripts/build_idl.sh FULL $(librpcsrcdir)/idl $(librpcsrcdir)/gen_ndr + +idl:: $(pidldir)/lib/Parse/Pidl/IDL.pm $(pidldir)/lib/Parse/Pidl/Expr.pm + @CPP="$(CPP)" PIDL="$(PIDL)" $(librpcsrcdir)/scripts/build_idl.sh PARTIAL $(librpcsrcdir)/idl $(librpcsrcdir)/gen_ndr + + diff --git a/source4/librpc/idl-deps.pl b/source4/librpc/idl-deps.pl index d5bfe0b2ec..e630ee4f61 100755 --- a/source4/librpc/idl-deps.pl +++ b/source4/librpc/idl-deps.pl @@ -6,17 +6,17 @@ my %vars = (); foreach(@ARGV) { push (@{$vars{IDL_FILES}}, $_); my $b = $_; $b =~ s/.*\/(.*?).idl$/$1/; - push (@{$vars{IDL_HEADER_FILES}}, "librpc/gen_ndr/$b.h"); - push (@{$vars{IDL_NDR_PARSE_H_FILES}}, "librpc/gen_ndr/ndr_$b.h"); - push (@{$vars{IDL_NDR_PARSE_C_FILES}}, "librpc/gen_ndr/ndr_$b.c"); - push (@{$vars{IDL_NDR_CLIENT_C_FILES}}, "librpc/gen_ndr/ndr_$b\_c.c"); - push (@{$vars{IDL_NDR_CLIENT_H_FILES}}, "librpc/gen_ndr/ndr_$b\_c.h"); - push (@{$vars{IDL_SWIG_FILES}}, "librpc/gen_ndr/$b.i"); - push (@{$vars{IDL_NDR_SERVER_C_FILES}}, "librpc/gen_ndr/ndr_$b\_s.c"); - push (@{$vars{IDL_NDR_EJS_C_FILES}}, "librpc/gen_ndr/ndr_$b\_ejs.c"); - push (@{$vars{IDL_NDR_EJS_H_FILES}}, "librpc/gen_ndr/ndr_$b\_ejs.h"); - push (@{$vars{IDL_NDR_PY_C_FILES}}, "librpc/gen_ndr/py_$b.c"); - push (@{$vars{IDL_NDR_PY_H_FILES}}, "librpc/gen_ndr/py_$b.h"); + push (@{$vars{IDL_HEADER_FILES}}, "\$(librpcsrcdir)/gen_ndr/$b.h"); + push (@{$vars{IDL_NDR_PARSE_H_FILES}}, "\$(librpcsrcdir)/gen_ndr/ndr_$b.h"); + push (@{$vars{IDL_NDR_PARSE_C_FILES}}, "\$(librpcsrcdir)/gen_ndr/ndr_$b.c"); + push (@{$vars{IDL_NDR_CLIENT_C_FILES}}, "\$(librpcsrcdir)/gen_ndr/ndr_$b\_c.c"); + push (@{$vars{IDL_NDR_CLIENT_H_FILES}}, "\$(librpcsrcdir)/gen_ndr/ndr_$b\_c.h"); + push (@{$vars{IDL_SWIG_FILES}}, "\$(librpcsrcdir)/gen_ndr/$b.i"); + push (@{$vars{IDL_NDR_SERVER_C_FILES}}, "\$(librpcsrcdir)/gen_ndr/ndr_$b\_s.c"); + push (@{$vars{IDL_NDR_EJS_C_FILES}}, "\$(librpcsrcdir)/gen_ndr/ndr_$b\_ejs.c"); + push (@{$vars{IDL_NDR_EJS_H_FILES}}, "\$(librpcsrcdir)/gen_ndr/ndr_$b\_ejs.h"); + push (@{$vars{IDL_NDR_PY_C_FILES}}, "\$(librpcsrcdir)/gen_ndr/py_$b.c"); + push (@{$vars{IDL_NDR_PY_H_FILES}}, "\$(librpcsrcdir)/gen_ndr/py_$b.h"); } foreach (keys %vars) { diff --git a/source4/script/build_idl.sh b/source4/librpc/scripts/build_idl.sh index ea0cb78b0e..5796f40c61 100755 --- a/source4/script/build_idl.sh +++ b/source4/librpc/scripts/build_idl.sh @@ -1,24 +1,26 @@ #!/bin/sh FULLBUILD=$1 -shift 1 +IDLDIR=$2 +OUTDIR=$3 +shift 3 PIDL_EXTRA_ARGS="$*" -[ -d librpc/gen_ndr ] || mkdir -p librpc/gen_ndr || exit 1 +[ -d $OUTDIR ] || mkdir -p $OUTDIR || exit 1 -PIDL="$PERL $srcdir/pidl/pidl --outputdir librpc/gen_ndr --header --ndr-parser --server --client --swig --ejs --python $PIDL_EXTRA_ARGS" +PIDL="$PIDL --outputdir $OUTDIR --header --ndr-parser --server --client --swig --ejs --python $PIDL_EXTRA_ARGS" if [ x$FULLBUILD = xFULL ]; then - echo Rebuilding all idl files in librpc/idl - $PIDL $srcdir/librpc/idl/*.idl || exit 1 + echo Rebuilding all idl files in $IDLDIR + $PIDL $IDLDIR/*.idl || exit 1 exit 0 fi list="" -for f in $srcdir/librpc/idl/*.idl ; do +for f in $IDLDIR/*.idl ; do basename=`basename $f .idl` - ndr="librpc/gen_ndr/ndr_$basename.c" + ndr="$OUTDIR/ndr_$basename.c" # blergh - most shells don't have the -nt function if [ -f $ndr ]; then if [ x`find $f -newer $ndr -print` = x$f ]; then diff --git a/source4/main.mk b/source4/main.mk index 5e31044c09..4036d366f2 100644 --- a/source4/main.mk +++ b/source4/main.mk @@ -1,95 +1,95 @@ mkinclude dynconfig.mk -heimdalsrcdir := heimdal +heimdalsrcdir := $(srcdir)/../samba4/source/heimdal mkinclude heimdal_build/config.mk mkinclude config.mk -dsdbsrcdir := dsdb +dsdbsrcdir := $(srcdir)/../samba4/source/dsdb mkinclude dsdb/config.mk -smbdsrcdir := smbd +smbdsrcdir := $(srcdir)/../samba4/source/smbd mkinclude smbd/config.mk -clustersrcdir := cluster +clustersrcdir := $(srcdir)/../samba4/source/cluster mkinclude cluster/config.mk mkinclude smbd/process_model.mk -libnetsrcdir := libnet +libnetsrcdir := $(srcdir)/../samba4/source/libnet mkinclude libnet/config.mk -authsrcdir := auth +authsrcdir := $(srcdir)/../samba4/source/auth mkinclude auth/config.mk -nsswitchsrcdir := nsswitch +nsswitchsrcdir := $(srcdir)/../samba4/source/nsswitch mkinclude nsswitch/config.mk -libsrcdir := lib +libsrcdir := $(srcdir)/../samba4/source/lib mkinclude lib/samba3/config.mk -libsocketsrcdir := lib/socket +libsocketsrcdir := $(srcdir)/../samba4/source/lib/socket mkinclude lib/socket/config.mk -libcharsetsrcdir := lib/charset +libcharsetsrcdir := $(srcdir)/../samba4/source/lib/charset mkinclude lib/charset/config.mk -ldb_sambasrcdir := lib/ldb-samba +ldb_sambasrcdir := $(srcdir)/../samba4/source/lib/ldb-samba mkinclude lib/ldb-samba/config.mk -libtlssrcdir := lib/tls +libtlssrcdir := $(srcdir)/../samba4/source/lib/tls mkinclude lib/tls/config.mk -libregistrysrcdir := lib/registry +libregistrysrcdir := $(srcdir)/../samba4/source/lib/registry mkinclude lib/registry/config.mk -libmessagingsrcdir := lib/messaging +libmessagingsrcdir := $(srcdir)/../samba4/source/lib/messaging mkinclude lib/messaging/config.mk -libeventssrcdir := lib/events +libeventssrcdir := $(srcdir)/../samba4/source/lib/events mkinclude lib/events/config.mk -libcmdlinesrcdir := lib/cmdline +libcmdlinesrcdir := $(srcdir)/../samba4/source/lib/cmdline mkinclude lib/cmdline/config.mk -socketwrappersrcdir := lib/socket_wrapper +socketwrappersrcdir := $(srcdir)/../samba4/source/lib/socket_wrapper mkinclude lib/socket_wrapper/config.mk -nsswrappersrcdir := lib/nss_wrapper +nsswrappersrcdir := $(srcdir)/../samba4/source/lib/nss_wrapper mkinclude lib/nss_wrapper/config.mk -appwebsrcdir := lib/appweb +appwebsrcdir := $(srcdir)/../samba4/source/lib/appweb mkinclude lib/appweb/config.mk -libstreamsrcdir := lib/stream +libstreamsrcdir := $(srcdir)/../samba4/source/lib/stream mkinclude lib/stream/config.mk -libutilsrcdir := lib/util +libutilsrcdir := $(srcdir)/../samba4/source/lib/util mkinclude lib/util/config.mk -libtdrsrcdir := lib/tdr +libtdrsrcdir := $(srcdir)/../samba4/source/lib/tdr mkinclude lib/tdr/config.mk -libdbwrapsrcdir := lib/dbwrap +libdbwrapsrcdir := $(srcdir)/../samba4/source/lib/dbwrap mkinclude lib/dbwrap/config.mk -libcryptosrcdir := lib/crypto +libcryptosrcdir := $(srcdir)/../samba4/source/lib/crypto mkinclude lib/crypto/config.mk -libtorturesrcdir := lib/torture +libtorturesrcdir := $(srcdir)/../samba4/source/lib/torture mkinclude lib/torture/config.mk -libcompressionsrcdir := lib/compression -libgencachesrcdir := lib +libcompressionsrcdir := $(srcdir)/../samba4/source/lib/compression +libgencachesrcdir := $(srcdir)/../samba4/source/lib mkinclude lib/basic.mk -paramsrcdir := param +paramsrcdir := $(srcdir)/../samba4/source/param mkinclude param/config.mk -smb_serversrcdir := smb_server +smb_serversrcdir := $(srcdir)/../samba4/source/smb_server mkinclude smb_server/config.mk -rpc_serversrcdir := rpc_server +rpc_serversrcdir := $(srcdir)/../samba4/source/rpc_server mkinclude rpc_server/config.mk -ldap_serversrcdir := ldap_server +ldap_serversrcdir := $(srcdir)/../samba4/source/ldap_server mkinclude ldap_server/config.mk -web_serversrcdir := web_server +web_serversrcdir := $(srcdir)/../samba4/source/web_server mkinclude web_server/config.mk -winbindsrcdir := winbind +winbindsrcdir := $(srcdir)/../samba4/source/winbind mkinclude winbind/config.mk -nbt_serversrcdir := nbt_server +nbt_serversrcdir := $(srcdir)/../samba4/source/nbt_server mkinclude nbt_server/config.mk -wrepl_serversrcdir := wrepl_server +wrepl_serversrcdir := $(srcdir)/../samba4/source/wrepl_server mkinclude wrepl_server/config.mk -cldap_serversrcdir := cldap_server +cldap_serversrcdir := $(srcdir)/../samba4/source/cldap_server mkinclude cldap_server/config.mk -utilssrcdir := utils +utilssrcdir := $(srcdir)/../samba4/source/utils mkinclude utils/net/config.mk mkinclude utils/config.mk -ntvfssrcdir := ntvfs +ntvfssrcdir := $(srcdir)/../samba4/source/ntvfs mkinclude ntvfs/config.mk -ntptrsrcdir := ntptr +ntptrsrcdir := $(srcdir)/../samba4/source/ntptr mkinclude ntptr/config.mk -torturesrcdir := torture +torturesrcdir := $(srcdir)/../samba4/source/torture mkinclude torture/config.mk -librpcsrcdir := librpc +librpcsrcdir := $(srcdir)/../samba4/source/librpc mkinclude librpc/config.mk -clientsrcdir := client +clientsrcdir := $(srcdir)/../samba4/source/client mkinclude client/config.mk -libclisrcdir := libcli +libclisrcdir := $(srcdir)/../samba4/source/libcli mkinclude libcli/config.mk -ejsscriptsrcdir := scripting/ejs +ejsscriptsrcdir := $(srcdir)/../samba4/source/scripting/ejs mkinclude scripting/ejs/config.mk -pyscriptsrcdir := scripting/python +pyscriptsrcdir := $(srcdir)/../samba4/source/scripting/python mkinclude scripting/python/config.mk -kdcsrcdir := kdc +kdcsrcdir := $(srcdir)/../samba4/source/kdc mkinclude kdc/config.mk diff --git a/source4/pidl/config.mk b/source4/pidl/config.mk index 7cc56a58cc..07c8647ecd 100644 --- a/source4/pidl/config.mk +++ b/source4/pidl/config.mk @@ -1,3 +1,5 @@ +PIDL = $(PERL) $(pidldir)/pidl + $(pidldir)/Makefile: $(pidldir)/Makefile.PL cd $(pidldir) && $(PERL) Makefile.PL PREFIX=$(prefix) @@ -16,12 +18,6 @@ ifeq ($(HAVE_PERL_EXTUTILS_MAKEMAKER),1) install:: installpidl endif -idl_full:: $(pidldir)/lib/Parse/Pidl/IDL.pm $(pidldir)/lib/Parse/Pidl/Expr.pm - @CPP="$(CPP)" PERL="$(PERL)" srcdir=$(srcdir) $(srcdir)/script/build_idl.sh FULL - -idl:: $(pidldir)/lib/Parse/Pidl/IDL.pm $(pidldir)/lib/Parse/Pidl/Expr.pm - @CPP="$(CPP)" PERL="$(PERL)" srcdir=$(srcdir) $(srcdir)/script/build_idl.sh PARTIAL - $(pidldir)/lib/Parse/Pidl/IDL.pm: $(pidldir)/idl.yp -$(YAPP) -m 'Parse::Pidl::IDL' -o $(pidldir)/lib/Parse/Pidl/IDL.pm $(pidldir)/idl.yp ||\ touch $(pidldir)/lib/Parse/Pidl/IDL.pm @@ -32,11 +28,4 @@ $(pidldir)/lib/Parse/Pidl/Expr.pm: $(pidldir)/idl.yp testcov-html:: pidl-testcov -$(IDL_HEADER_FILES) \ - $(IDL_NDR_PARSE_H_FILES) $(IDL_NDR_PARSE_C_FILES) \ - $(IDL_NDR_CLIENT_C_FILES) $(IDL_NDR_CLIENT_H_FILES) \ - $(IDL_NDR_SERVER_C_FILES) $(IDL_SWIG_FILES) \ - $(IDL_NDR_EJS_C_FILES) $(IDL_NDR_EJS_H_FILES) \ - $(IDL_NDR_PY_C_FILES) $(IDL_NDR_PY_H_FILES): idl - diff --git a/source4/torture/local/config.mk b/source4/torture/local/config.mk index 3ec2ae5fae..cd1c7b1422 100644 --- a/source4/torture/local/config.mk +++ b/source4/torture/local/config.mk @@ -19,31 +19,31 @@ PRIVATE_DEPENDENCIES = \ ################################# TORTURE_LOCAL_OBJ_FILES = \ - lib/charset/tests/iconv.o \ - lib/talloc/testsuite.o \ - lib/replace/test/getifaddrs.o \ - lib/replace/test/os2_delete.o \ - lib/replace/test/strptime.o \ - lib/replace/test/testsuite.o \ - lib/messaging/tests/messaging.o \ - lib/messaging/tests/irpc.o \ - librpc/tests/binding_string.o \ - lib/util/tests/idtree.o \ - lib/socket/testsuite.o \ - lib/socket_wrapper/testsuite.o \ - libcli/resolve/testsuite.o \ - lib/util/tests/strlist.o \ - lib/util/tests/str.o \ - lib/util/tests/file.o \ - lib/util/tests/genrand.o \ - lib/compression/testsuite.o \ - lib/charset/tests/charset.o \ - libcli/security/tests/sddl.o \ - lib/tdr/testsuite.o \ - lib/events/testsuite.o \ - param/tests/share.o \ - param/tests/loadparm.o \ - auth/credentials/tests/simple.o \ + $(torturesrcdir)/../lib/charset/tests/iconv.o \ + $(torturesrcdir)/../lib/talloc/testsuite.o \ + $(torturesrcdir)/../lib/replace/test/getifaddrs.o \ + $(torturesrcdir)/../lib/replace/test/os2_delete.o \ + $(torturesrcdir)/../lib/replace/test/strptime.o \ + $(torturesrcdir)/../lib/replace/test/testsuite.o \ + $(torturesrcdir)/../lib/messaging/tests/messaging.o \ + $(torturesrcdir)/../lib/messaging/tests/irpc.o \ + $(torturesrcdir)/../librpc/tests/binding_string.o \ + $(torturesrcdir)/../lib/util/tests/idtree.o \ + $(torturesrcdir)/../lib/socket/testsuite.o \ + $(torturesrcdir)/../lib/socket_wrapper/testsuite.o \ + $(torturesrcdir)/../libcli/resolve/testsuite.o \ + $(torturesrcdir)/../lib/util/tests/strlist.o \ + $(torturesrcdir)/../lib/util/tests/str.o \ + $(torturesrcdir)/../lib/util/tests/file.o \ + $(torturesrcdir)/../lib/util/tests/genrand.o \ + $(torturesrcdir)/../lib/compression/testsuite.o \ + $(torturesrcdir)/../lib/charset/tests/charset.o \ + $(torturesrcdir)/../libcli/security/tests/sddl.o \ + $(torturesrcdir)/../lib/tdr/testsuite.o \ + $(torturesrcdir)/../lib/events/testsuite.o \ + $(torturesrcdir)/../param/tests/share.o \ + $(torturesrcdir)/../param/tests/loadparm.o \ + $(torturesrcdir)/../auth/credentials/tests/simple.o \ $(torturesrcdir)/local/local.o \ $(torturesrcdir)/local/dbspeed.o \ $(torturesrcdir)/local/torture.o |