summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/build/smb_build/TODO6
-rw-r--r--source4/client/client.c1
-rw-r--r--source4/include/includes.h13
-rw-r--r--source4/lib/db_wrap.c1
-rw-r--r--source4/lib/ldb/config.mk1
-rw-r--r--source4/lib/ldb/include/includes.h1
-rw-r--r--source4/lib/ldb/tools/cmdline.c1
-rw-r--r--source4/lib/registry/tools/regshell.c1
-rw-r--r--source4/lib/replace/config.mk4
-rw-r--r--source4/lib/replace/readline.m48
-rw-r--r--source4/libcli/config.mk3
-rw-r--r--source4/librpc/config.mk6
-rw-r--r--source4/librpc/ndr/ndr_orpc.h2
-rw-r--r--source4/main.mk20
14 files changed, 43 insertions, 25 deletions
diff --git a/source4/build/smb_build/TODO b/source4/build/smb_build/TODO
index 7d6999e973..53027d33d5 100644
--- a/source4/build/smb_build/TODO
+++ b/source4/build/smb_build/TODO
@@ -1,15 +1,15 @@
-- subdir handler for install headers into a specific directory
- saner names for some of the .pc files
- .pc files also when there is a public header?
- get rid of include/structs.h and include/proto.h
- support including a custom header by librpc/gen_ndr/*.c files
+ - if a ndr_.*_man.h file exists, include it.
- plugin loading support in ldb
-- add register function to smbtorture
- proper #include dependencies:
for each subsystem:
- include line in Makefile
- rule in Makefile
-- install (parts of ?) autogenerated headers
+- install autogenerated headers (seperate directory)
+- subdir handler for install headers into a specific directory
set of test scripts that check the code:
- configure_check_unused.pl
diff --git a/source4/client/client.c b/source4/client/client.c
index a9d7f6cd47..7f043f9a5d 100644
--- a/source4/client/client.c
+++ b/source4/client/client.c
@@ -37,6 +37,7 @@
#include "system/time.h" /* needed by some systems for asctime() */
#include "libcli/resolve/resolve.h"
#include "libcli/security/proto.h"
+#include "lib/replace/readline.h"
static int io_bufsize = 64512;
diff --git a/source4/include/includes.h b/source4/include/includes.h
index fb3bf44bf4..68d4d0e4a2 100644
--- a/source4/include/includes.h
+++ b/source4/include/includes.h
@@ -125,12 +125,19 @@ enum brl_type {
#include "libcli/nbt/libnbt.h"
#include "libcli/util/proto.h"
+/* These headers are used by the NDR parsers. They are globally
+ * included at the moment, but will be included by the autogenerated
+ * NDR parsers later on and removed from here. */
+#include "libcli/nbt/nbtname.h"
+#include "librpc/ndr/ndr_sec.h"
+#include "librpc/ndr/ndr_drsuapi.h"
+#include "librpc/ndr/ndr_spoolss_buf.h"
+#include "librpc/ndr/ndr_krb5pac.h"
+#include "librpc/ndr/ndr_compression.h"
+
#undef _PRINTF_ATTRIBUTE
#define _PRINTF_ATTRIBUTE(a1, a2)
-/***** automatically generated prototypes *****/
-#include "include/proto.h"
-
/* String routines */
#include "util/safe_string.h"
diff --git a/source4/lib/db_wrap.c b/source4/lib/db_wrap.c
index d2481994c6..edcea2b933 100644
--- a/source4/lib/db_wrap.c
+++ b/source4/lib/db_wrap.c
@@ -32,6 +32,7 @@
#include "lib/events/events.h"
#include "lib/tdb/include/tdb.h"
#include "lib/ldb/include/ldb.h"
+#include "lib/ldb/samba/ldif_handlers.h"
#include "db_wrap.h"
static struct tdb_wrap *tdb_list;
diff --git a/source4/lib/ldb/config.mk b/source4/lib/ldb/config.mk
index 5fbe782626..44e6bbd43b 100644
--- a/source4/lib/ldb/config.mk
+++ b/source4/lib/ldb/config.mk
@@ -162,6 +162,7 @@ PUBLIC_HEADERS = include/ldb.h
################################################
# Start SUBSYSTEM LDBSAMBA
[SUBSYSTEM::LDBSAMBA]
+PRIVATE_PROTO_HEADER = samba/ldif_handlers.h
REQUIRED_SUBSYSTEMS = LIB_SECURITY SAMDB
OBJ_FILES = \
samba/ldif_handlers.o
diff --git a/source4/lib/ldb/include/includes.h b/source4/lib/ldb/include/includes.h
index c85ffadb6d..d8e2125eaa 100644
--- a/source4/lib/ldb/include/includes.h
+++ b/source4/lib/ldb/include/includes.h
@@ -38,6 +38,7 @@
#define discard_const(ptr) ((void *)((intptr_t)(ptr)))
#define discard_const_p(type, ptr) ((type *)discard_const(ptr))
+#include "lib/ldb/samba/ldif_handlers.h"
#include "talloc.h"
#endif /*_SAMBA_BUILD_*/
diff --git a/source4/lib/ldb/tools/cmdline.c b/source4/lib/ldb/tools/cmdline.c
index 31cfcc1d08..fa01f5c3fb 100644
--- a/source4/lib/ldb/tools/cmdline.c
+++ b/source4/lib/ldb/tools/cmdline.c
@@ -28,6 +28,7 @@
#ifdef _SAMBA_BUILD_
#include "lib/cmdline/popt_common.h"
+#include "lib/ldb/samba/ldif_handlers.h"
#include "auth/auth.h"
#include "db_wrap.h"
#endif
diff --git a/source4/lib/registry/tools/regshell.c b/source4/lib/registry/tools/regshell.c
index 4d1bb95f35..8829d862d3 100644
--- a/source4/lib/registry/tools/regshell.c
+++ b/source4/lib/registry/tools/regshell.c
@@ -24,6 +24,7 @@
#include "lib/cmdline/popt_common.h"
#include "lib/registry/reg_backend_rpc.h"
#include "system/time.h"
+#include "lib/replace/readline.h"
/*
* ck/cd - change key
diff --git a/source4/lib/replace/config.mk b/source4/lib/replace/config.mk
index 459465c64f..386029a7eb 100644
--- a/source4/lib/replace/config.mk
+++ b/source4/lib/replace/config.mk
@@ -18,3 +18,7 @@ NOPROTO = YES
REQUIRED_SUBSYSTEMS = REPLACE_READDIR
# End SUBSYSTEM LIBREPLACE
##############################
+
+[SUBSYSTEM::SMBREADLINE]
+OBJ_FILES = readline.o
+PRIVATE_PROTO_HEADER = readline.h
diff --git a/source4/lib/replace/readline.m4 b/source4/lib/replace/readline.m4
index 8248a1d900..2e42befd6f 100644
--- a/source4/lib/replace/readline.m4
+++ b/source4/lib/replace/readline.m4
@@ -72,14 +72,10 @@ AC_MSG_CHECKING(whether to use extern readline)
if test x"$EXTERNAL_READLINE" = x"yes"; then
AC_MSG_RESULT(yes)
AC_DEFINE(HAVE_LIBREADLINE,1,[Whether the system has readline])
- SMB_SUBSYSTEM(LIBREADLINE,
- [lib/replace/readline.o],
- [EXT_LIB_READLINE])
+ SMB_SUBSYSTEM(LIBREADLINE, [], [SMBREADLINE EXT_LIB_READLINE])
SMB_EXT_LIB(READLINE, [${TERMLIBS}])
SMB_EXT_LIB_ENABLE(READLINE,YES)
else
- SMB_SUBSYSTEM(LIBREADLINE,
- [lib/replace/readline.o],
- [])
+ SMB_SUBSYSTEM(LIBREADLINE, [], [SMBREADLINE])
AC_MSG_RESULT(no)
fi
diff --git a/source4/libcli/config.mk b/source4/libcli/config.mk
index 41faf36237..0ccf1d7126 100644
--- a/source4/libcli/config.mk
+++ b/source4/libcli/config.mk
@@ -36,7 +36,8 @@ OBJ_FILES = \
REQUIRED_SUBSYSTEMS = LIBCLI_COMPOSITE
[SUBSYSTEM::NDR_NBT_BUF]
-OBJ_FILES = nbt/nbtname.o\
+PRIVATE_PROTO_HEADER = nbt/nbtname.h
+OBJ_FILES = nbt/nbtname.o
[LIBRARY::LIBCLI_NBT]
VERSION = 0.0.1
diff --git a/source4/librpc/config.mk b/source4/librpc/config.mk
index a3f6a82597..6d63b1bde8 100644
--- a/source4/librpc/config.mk
+++ b/source4/librpc/config.mk
@@ -22,6 +22,7 @@ REQUIRED_SUBSYSTEMS = LIBCLI_UTILS LIBTALLOC
VERSION = 0.0.1
SO_VERSION = 0.0.1
DESCRIPTION = NDR support for compressed subcontexts
+PRIVATE_PROTO_HEADER = ndr/ndr_compression.h
OBJ_FILES = \
ndr/ndr_compression.o
REQUIRED_SUBSYSTEMS = LIBCOMPRESSION
@@ -29,6 +30,7 @@ REQUIRED_SUBSYSTEMS = LIBCOMPRESSION
################################################
[SUBSYSTEM::NDR_SECURITY_HELPER]
+PRIVATE_PROTO_HEADER = ndr/ndr_sec.h
OBJ_FILES = ndr/ndr_sec_helper.o ndr/ndr_sec.o
[LIBRARY::NDR_SECURITY]
@@ -144,6 +146,7 @@ NOPROTO = YES
REQUIRED_SUBSYSTEMS = LIBNDR NDR_DRSUAPI_PRINT NDR_COMPRESSION NDR_SECURITY
[SUBSYSTEM::NDR_DRSUAPI_PRINT]
+PRIVATE_PROTO_HEADER = ndr/ndr_drsuapi.h
OBJ_FILES = ndr/ndr_drsuapi.o
[LIBRARY::NDR_DRSBLOBS]
@@ -195,6 +198,7 @@ NOPROTO = YES
REQUIRED_SUBSYSTEMS = LIBNDR NDR_SPOOLSS_BUF
[SUBSYSTEM::NDR_SPOOLSS_BUF]
+PRIVATE_PROTO_HEADER = ndr/ndr_spoolss_buf.h
OBJ_FILES = ndr/ndr_spoolss_buf.o
[LIBRARY::NDR_WKSSVC]
@@ -318,6 +322,7 @@ NOPROTO = YES
REQUIRED_SUBSYSTEMS = LIBNDR NDR_ORPC
[SUBSYSTEM::NDR_ORPC_MANUAL]
+PRIVATE_PROTO_HEADER = ndr/ndr_orpc_proto.h
OBJ_FILES = ndr/ndr_orpc.o
[LIBRARY::NDR_ORPC]
@@ -417,6 +422,7 @@ NOPROTO = YES
REQUIRED_SUBSYSTEMS = LIBNDR NDR_KRB5PAC_UTIL NDR_NETLOGON
[SUBSYSTEM::NDR_KRB5PAC_UTIL]
+PRIVATE_PROTO_HEADER = ndr/ndr_krb5pac.h
OBJ_FILES = ndr/ndr_krb5pac.o
[LIBRARY::NDR_XATTR]
diff --git a/source4/librpc/ndr/ndr_orpc.h b/source4/librpc/ndr/ndr_orpc.h
index d1817969a4..6c35d01067 100644
--- a/source4/librpc/ndr/ndr_orpc.h
+++ b/source4/librpc/ndr/ndr_orpc.h
@@ -34,4 +34,6 @@ struct DUALSTRINGARRAY
struct SECURITYBINDING **securitybindings;
};
+#include "librpc/ndr/ndr_orpc_proto.h"
+
#endif /* __NDR_ORPC_H__ */
diff --git a/source4/main.mk b/source4/main.mk
index cea417d302..6e1584c61f 100644
--- a/source4/main.mk
+++ b/source4/main.mk
@@ -218,14 +218,6 @@ include/config.h:
@echo "You need to rerun ./autogen.sh and ./configure"
@/bin/false
-include/proto.h: $(PROTO_OBJS:.o=.c)
- @echo "Creating include/proto.h"
- @$(PERL) $(srcdir)/script/mkproto.pl --public-define=_PROTO_H_ \
- --public=include/proto.h --private=include/proto.h \
- $(PROTO_OBJS)
-
-proto: include/proto.h
-
librpc/gen_ndr/misc.h: idl
librpc/ndr/libndr.h: librpc/ndr/libndr_proto.h librpc/gen_ndr/misc.h
librpc/rpc/dcerpc.h: librpc/rpc/dcerpc_proto.h
@@ -235,7 +227,6 @@ lib/charset/charset.h: lib/charset/charset_proto.h
include/includes.h: \
include/config.h \
- include/proto.h \
librpc/ndr/libndr.h \
librpc/rpc/dcerpc.h \
auth/credentials/credentials_proto.h \
@@ -243,7 +234,14 @@ include/includes.h: \
lib/util/util_proto.h \
lib/charset/charset.h \
param/param.h \
- libcli/util/proto.h
+ libcli/util/proto.h \
+ librpc/ndr/ndr_orpc_proto.h \
+ libcli/nbt/nbtname.h \
+ librpc/ndr/ndr_sec.h \
+ librpc/ndr/ndr_drsuapi.h \
+ librpc/ndr/ndr_spoolss_buf.h \
+ librpc/ndr/ndr_krb5pac.h \
+ librpc/ndr/ndr_compression.h
clean_pch:
-rm -f include/includes.h.gch
@@ -256,8 +254,6 @@ basics: include/includes.h \
heimdal_basics
clean: heimdal_clean clean_pch
- @echo Removing headers
- @-rm -f include/proto.h
@echo Removing objects
@-find . -name '*.o' -exec rm -f '{}' \;
@echo Removing hostcc objects