Divided BuildConfig into three files: BuildConfig, Timezones, and libgccObjects.

That makes fine tuning any of them a nicer experience.
You have to rerun ./configure in order to build anything.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11056 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Axel Dörfler 2005-01-26 01:34:37 +00:00
parent 8408ba055b
commit b1e5b60ccf
2 changed files with 32 additions and 6 deletions

View File

@ -34,16 +34,28 @@ HCACHEFILE = header_cache ;
JCACHEFILE = jamfile_cache ;
LOCATE on $(HCACHEFILE) $(JCACHEFILE) = $(OBOS_BUILD_DIR) ;
# Include BuildConfig
# Include BuildConfig/Timezones/libgccObjects
{
local buildConfig = [ GLOB $(OBOS_BUILD_DIR) : BuildConfig ] ;
if ! $(buildConfig)
{
ECHO "No BuildConfig found in $(OBOS_BUILD_DIR)!" ;
local timezones = [ GLOB $(OBOS_BUILD_DIR) : Timezones ] ;
local libgccObjects = [ GLOB $(OBOS_BUILD_DIR) : libgccObjects ] ;
if ! $(buildConfig) {
ECHO "No `BuildConfig' found in $(OBOS_BUILD_DIR)!" ;
EXIT "Run ./configure in the source tree's root directory first!" ;
}
if ! ( $(timezones) && $(libgccObjects) ) {
ECHO "No `Timezones' or `libgccObjects' found in $(OBOS_BUILD_DIR)!" ;
EXIT "Please run ./configure in the source tree's root directory again!" ;
}
LOCATE on BuildConfig = $(OBOS_BUILD_DIR) ;
LOCATE on Timezones = $(OBOS_BUILD_DIR) ;
LOCATE on libgccObjects = $(OBOS_BUILD_DIR) ;
include BuildConfig ;
include Timezones ;
include libgccObjects ;
}
# analyze GCC version

18
configure vendored
View File

@ -123,21 +123,35 @@ PLATFORM_LINKLIBS ?= ${PLATFORM_LINKLIBS} ;
PLATFORM_HEADERS ?= ${PLATFORM_HEADERS} ;
GCC_RAW_VERSION ?= ${gcc_version} ;
LIBGCC_DIR ?= ${LIBGCC_DIR} ;
LIBGCC_OBJECTS ?= ${LIBGCC_OBJECTS} ;
BOCHS_DEBUG_HACK ?= ${bochs_debug} ;
INCLUDE_GPL_ADDONS ?= ${include_gpl_addons} ;
TARGET_PLATFORM ?= ${target} ;
EOF
# Libgcc.a objects
cat << EOF > build/libgccObjects
# libgcc.a objects to be linked against libroot.so
# Note: This file has been automatically generated by configure.
LIBGCC_OBJECTS ?= ${LIBGCC_OBJECTS} ;
EOF
# Generate Timezones binaries bindings
cat << EOF > build/Timezones
# Timezones used for the build
# Note: This file has been automatically generated by configure.
EOF
timezones=`echo src/data/etc/timezones/* | sed -e s@src/data/etc/timezones/CVS@@`
for f in ${timezones};
do
TZOBJECTS=`gawk '/^Zone/ { print $2 } /^Link/ { print $3 } ' $f `
cat << EOF >> build/BuildConfig
cat << EOF >> build/Timezones
TZ_OBJECTS on <src!data!etc!timezones>${f##src/data/etc/timezones/} ?= $TZOBJECTS ;
EOF
done