[PATCH] samba-devel
Alexander Bokovoy
a.bokovoy at sam-solutions.net
Wed Nov 12 03:18:21 GMT 2003
Hi Stefan!
On Tue, Nov 11, 2003 at 08:09:32PM +0100, Stefan Metzmacher wrote:
> here's my samba-devel patch
Thank you!
> 1) It adds a sambabuild util which gives modules some usefull info:
>
> metze at routox:/home/Projects/samba/3_0-ioctl/source> sambabuild --help
> Usage: [OPTION...]
> --cflags Print flags to pass to c compiler
> --cppflags Print flags to pass to the c pre
> compiler
Preprocessor would be more correct word :)
> --picflags Print flags for PIC
> --ldflags Print flags to pass to linker
> --ldshflags Print flags to pass to linker for
> shared libraries
> -S, --subsystem-path=SUBSYSTEM Print installation directory for
> subsystem
> -M, --makefile-var=MAKEFILE-VAR Print Makefile var
> -H, --header-file=SYSTEM Print Headerfile location for system
> -v, --version-string=VERSION-STRING Print Makefile var
> -b, --build-options Print build options
>
> Help options
> -?, --help Show this help message
> --usage Display brief usage message
>
> Common samba options:
> -V, --version Print version
>
>
> Some examples:
[strip]
Looks good on examples, I'm continue to look into the code during this
week and then add this to HEAD with needed changes (if any). If Jerry
wouldn't object after some time of testing in HEAD, it would go into
SAMBA_3_0 branch.
Samba4 would benefit from this as well but we need to port existing
modules' subsystem there.
> 2) it adds a configure option
> --with-devel-subdir=DIR Where to put the devel headers (default=samba)
Probably $prefix/include/samba?
> 3.1) it adds a make devel
> prepare the headers for /usr/include/samba
>
> #include "vfs.h"
> =>
> #include <samba/include/vfs.h>
>
> if you use --with-devel-subdir=samba3-3.0.0
> prepare the headers for /usr/include/samba3-3.0.0
>
> #include "vfs.h"
> =>
> #include <samba3-3.0.0/include/vfs.h>
I think it is not good. Much better to incorporate
-I/usr/include/samba3-3.0.0 into set of compiler flags and install headers
into subdirectory with unchangeable name, like
/usr/include/samba3-3.0.0/samba -- applications still use
#include <samba/include/vfs.h> even if actual headers are installed
somewhere in a weird place in a system.
> 3.2)
> and it creates /usr/include/samba/samba_module.h
> which includes <samba/include/includes.h>
> and /usr/include/samba/winbind_client.h
> which includes <samba/nsswitch/winbind_client.h>
Ok.
> @@ -1386,6 +1398,97 @@ proto: headers
>
> .PHONY: headers proto
>
> +DEVEL_INCLUDE_HEADERS = include/MacExtensions.h include/ads.h include/asn_1.h \
> + include/byteorder.h include/charset.h include/client.h include/clitar.h \
> + include/debug.h include/dlinklist.h include/doserr.h include/dynconfig.h \
> + include/hash.h include/hmacmd5.h include/interfaces.h include/intl.h \
> + include/libsmbclient.h include/local.h include/mangle.h include/mapping.h \
> + include/md5.h include/messages.h include/msdfs.h include/nameserv.h \
> + include/nt_printing.h include/ntdomain.h include/printing.h include/pstring.h \
> + include/rap.h include/rpc_brs.h include/rpc_client.h include/rpc_creds.h \
> + include/rpc_dce.h include/rpc_dfs.h include/rpc_lsa.h include/rpc_netlogon.h \
> + include/rpc_parse.h include/rpc_reg.h include/rpc_samr.h include/rpc_secdes.h include/rpc_shutdown.h \
> + include/rpc_spoolss.h include/rpc_srvsvc.h include/rpc_wkssvc.h include/safe_string.h \
> + include/secrets.h include/session.h include/smb_acls.h include/talloc.h \
> + include/trans2.h include/util_getent.h include/xfile.h include/adt_tree.h \
> + include/nt_status.h include/rpc_ds.h include/libsmb_internal.h include/ntlmssp.h \
> + include/srvstr.h include/popt_common.h include/rpc_echo.h include/authdata.h \
> + include/smb_macros.h include/smbldap.h include/build_env.h include/vfs.h \
> + include/smb.h include/idmap.h include/sysquotas.h include/proto.h include/auth.h \
> + include/spnego.h include/privileges.h include/passdb.h include/includes.h \
> + include/nterr.h include/module.h include/version.h include/ntioctl.h \
> + include/fake_file.h include/ntquotas.h include/vfs_macros.h include/rpc_misc.h \
> + include/smbprofile.h
This (and similar entries later in the patch) creates possible problems
for maintenance as header file addition now requires to change these
variables. Any idea how to make it more error-free?
Another question: why not to make sambabuild utility a shell script?
--
/ Alexander Bokovoy
Samba Team http://www.samba.org/
ALT Linux Team http://www.altlinux.org/
Midgard Project Ry http://www.midgard-project.org/
More information about the samba-technical
mailing list