1
0
mirror of https://github.com/samba-team/samba.git synced 2025-12-10 04:23:50 +03:00
Commit Graph

156 Commits

Author SHA1 Message Date
Jelmer Vernooij
4682bc5ce0 r14492: Fix shared libs - set SO_VERSION to 0 everywhere for now. 2007-10-10 13:57:32 -05:00
Jelmer Vernooij
bb6541126c r14483: Allow subsystems with just a public prototype header, no private ones 2007-10-10 13:57:31 -05:00
Jelmer Vernooij
acd23e351e r14478: Remove unused proto_objs variable 2007-10-10 13:57:30 -05:00
Stefan Metzmacher
7713a5333e r14472: fix typo
metze
2007-10-10 13:57:30 -05:00
Jelmer Vernooij
fd47e975a4 r14469: Don't the variable INSTALLDIR for two different things... 2007-10-10 13:57:29 -05:00
Jelmer Vernooij
4799f7bd1f r14335: Build shared modules in bin/modules/$SUBSYSTEM when in developer mode. 2007-10-10 13:57:13 -05:00
Jelmer Vernooij
f12c1ee193 r14332: Built in different paths when running locally (from ./bin/) in developer
mode (./configure.developer). This will change the hardcoded value of a few
paths (BINDIR, SWATDIR, EJSDIR, SETUPDIR, DATADIR, MODULESDIR). The regular
locations will be used when running 'make install'.

This enables developers to work on (shared built) modules, swat, ejs and
setup files without having to run 'make install' each time.
2007-10-10 13:57:12 -05:00
Jelmer Vernooij
7871b07e21 r14327: Replace MAJOR_VERSION/MINOR_VERSION/RELEASE_VERSION with two parameters:
- VERSION: should contain the current version. Will be made part of the filename.
 - SO_VERSION: should contain the latest version that this on is compatible to. Will be used for setting the soname of the shared library.

Fix sonames and use them on platforms that support them
Remove symlinking code. ldconfig will take care of creating the symlinks now
that we set the soname.
2007-10-10 13:57:12 -05:00
Jelmer Vernooij
7fd74cfbb9 r14322: Remove the BROKEN_CC flag for now. None of the buildfarm hosts has
a C compiler that doesn't support -c and -o together and it makes the build
system more complicated. This also means the current handling of broken C
compilers is most likely broken as it isn't tested.

This detection can be readded when we stumble upon a C compiler that supports
both C99 (or at least the parts of it we need) and also has broken -c/-o
handling, which I think is unlikely to happen.
2007-10-10 13:57:12 -05:00
Jelmer Vernooij
2c7b62a861 r14281: Pull apart LIBDIR and MODULESDIR
Move architecture-independent data to DATADIR (was LIBDIR)
2007-10-10 13:57:07 -05:00
Jelmer Vernooij
03c06c6f7f r14139: Fix issue with undefined variables. 2007-10-10 13:56:54 -05:00
Stefan Metzmacher
1e6ac45370 r14117: fix a perl warning
jelmer: is there a better place to catch this?

metze
2007-10-10 13:56:52 -05:00
Jelmer Vernooij
b76126628c r14097: Remove subsystem names when installing modules (they're already installed
in a subsystem-specific directory)
No longer install smb.h as it only contains (internal) constants.
2007-10-10 13:56:50 -05:00
Jelmer Vernooij
b6ffad3860 r14094: Use saner module directory names, fix loading of server service modules. 2007-10-10 13:56:49 -05:00
Stefan Metzmacher
89b5667ab0 r14072: - only add the 'lib' prefix to libraries not modules
- fix installation of plugins (and make it a bit more verbose
- get rid of the '#define libfoo_module_init init_module'
  and genereated a wrapper function in bin/libfoo_module_init_module.c
- change the standard visibility for modules to hidden
- a few make clean fixes

metze
2007-10-10 13:54:02 -05:00
Jelmer Vernooij
2c74698032 r13960: Generate makefile rules for installing/removing shared modules. 2007-10-10 13:52:32 -05:00
Stefan Metzmacher
f4996fbacc r13943: the -rpath-link should be only used for binaries,
otherwise application linking to the installed lib would look
at the builddir for searching other libs

metze
2007-10-10 13:52:30 -05:00
Stefan Metzmacher
65bb303ff3 r13940: use the local vs. install linkerflag trick for shared libs too
metze
2007-10-10 13:52:29 -05:00
Jelmer Vernooij
557533b917 r13939: Fix bin/.dummy issues, add more ignores 2007-10-10 13:52:29 -05:00
Jelmer Vernooij
1228358767 r13924: Split more prototypes out of include/proto.h + initial work on header
file dependencies
2007-10-10 13:52:24 -05:00
Jelmer Vernooij
d512b147e8 r13867: Wrap the cflags.sh hack in the build system. You can now simply
set subsystem-specific compiler flags in the .mk files.
2007-10-10 13:52:18 -05:00
Andrew Bartlett
8866aa06ff r13244: Allow control of the location of the Samba3-compatible winbindd pipe
in Samba4.  This allows us to start winbindd by default, including in
'make test'.

This is via a new 'winbindd socket directory' parameter for utilities
linked against loadparm, as well as a --with-winbindd-socket-dir
option to configure (setting the default and the value for simple
clients).

I hope to add basic winbindd tests, to ensure continued correct
operation, but at least now I don't have to manually change my 'server
services' line.

The other problem with the hard-coded /tmp/.winbind is that RedHat has
moved this in Fedora (to /var/run I think).  For this reason, this
functionality should probably be ported to Samba3 as well.

The default for Samba4 is PREFIX/var/run/winbind_pipe.

I have also re-added the paranoia checks from Samba3 for correct
permissions on the socket directory.

Andrew Bartlett
2007-10-10 13:51:37 -05:00
Stefan Metzmacher
615b82f7c7 r13163: as we don't import the raw magic configure vars for
libdir, datadir, sysconfdir,localstatedir into our Makefile
we need to expand them in configure

I'll maybe rework this later but for now this works

metze
2007-10-10 13:51:31 -05:00
Andrew Bartlett
2c02a45d5a r13153: Try to move closer to FHS. This probably breaks everything...
Andrew Bartlett
2007-10-10 13:51:29 -05:00
Jelmer Vernooij
cbcce3b573 r13070: Add a simple smbd manpage, based on the Samba 3 one. 2007-10-10 13:51:21 -05:00
Stefan Metzmacher
de7b0b2dc9 r12896: IRIX make will fallback to gmake with this,
as normal IRIX make doesn't support shell commands or functions
in $(FOO) variables

metze
2007-10-10 13:50:59 -05:00
Stefan Metzmacher
31ff172773 r12772: - create variables for the %(patsubst ...) statements for the idl files
- this also fixes the build on BSD systems

metze
2007-10-10 13:49:52 -05:00
Andrew Bartlett
d3abfecec5 r12753: Try to fix the build after a 'make clean'. (the wildcards will not
expand because they don't exist yet).  Thanks again to HotaruT.

Andrew Bartlett
2007-10-10 13:49:50 -05:00
Jelmer Vernooij
f9eede3d40 r12670: Make a couple of dependencies stricter
Re-introduce and use the OUTPUT_TYPE property for MODULEs to force
specific modules to always be included
2007-10-10 13:49:35 -05:00
Stefan Metzmacher
bf35c74218 r12615: prepare building with ../samba4/source/configure --srcdir=../samba4/source/
metze
2007-10-10 13:49:04 -05:00
Stefan Metzmacher
48d975cc5e r12613: workarround a BSD make bug, where $< gets expanded to 'torture/libnet/userman.c'
when $@ is 'libnet/userman.o'

metze
2007-10-10 13:49:04 -05:00
Jelmer Vernooij
60e11f5758 r12523: Convert the registry subsystem to use a seperate prototype header
(note that this doesn't use the distinction between private
 and public prototypes yet)
2007-10-10 13:47:51 -05:00
Jelmer Vernooij
cdfd20fa17 r12520: Add support for --help to mkproto.pl
Allow the use of {PRIVATE,PUBLIC}_PROTO_HEADER for [SUBSYSTEM]
and [LIBRARY] sections in .mk files. Public functions can be marked
by adding _PUBLIC_ between their return type and function name.

This should eventually make include/proto.h and include/structs.h obsolete.
2007-10-10 13:47:51 -05:00
Jelmer Vernooij
b6d2ad4ce0 r12494: Support loading modules from .so files for most subsystems.
We now use a different system for initializing the modules for a subsystem.
Most subsystems now have an init function that looks something like this:

	init_module_fn static_init[] = STATIC_AUTH_MODULES;
	init_module_fn *shared_init = load_samba_modules(NULL, "auth");

	run_init_functions(static_init);
	run_init_functions(shared_init);

	talloc_free(shared_init);

I hope to eliminate the other init functions later on (the
init_programname_subsystems; defines).
2007-10-10 13:47:45 -05:00
Jelmer Vernooij
a4088ccc70 r12450: Move generation of proto and full object lists to makefile.pm. 'make' now
handles expanding the protoheader object list, rather then the build system,
	which makes the makefile quite a bit shorter.
2007-10-10 13:47:41 -05:00
Stefan Metzmacher
11da32df31 r12325: - remove the hostcc object files with make clean
- move the .SUFFIXES statement before the suffix rules
  this fixes the build with bsd make

metze
2007-10-10 13:47:30 -05:00
Jelmer Vernooij
a86abe84e2 r12254: Add some (hopefully correct) descriptions for libraries that are installed.
Install pkg-config files.
2007-10-10 13:47:24 -05:00
Jelmer Vernooij
507bee76dc r12253: Automatically build seperate binaries without -rpath to install when
using shared libraries and developer mode is enabled.
2007-10-10 13:47:24 -05:00
Jelmer Vernooij
57ea480c24 r12219: Use some more common functions 2007-10-10 13:47:21 -05:00
Jelmer Vernooij
ba913b86e8 r12218: Use common functions for generating lists 2007-10-10 13:47:21 -05:00
Jelmer Vernooij
4322962074 r12216: Couple of small fixes: reduce include/includes.h a bit, simplify headers
in build/smb_build/, remove unused pstring macros
2007-10-10 13:47:19 -05:00
Jelmer Vernooij
0b54405685 r11377: Add support for building LIBRARY elements as shared libraries:
- Adds -rpath bin/ so you don't have to install Samba in order to use compiled binaries.
 - Writes out pkg-config files when building shared libs
 - Supports automatic fallback to MERGEDOBJ (which is the default) or
   OBJ_LIST (if ld -r is not supported)

Building with shared libs reduces the size of the Samba binaries from
197 Mb to 60 Mb (including libraries) on my system (GCC4, with debugging).

To build with shared libraries support enabled, run:

LIBRARY_OUTPUT_TYPE=SHARED_LIBRARY ./config.status

init functions don't get called correctly yet when using shared libs, so
you won't be able to actually run anything with success :-)

Once init functions are done, I'll look at support for loading shared
modules once again.

Based on a patch by Peter Novodvorsky (nidd on IRC).
2007-10-10 13:45:28 -05:00
Jelmer Vernooij
990419bac7 r11311: Move some more logic to env 2007-10-10 13:45:18 -05:00
Jelmer Vernooij
9c211507c1 r11307: Add support for generating pkg-config files 2007-10-10 13:45:17 -05:00
Jelmer Vernooij
28931219a1 r11306: Move more static Makefile data to main.mk
Clean up smb_build::makefile a bit
2007-10-10 13:45:16 -05:00
Jelmer Vernooij
b4745032a2 r11303: Support defining and installing public headers for libraries.
Support installing libraries.
Get rid of pkg-config file (will be autogenerated later on).
2007-10-10 13:45:16 -05:00
Jelmer Vernooij
734da63a4e r11257: Add and use output function 2007-10-10 13:45:09 -05:00
Jelmer Vernooij
21e355d031 r11254: Remove support for [TARGET:foo]-like .mk-file entries
(it is already possible to include verbatim make data)
2007-10-10 13:45:08 -05:00
Jelmer Vernooij
c53b32e093 r11252: Make makefile.pm OO and descend from env 2007-10-10 13:45:08 -05:00
Jelmer Vernooij
118e3bc507 r11249: More OpenBSD make fixes... 2007-10-10 13:45:08 -05:00