diff options
author | Andrew Bartlett <abartlet@samba.org> | 2011-04-27 16:39:42 +1000 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2011-04-27 22:22:26 +1000 |
commit | 3e85b960fae391af7a0592d5d38c18ae5a157209 (patch) | |
tree | c0c87c28730f73f8c4b853505123253ae2761c7e /source4/dynconfig | |
parent | 9e29b09d3928398dce1c15bb017cf840a0df597e (diff) | |
download | samba-3e85b960fae391af7a0592d5d38c18ae5a157209.tar.gz samba-3e85b960fae391af7a0592d5d38c18ae5a157209.tar.bz2 samba-3e85b960fae391af7a0592d5d38c18ae5a157209.zip |
dynconfig: Have only one dynconfig.o in the common code.
Diffstat (limited to 'source4/dynconfig')
-rw-r--r-- | source4/dynconfig/dynconfig.c | 111 | ||||
-rw-r--r-- | source4/dynconfig/dynconfig.h | 62 | ||||
-rwxr-xr-x | source4/dynconfig/wscript | 2 |
3 files changed, 1 insertions, 174 deletions
diff --git a/source4/dynconfig/dynconfig.c b/source4/dynconfig/dynconfig.c deleted file mode 100644 index 65e57e0fc1..0000000000 --- a/source4/dynconfig/dynconfig.c +++ /dev/null @@ -1,111 +0,0 @@ -/* - Unix SMB/CIFS implementation. - Copyright (C) 2001 by Martin Pool <mbp@samba.org> - Copyright (C) Jim McDonough (jmcd@us.ibm.com) 2003. - Copyright (C) Stefan Metzmacher 2003 - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -#include "includes.h" - -/** - * @file dynconfig.c - * - * @brief Global configurations, initialized to configured defaults. - * - * This file should be the only file that depends on path - * configuration (--prefix, etc), so that if ./configure is re-run, - * all programs will be appropriately updated. Everything else in - * Samba should import extern variables from here, rather than relying - * on preprocessor macros. - * - * Eventually some of these may become even more variable, so that - * they can for example consistently be set across the whole of Samba - * by command-line parameters, config file entries, or environment - * variables. - * - * @todo Perhaps eventually these should be merged into the parameter - * table? There's kind of a chicken-and-egg situation there... - **/ - -#include "dynconfig.h" - -#define DEFINE_DYN_CONFIG_PARAM(name) \ -const char *dyn_##name = name; \ -\ -bool is_default_dyn_##name(void) \ -{\ - if (strcmp(name, dyn_##name) == 0) { \ - return true; \ - } \ - return false; \ -}\ -\ -const char *get_dyn_##name(void) \ -{\ - return dyn_##name;\ -}\ -\ -const char *set_dyn_##name(const char *newpath) \ -{\ - if (newpath == NULL) { \ - return NULL; \ - } \ - if (strcmp(name, newpath) == 0) { \ - return dyn_##name; \ - } \ - newpath = strdup(newpath);\ - if (newpath == NULL) { \ - return NULL; \ - } \ - if (is_default_dyn_##name()) { \ - /* do not free a static string */ \ - } else if (dyn_##name) {\ - free(discard_const(dyn_##name)); \ - }\ - dyn_##name = newpath; \ - return dyn_##name;\ -} - -/* these are in common with s3 */ -DEFINE_DYN_CONFIG_PARAM(SBINDIR) -DEFINE_DYN_CONFIG_PARAM(BINDIR) -DEFINE_DYN_CONFIG_PARAM(SWATDIR) -DEFINE_DYN_CONFIG_PARAM(CONFIGFILE) /**< Location of smb.conf file. **/ -DEFINE_DYN_CONFIG_PARAM(LOGFILEBASE) /** Log file directory. **/ -DEFINE_DYN_CONFIG_PARAM(LMHOSTSFILE) /** Statically configured LanMan hosts. **/ -DEFINE_DYN_CONFIG_PARAM(CODEPAGEDIR) -DEFINE_DYN_CONFIG_PARAM(LIBDIR) -DEFINE_DYN_CONFIG_PARAM(MODULESDIR) -DEFINE_DYN_CONFIG_PARAM(SHLIBEXT) -DEFINE_DYN_CONFIG_PARAM(LOCKDIR) -DEFINE_DYN_CONFIG_PARAM(STATEDIR) /** Persistent state files. Default LOCKDIR */ -DEFINE_DYN_CONFIG_PARAM(CACHEDIR) /** Temporary cache files. Default LOCKDIR */ -DEFINE_DYN_CONFIG_PARAM(PIDDIR) -DEFINE_DYN_CONFIG_PARAM(NCALRPCDIR) -DEFINE_DYN_CONFIG_PARAM(SMB_PASSWD_FILE) -DEFINE_DYN_CONFIG_PARAM(PRIVATE_DIR) -DEFINE_DYN_CONFIG_PARAM(LOCALEDIR) -DEFINE_DYN_CONFIG_PARAM(NMBDSOCKETDIR) - -/* these are not in s3 */ -DEFINE_DYN_CONFIG_PARAM(DATADIR) -DEFINE_DYN_CONFIG_PARAM(SETUPDIR) -DEFINE_DYN_CONFIG_PARAM(WINBINDD_SOCKET_DIR) -DEFINE_DYN_CONFIG_PARAM(WINBINDD_PRIVILEGED_SOCKET_DIR) -DEFINE_DYN_CONFIG_PARAM(NTP_SIGND_SOCKET_DIR) -DEFINE_DYN_CONFIG_PARAM(PYTHONDIR) -DEFINE_DYN_CONFIG_PARAM(PYTHONARCHDIR) -DEFINE_DYN_CONFIG_PARAM(SCRIPTSBINDIR) diff --git a/source4/dynconfig/dynconfig.h b/source4/dynconfig/dynconfig.h deleted file mode 100644 index ee710f3de9..0000000000 --- a/source4/dynconfig/dynconfig.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - Unix SMB/CIFS implementation. - Copyright (C) 2001 by Martin Pool <mbp@samba.org> - Copyright (C) Jim McDonough (jmcd@us.ibm.com) 2003. - - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -/** - * @file dynconfig.h - * - * @brief Exported global configurations. - **/ - -#define DEFINE_DYN_CONFIG_PROTO(name) \ -extern const char *dyn_##name; \ -const char *get_dyn_##name(void); \ -const char *set_dyn_##name(const char *newpath); \ -bool is_default_dyn_##name(void); - -/* these are in common with s3 */ -DEFINE_DYN_CONFIG_PROTO(SBINDIR) -DEFINE_DYN_CONFIG_PROTO(BINDIR) -DEFINE_DYN_CONFIG_PROTO(SWATDIR) -DEFINE_DYN_CONFIG_PROTO(CONFIGFILE) /**< Location of smb.conf file. **/ -DEFINE_DYN_CONFIG_PROTO(LOGFILEBASE) /** Log file directory. **/ -DEFINE_DYN_CONFIG_PROTO(LMHOSTSFILE) /** Statically configured LanMan hosts. **/ -DEFINE_DYN_CONFIG_PROTO(CODEPAGEDIR) -DEFINE_DYN_CONFIG_PROTO(LIBDIR) -DEFINE_DYN_CONFIG_PROTO(MODULESDIR) -DEFINE_DYN_CONFIG_PROTO(SHLIBEXT) -DEFINE_DYN_CONFIG_PROTO(LOCKDIR) -DEFINE_DYN_CONFIG_PROTO(STATEDIR) /** Persistent state files. Default LOCKDIR */ -DEFINE_DYN_CONFIG_PROTO(CACHEDIR) /** Temporary cache files. Default LOCKDIR */ -DEFINE_DYN_CONFIG_PROTO(PIDDIR) -DEFINE_DYN_CONFIG_PROTO(NCALRPCDIR) -DEFINE_DYN_CONFIG_PROTO(SMB_PASSWD_FILE) -DEFINE_DYN_CONFIG_PROTO(PRIVATE_DIR) -DEFINE_DYN_CONFIG_PROTO(LOCALEDIR) -DEFINE_DYN_CONFIG_PROTO(NMBDSOCKETDIR) - -/* these are not in s3 */ -DEFINE_DYN_CONFIG_PROTO(DATADIR) -DEFINE_DYN_CONFIG_PROTO(SETUPDIR) -DEFINE_DYN_CONFIG_PROTO(WINBINDD_SOCKET_DIR) -DEFINE_DYN_CONFIG_PROTO(WINBINDD_PRIVILEGED_SOCKET_DIR) -DEFINE_DYN_CONFIG_PROTO(NTP_SIGND_SOCKET_DIR) -DEFINE_DYN_CONFIG_PROTO(PYTHONDIR) -DEFINE_DYN_CONFIG_PROTO(PYTHONARCHDIR) -DEFINE_DYN_CONFIG_PROTO(SCRIPTSBINDIR) diff --git a/source4/dynconfig/wscript b/source4/dynconfig/wscript index f815e81a2d..cc3ff45d35 100755 --- a/source4/dynconfig/wscript +++ b/source4/dynconfig/wscript @@ -146,7 +146,7 @@ Build.BuildContext.dynconfig_cflags = dynconfig_cflags def build(bld): cflags = bld.dynconfig_cflags() bld.SAMBA_SUBSYSTEM('DYNCONFIG', - 'dynconfig.c', + '../../dynconfig/dynconfig.c', deps='replace talloc', public_headers=os_path_relpath(os.path.join(Options.launch_dir, 'version.h'), bld.curdir), header_path='samba', |