summaryrefslogtreecommitdiff
path: root/fml
diff options
context:
space:
mode:
authorfukachan <fukachan>2003-10-26 02:20:01 +0000
committerfukachan <fukachan>2003-10-26 02:20:01 +0000
commit6cb3c4e0410c2363c6c9556dbb159d5fb9ace4d1 (patch)
tree22eca4b276bd20c1d6259cae1104bba5b28ce7ba /fml
parent436c154dd322d0a12c61fcd12b78ad704b8da7ce (diff)
downloadfml8-6cb3c4e0410c2363c6c9556dbb159d5fb9ace4d1.tar.gz
fml8-6cb3c4e0410c2363c6c9556dbb159d5fb9ace4d1.tar.bz2
fml8-6cb3c4e0410c2363c6c9556dbb159d5fb9ace4d1.zip
define $site_default_config_cf to remove hard-coded site_default_config.cf.
sort entries in main.cf.
Diffstat (limited to 'fml')
-rw-r--r--fml/etc/main.cf.in40
-rw-r--r--fml/lib/FML/Process/Kernel.pm32
-rw-r--r--fml/lib/FML/Process/Switch.pm6
3 files changed, 50 insertions, 28 deletions
diff --git a/fml/etc/main.cf.in b/fml/etc/main.cf.in
index 8532ac4e..3faeadf0 100644
--- a/fml/etc/main.cf.in
+++ b/fml/etc/main.cf.in
@@ -1,5 +1,5 @@
#
-# $FML: main.cf.in,v 1.15 2003/03/06 12:34:04 fukachan Exp $
+# $FML: main.cf.in,v 1.16 2003/10/25 04:06:37 fukachan Exp $
#
# fml version
@@ -49,6 +49,15 @@ share_dir = @datadir@/fml/$fml_version
local_lib_dir = @libdir@/fml/site_local
+###
+### DOMAIN AND MAP BETWEEN DOMAIN AND DIRECTORY
+###
+
+
+# default domain
+default_domain = @default_domain@
+
+
# ml's home directories
# $ml_home_dir (e.g. /var/spool/ml/elena ) is taken from loader's @ARGV.
# This is compatible with fml 4.0.
@@ -56,21 +65,35 @@ local_lib_dir = @libdir@/fml/site_local
default_ml_home_prefix = @mlspooldir@
+# map of { $ml_name => $ml_home_dir }
+# Example: /etc/fml/ml_home_prefix
+ml_home_prefix_maps = $config_dir/ml_home_prefix
+ $virtual_maps
+
+
+# virtual format: domain directory
+# for example,
+# fml.org /var/spool/ml/fml.org
+# nuinui.net /var/spool/ml/nuinui.net
+virtual_maps = $config_dir/virtual
+
+
###
### CONFIGURATION FILES AND DEFAULT PARAMETERS
###
-# default domain
-default_domain = @default_domain@
-
-
# version dependent default_config.cf location
# Example: /etc/fml/defaults/8.0/default_config.cf
default_config_cf = $default_config_dir/default_config.cf
+# site local default configuration file
+# Example: /etc/fml/site_default_config.cf
+site_default_config_cf = $config_dir/site_default_config.cf
+
+
# domain specific configurations
# Example: /etc/fml/domains/fml.org/default_config.cf
domain_default_config_cf = $config_dir/domains/$default_domain/config.cf
@@ -84,10 +107,3 @@ default_module_config = $default_config_dir/modules
# map between programs name and command line options
# Example: /etc/fml/defaults/8.0/command_line_options
default_command_line_option_config = $default_config_dir/command_line_options
-
-
-# virtual format: domain directory
-# for example,
-# fml.org /var/spool/ml/fml.org
-# nuinui.net /var/spool/ml/nuinui.net
-virtual_maps = $config_dir/virtual
diff --git a/fml/lib/FML/Process/Kernel.pm b/fml/lib/FML/Process/Kernel.pm
index d92e54b8..4af77341 100644
--- a/fml/lib/FML/Process/Kernel.pm
+++ b/fml/lib/FML/Process/Kernel.pm
@@ -4,7 +4,7 @@
# All rights reserved. This program is free software; you can
# redistribute it and/or modify it under the same terms as Perl itself.
#
-# $FML: Kernel.pm,v 1.187 2003/10/15 09:09:11 fukachan Exp $
+# $FML: Kernel.pm,v 1.188 2003/10/15 10:06:46 fukachan Exp $
#
package FML::Process::Kernel;
@@ -93,23 +93,31 @@ sub new
}
}
- # 1.2 import XXX_dir variables from /etc/fml/main.cf
- for my $dir_var (qw(
- config_dir
- default_config_dir
- lib_dir
- libexec_dir
- share_dir
- local_lib_dir
+ # 1.2 import XXX_dir variables as fml_XXX_dir from /etc/fml/main.cf.
+ # ( *_dir *_maps *_cf ).
+ for my $main_cf_var (qw(
+ config_dir
+ default_config_dir
+ lib_dir
+ libexec_dir
+ share_dir
+ local_lib_dir
+
+ ml_home_prefix_maps
+ default_config_cf
+ site_default_config_cf
+
)) {
- if (defined $args->{ main_cf }->{ $dir_var }) {
- $cfargs->{ 'fml_'.$dir_var } = $args->{ main_cf }->{ $dir_var };
+ if (defined $args->{ main_cf }->{ $main_cf_var }) {
+ my $key = sprintf("fml_%s", $main_cf_var);
+ $cfargs->{ $key } = $args->{ main_cf }->{ $main_cf_var };
}
}
# 1.3 import $fml_version
if (defined $args->{ fml_version }) {
- $cfargs->{ fml_version } = "fml-devel ". $args->{ fml_version };
+ $cfargs->{ fml_version } =
+ sprintf("fml-devel %s", $args->{ fml_version });
}
# 2.1 speculate $fml_owner_home_dir by the current process uid
diff --git a/fml/lib/FML/Process/Switch.pm b/fml/lib/FML/Process/Switch.pm
index 7abd1416..874602a0 100644
--- a/fml/lib/FML/Process/Switch.pm
+++ b/fml/lib/FML/Process/Switch.pm
@@ -4,7 +4,7 @@
# All rights reserved. This program is free software; you can
# redistribute it and/or modify it under the same terms as Perl itself.
#
-# $FML: Switch.pm,v 1.99 2003/09/27 14:56:48 fukachan Exp $
+# $FML: Switch.pm,v 1.100 2003/10/15 01:03:35 fukachan Exp $
#
package FML::Process::Switch;
@@ -126,9 +126,7 @@ sub main::Bootstrap2
# 2.1 prepare @$cf
# XXX hmm, .. '/etc/fml/site_default_config.cf' is good ???
my $cf = ();
- my $sitedef =
- File::Spec->catfile($main_cf->{ config_dir }, 'site_default_config.cf');
- unshift(@$cf, $sitedef);
+ unshift(@$cf, $main_cf->{ site_default_config_cf });
unshift(@$cf, $main_cf->{ default_config_cf });
# 3.1 set up @INC