[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[commits] r927 - in /branches/eglibc-2_5/libc: ./ catgets/
- To: commits@xxxxxxxxxx
- Subject: [commits] r927 - in /branches/eglibc-2_5/libc: ./ catgets/
- From: jimb@xxxxxxxxxx
- Date: Wed, 13 Dec 2006 20:28:27 -0000
Author: jimb
Date: Wed Dec 13 12:28:27 2006
New Revision: 927
Log:
2006-12-08 Jim Blandy <jimb@xxxxxxxxxxxxxxxx>
Add rudimentary option group support.
* option-groups.mak, option-groups.def, option-groups.defaults:
New files.
* Makerules: Add contents of enabled option groups to the values
of the variables 'routines', 'others', 'install-bin',
'install-sbin', 'extra-objs', 'tests', and 'test-srcs'.
* catgets/Makefile: Add the catgets directory's routines and
programs to the OPTION_EGLIBC_CATGETS option group.
Added:
branches/eglibc-2_5/libc/option-groups.def
branches/eglibc-2_5/libc/option-groups.defaults
branches/eglibc-2_5/libc/option-groups.mak
Modified:
branches/eglibc-2_5/libc/ChangeLog.eglibc
branches/eglibc-2_5/libc/Makerules
branches/eglibc-2_5/libc/catgets/Makefile
Modified: branches/eglibc-2_5/libc/ChangeLog.eglibc
==============================================================================
--- branches/eglibc-2_5/libc/ChangeLog.eglibc (original)
+++ branches/eglibc-2_5/libc/ChangeLog.eglibc Wed Dec 13 12:28:27 2006
@@ -1,3 +1,14 @@
+2006-12-08 Jim Blandy <jimb@xxxxxxxxxxxxxxxx>
+
+ Add rudimentary option group support.
+ * option-groups.mak, option-groups.def, option-groups.defaults:
+ New files.
+ * Makerules: Add contents of enabled option groups to the values
+ of the variables 'routines', 'others', 'install-bin',
+ 'install-sbin', 'extra-objs', 'tests', and 'test-srcs'.
+ * catgets/Makefile: Add the catgets directory's routines and
+ programs to the OPTION_EGLIBC_CATGETS option group.
+
2006-12-07 Joseph Myers <joseph@xxxxxxxxxxxxxxxx>
* misc/tst-efgcvt.c (ecvt_tests): Disable subnormal test for E500
Modified: branches/eglibc-2_5/libc/Makerules
==============================================================================
--- branches/eglibc-2_5/libc/Makerules (original)
+++ branches/eglibc-2_5/libc/Makerules Wed Dec 13 12:28:27 2006
@@ -405,6 +405,16 @@
endef
endif
+# Include targets in the selected option groups.
+routines += $(routines-y)
+others += $(others-y)
+install-bin += $(install-bin-y)
+install-sbin += $(install-sbin-y)
+extra-objs += $(extra-objs-y)
+tests += $(tests-y)
+test-srcs += $(test-srcs-y)
+
+
# Modify the list of routines we build for different targets
ifeq (yesyes,$(build-shared)$(elf))
Modified: branches/eglibc-2_5/libc/catgets/Makefile
==============================================================================
--- branches/eglibc-2_5/libc/catgets/Makefile (original)
+++ branches/eglibc-2_5/libc/catgets/Makefile Wed Dec 13 12:28:27 2006
@@ -21,16 +21,18 @@
#
subdir := catgets
+include ../option-groups.mak
+
headers = nl_types.h
distribute = catgetsinfo.h config.h xopen-msg.sed test1.msg test2.msg \
test-gencat.sh sample.SJIS
-routines = catgets open_catalog
-others = gencat
-install-bin = gencat
-extra-objs = $(gencat-modules:=.o)
+routines-$(OPTION_EGLIBC_CATGETS) := catgets open_catalog
+others-$(OPTION_EGLIBC_CATGETS) := gencat
+install-bin-$(OPTION_EGLIBC_CATGETS) := gencat
+extra-objs-$(OPTION_EGLIBC_CATGETS) := $(gencat-modules:=.o)
-tests = tst-catgets
-test-srcs = test-gencat
+tests-$(OPTION_EGLIBC_CATGETS) := tst-catgets
+test-srcs-$(OPTION_EGLIBC_CATGETS) := test-gencat
gencat-modules = xmalloc
Added: branches/eglibc-2_5/libc/option-groups.def
==============================================================================
--- branches/eglibc-2_5/libc/option-groups.def (added)
+++ branches/eglibc-2_5/libc/option-groups.def Wed Dec 13 12:28:27 2006
@@ -1,0 +1,44 @@
+# This file documents the option groups EGLIBC currently supports, in
+# a format akin to the Linux Kconfig system's. The syntax may change
+# over time.
+#
+# An entry of the form:
+#
+# config OPTION_GROUP_NAME
+# bool "one-line explanation of what this option group controls"
+# help
+# Multi-line help explaining the option group's meaning in
+# some detail, terminated by indentation level.
+#
+# defines an option group whose variable is OPTION_GROUP_NAME, with
+# meaningful values 'y' (enabled) and 'n' (disabled). The
+# documentation is formatted to be consumed by some sort of
+# interactive configuration interface, but EGLIBC doesn't have such an
+# interface yet.
+#
+# Option group variables get their default values from the file
+# 'option-groups.defaults', in the top directory of the EGLIBC source
+# tree. By default, all EGLIBC option groups are enabled --- their
+# variables are set to 'y'.
+#
+# After including 'option-groups.defaults', the EGLIBC make machinery
+# includes the file 'option-groups.config' from the top of the build
+# tree, if it is present. Developers can place assignments to option
+# group variables in that file to override the defaults. For example,
+# to disable an option group, place a line of the form:
+#
+# OPTION_GROUP_NAME = n
+#
+# in 'option-groups.config' at the top of your build tree. To
+# explicitly enable an option group, you may also write:
+#
+# OPTION_GROUP_NAME = y
+#
+# although this simply reestablishes the value already set by
+# 'option-groups.defaults'.
+
+config OPTION_EGLIBC_CATGETS
+ bool "Functions for accessing message catalogs"
+ help
+ This option group includes functions for accessing message
+ catalogs: catopen, catclose, and catgets.
Added: branches/eglibc-2_5/libc/option-groups.defaults
==============================================================================
--- branches/eglibc-2_5/libc/option-groups.defaults (added)
+++ branches/eglibc-2_5/libc/option-groups.defaults Wed Dec 13 12:28:27 2006
@@ -1,0 +1,11 @@
+# This file sets default values for all option group variables
+# mentioned in option-groups.def; see that file for a description of
+# each option group.
+#
+# Subdirectory makefiles include this file before including the user's
+# settings from option-groups.config at the top of the build tree;
+# that file need only refer to those options whose default settings
+# are to be changed.
+#
+# By default, all option groups are enabled.
+OPTION_EGLIBC_CATGETS = y
Added: branches/eglibc-2_5/libc/option-groups.mak
==============================================================================
--- branches/eglibc-2_5/libc/option-groups.mak (added)
+++ branches/eglibc-2_5/libc/option-groups.mak Wed Dec 13 12:28:27 2006
@@ -1,0 +1,17 @@
+# Setup file for subdirectory Makefiles that define EGLIBC option groups.
+
+# Read the default settings for all options.
+include $(..)option-groups.defaults
+
+# Read the developer's option group selections, overriding the
+# defaults from option-groups.defaults.
+-include $(objdir)/option-groups.config
+
+# Establish 'routines-y', etc. as simply expanded variables.
+routines-y :=
+others-y :=
+install-bin-y :=
+install-sbin-y :=
+extra-objs-y :=
+tests-y :=
+test-srcs-y :=