home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OpenStep 4.2J (Developer)
/
os42jdev.iso
/
NextDeveloper
/
Makefiles
/
pb_makefiles
/
framework.make
< prev
next >
Wrap
Text File
|
1996-12-05
|
3KB
|
85 lines
#
#
# IMPORTED VARIABLES
# FRAMEWORK_DLL_INSTALLDIR: On Windows platforms, this variable indicates
# where to put the framework's DLL. This variable defaults to
# $(INSTALLDIR)/../Executables
#
# OVERRIDABLE VARIABLES
# INSTALL_NAME_DIRECTIVE: This directive ensures that executables linked
# against the framework will run against the correct version even if
# the current version of the framework changes. You may override this
# to "" as an alternative to using the DYLD_LIBRARY_PATH during your
# development cycle, but be sure to restore it before installing.
#
.PHONY: framework all
framework: all
PROJTYPE = FRAMEWORK
PRODUCT = $(PRODUCT_DIR)/$(NAME).framework
PRODUCTS = $(PRODUCT)
INNER_PRODUCT = $(PRODUCT)/$(NAME)$(BUILD_TYPE_SUFFIX)$(DLL_EXT)
STRIPPED_PRODUCTS = $(INNER_PRODUCT)
DYLIB_INSTALL_DIR = $(INSTALLDIR)/$(NAME).framework
DYLIB_INSTALL_NAME = $(NAME)$(BUILD_TYPE_SUFFIX)$(DLL_EXT)
INSTALL_NAME_DIRECTIVE = -install_name $(DYLIB_INSTALL_DIR)/$(DYLIB_INSTALL_NAME)
PROJTYPE_LDFLAGS = -dynamic -compatibility_version $(COMPATIBILITY_PROJECT_VERSION) -current_version $(CURRENT_PROJECT_VERSION) $(INSTALL_NAME_DIRECTIVE)
PUBLIC_HDR_INSTALLDIR = $(INSTALLDIR)/$(NAME).framework/Headers
PRIVATE_HDR_INSTALLDIR = $(INSTALLDIR)/$(NAME).framework/PrivateHeaders
BEFORE_INSTALL += verify-install-name-directive
ifeq "WINDOWS" "$(OS)"
ifneq "$(LIBRARY_STYLE)" "STATIC"
AFTER_INSTALL += install-dll
OS_LDFLAGS += -def $(WINDOWS_DEF_FILE)
endif
endif
include $(MAKEFILEDIR)/wrapped-common.make
-include $(LOCAL_MAKEFILEDIR)/framework.make.preamble
RECURSIVE_CFLAGS += -F$(PRODUCT_DIR)
RECURSIVE_FLAGS += PUBLIC_HDR_DIR=$(PUBLIC_HDR_DIR)
RECURSIVE_FLAGS += PRIVATE_HDR_DIR=$(PRIVATE_HDR_DIR)
$(PRODUCT): $(INNER_PRODUCT)
$(INNER_PRODUCT): $(DEPENDENCIES) $(WINDOWS_DEF_FILE)
$(LIBTOOL) $(ALL_LIBTOOL_FLAGS) -o $(INNER_PRODUCT) $(LOADABLES)
ifndef FRAMEWORK_DLL_INSTALLDIR
FRAMEWORK_DLL_INSTALLDIR = $(INSTALLDIR)/../Executables
endif
#
# install customization
#
verify-install-name-directive:
ifeq "" "$(INSTALL_NAME_DIRECTIVE)"
$(SILENT) $(ECHO) You must restore the INSTALL_NAME_DIRECTIVE variable
$(SILENT) $(ECHO) before installing a framework.
$(SILENT) exit 1
endif
install-dll: $(DSTROOT)$(FRAMEWORK_DLL_INSTALLDIR)
$(RM) -f $(DSTROOT)$(FRAMEWORK_DLL_INSTALLDIR)/$(NAME)$(DLL_EXT)
$(MV) $(DSTROOT)$(INSTALLDIR)/$(NAME).framework/$(NAME)$(DLL_EXT) $(DSTROOT)$(FRAMEWORK_DLL_INSTALLDIR)
#
# creating directories
#
$(DSTROOT)$(FRAMEWORK_DLL_INSTALLDIR):
$(MKDIRS) $@
-include $(LOCAL_MAKEFILEDIR)/framework.make.postamble