mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-14 10:09:48 +00:00
937a200089
This is actually a fully functional build except: * All internal shared libraries are static linked to make sure there is no interference with ports (and to reduce build time). * It does not have the python/perl/etc plugin or API support. * By default, it installs as "svnlite" rather than "svn". * If WITH_SVN added in make.conf, you get "svn". * If WITHOUT_SVNLITE is in make.conf, this is completely disabled. To be absolutely clear, this is not intended for any use other than checking out freebsd source and committing, like we once did with cvs. It should be usable for small scale local repositories that don't need the python/perl plugin architecture.
300 lines
4.9 KiB
Plaintext
300 lines
4.9 KiB
Plaintext
#
|
|
# Declare the sub-directories to be built here
|
|
#
|
|
|
|
SUBDIRS = \
|
|
$(EOLIST)
|
|
|
|
#
|
|
# Get the 'head' of the build environment. This includes default targets and
|
|
# paths to tools
|
|
#
|
|
|
|
ifndef EnvironmentDefined
|
|
include $(APR_WORK)/build/NWGNUhead.inc
|
|
endif
|
|
|
|
#
|
|
# build this level's files
|
|
|
|
#
|
|
# Make sure all needed macro's are defined
|
|
#
|
|
|
|
# LINK_STATIC = 1
|
|
|
|
# for now defined here - should finally go into build/NWGNUenvironment.inc
|
|
DB_INC = $(DBSDK)/inc
|
|
DB_IMP = libdb47.imp
|
|
DB_LIB = libdb47.lib
|
|
DB_NLM = libdb47
|
|
|
|
#
|
|
# These directories will be at the beginning of the include list, followed by
|
|
# INCDIRS
|
|
#
|
|
XINCDIRS += \
|
|
$(APR)/include/arch/netware \
|
|
$(APR)/include \
|
|
$(APU)/include \
|
|
$(APU)/include/private \
|
|
$(APR) \
|
|
$(DB_INC) \
|
|
$(EOLIST)
|
|
|
|
#
|
|
# These flags will come after CFLAGS
|
|
#
|
|
XCFLAGS += \
|
|
$(EOLIST)
|
|
|
|
#
|
|
# These defines will come after DEFINES
|
|
#
|
|
XDEFINES += \
|
|
-DAPU_DSO_MODULE_BUILD \
|
|
-DAPU_HAVE_DB=1 \
|
|
-DAPU_HAVE_DB_VERSION=4 \
|
|
$(EOLIST)
|
|
|
|
#
|
|
# These flags will be added to the link.opt file
|
|
#
|
|
XLFLAGS += \
|
|
$(EOLIST)
|
|
|
|
ifdef LINK_STATIC
|
|
XLFLAGS += \
|
|
-l $(DBSDK)/lib \
|
|
$(EOLIST)
|
|
else
|
|
XLFLAGS += \
|
|
-l $(DBSDK)/imp \
|
|
$(EOLIST)
|
|
endif
|
|
|
|
#
|
|
# These values will be appended to the correct variables based on the value of
|
|
# RELEASE
|
|
#
|
|
ifeq "$(RELEASE)" "debug"
|
|
XINCDIRS += \
|
|
$(EOLIST)
|
|
|
|
XCFLAGS += \
|
|
$(EOLIST)
|
|
|
|
XDEFINES += \
|
|
$(EOLIST)
|
|
|
|
XLFLAGS += \
|
|
$(EOLIST)
|
|
endif
|
|
|
|
ifeq "$(RELEASE)" "noopt"
|
|
XINCDIRS += \
|
|
$(EOLIST)
|
|
|
|
XCFLAGS += \
|
|
$(EOLIST)
|
|
|
|
XDEFINES += \
|
|
$(EOLIST)
|
|
|
|
XLFLAGS += \
|
|
$(EOLIST)
|
|
endif
|
|
|
|
ifeq "$(RELEASE)" "release"
|
|
XINCDIRS += \
|
|
$(EOLIST)
|
|
|
|
XCFLAGS += \
|
|
$(EOLIST)
|
|
|
|
XDEFINES += \
|
|
$(EOLIST)
|
|
|
|
XLFLAGS += \
|
|
$(EOLIST)
|
|
endif
|
|
|
|
#
|
|
# These are used by the link target if an NLM is being generated
|
|
# This is used by the link 'name' directive to name the nlm. If left blank
|
|
# TARGET_nlm (see below) will be used.
|
|
#
|
|
NLM_NAME = dbmdb
|
|
|
|
#
|
|
# This is used by the link '-desc ' directive.
|
|
# If left blank, NLM_NAME will be used.
|
|
#
|
|
NLM_DESCRIPTION = Apache Portability Runtime Library $(VERSION_STR) DBM Berkeley DB Driver Module
|
|
|
|
#
|
|
# This is used by the '-threadname' directive. If left blank,
|
|
# NLM_NAME Thread will be used.
|
|
#
|
|
NLM_THREAD_NAME = dbmdb
|
|
|
|
#
|
|
# If this is specified, it will override VERSION value in
|
|
# $(AP_WORK)\build\NWGNUenvironment.inc
|
|
#
|
|
NLM_VERSION =
|
|
|
|
#
|
|
# If this is specified, it will override the default of 64K
|
|
#
|
|
NLM_STACK_SIZE = 8192
|
|
|
|
|
|
#
|
|
# If this is specified it will be used by the link '-entry' directive
|
|
#
|
|
NLM_ENTRY_SYM =
|
|
|
|
#
|
|
# If this is specified it will be used by the link '-exit' directive
|
|
#
|
|
NLM_EXIT_SYM =
|
|
|
|
#
|
|
# If this is specified it will be used by the link '-check' directive
|
|
#
|
|
NLM_CHECK_SYM =
|
|
|
|
#
|
|
# If these are specified it will be used by the link '-flags' directive
|
|
#
|
|
NLM_FLAGS =
|
|
|
|
#
|
|
# If this is specified it will be linked in with the XDCData option in the def
|
|
# file instead of the default of $(NWOS)/apache.xdc. XDCData can be disabled
|
|
# by setting APACHE_UNIPROC in the environment
|
|
#
|
|
XDCDATA =
|
|
|
|
#
|
|
# If there is an NLM target, put it here
|
|
#
|
|
TARGET_nlm = \
|
|
$(OBJDIR)\$(NLM_NAME).nlm \
|
|
$(EOLIST)
|
|
|
|
#
|
|
# If there is an LIB target, put it here
|
|
#
|
|
TARGET_lib = \
|
|
$(EOLIST)
|
|
|
|
#
|
|
# These are the OBJ files needed to create the NLM target above.
|
|
# Paths must all use the '/' character
|
|
#
|
|
FILES_nlm_objs = \
|
|
$(OBJDIR)/apr_dbm_berkeleydb.o \
|
|
$(EOLIST)
|
|
|
|
#
|
|
# These are the LIB files needed to create the NLM target above.
|
|
# These will be added as a library command in the link.opt file.
|
|
#
|
|
FILES_nlm_libs = \
|
|
$(PRELUDE) \
|
|
$(EOLIST)
|
|
|
|
ifeq ($(LINK_STATIC),1)
|
|
FILES_nlm_libs += \
|
|
$(DB_LIB) \
|
|
$(EOLIST)
|
|
endif
|
|
|
|
#
|
|
# These are the modules that the above NLM target depends on to load.
|
|
# These will be added as a module command in the link.opt file.
|
|
#
|
|
FILES_nlm_modules = \
|
|
aprlib \
|
|
libc \
|
|
$(EOLIST)
|
|
|
|
ifneq ($(LINK_STATIC),1)
|
|
FILES_nlm_modules += \
|
|
$(DB_NLM) \
|
|
$(EOLIST)
|
|
endif
|
|
|
|
#
|
|
# If the nlm has a msg file, put it's path here
|
|
#
|
|
FILE_nlm_msg =
|
|
|
|
#
|
|
# If the nlm has a hlp file put it's path here
|
|
#
|
|
FILE_nlm_hlp =
|
|
|
|
#
|
|
# If this is specified, it will override $(NWOS)\copyright.txt.
|
|
#
|
|
FILE_nlm_copyright =
|
|
|
|
#
|
|
# Any additional imports go here
|
|
#
|
|
FILES_nlm_Ximports = \
|
|
@aprlib.imp \
|
|
@libc.imp \
|
|
$(EOLIST)
|
|
|
|
ifneq ($(LINK_STATIC),1)
|
|
FILES_nlm_Ximports += \
|
|
@$(DB_IMP) \
|
|
$(EOLIST)
|
|
endif
|
|
|
|
#
|
|
# Any symbols exported to here
|
|
#
|
|
FILES_nlm_exports = \
|
|
apr_dbm_type_db \
|
|
$(EOLIST)
|
|
|
|
#
|
|
# These are the OBJ files needed to create the LIB target above.
|
|
# Paths must all use the '/' character
|
|
#
|
|
FILES_lib_objs = \
|
|
$(EOLIST)
|
|
|
|
#
|
|
# implement targets and dependancies (leave this section alone)
|
|
#
|
|
|
|
libs :: $(OBJDIR) $(TARGET_lib)
|
|
|
|
nlms :: libs $(TARGET_nlm)
|
|
|
|
#
|
|
# Updated this target to create necessary directories and copy files to the
|
|
# correct place. (See $(AP_WORK)\build\NWGNUhead.inc for examples)
|
|
#
|
|
install :: nlms FORCE
|
|
|
|
#
|
|
# Any specialized rules here
|
|
#
|
|
|
|
#
|
|
# Include the 'tail' makefile that has targets that depend on variables defined
|
|
# in this makefile
|
|
#
|
|
|
|
include $(APRBUILD)/NWGNUtail.inc
|
|
|
|
|
|
|