mirror of
ssh://git.janware.com/srv/git/janware/proj/jw-pkg
synced 2026-01-15 12:03:31 +01:00
CC, LD and CXX are builtin, and they also override ?=, so ?= is pointless. This solution disallows specifying a compiler from the environment. There should be some solution with $(origin CC), but this seems too clunky for now. Signed-off-by: Jan Lindemann <jan@janware.com>
85 lines
2.5 KiB
Makefile
85 lines
2.5 KiB
Makefile
# generic utility modules
|
|
# (c) 2001 jannet it services
|
|
# contact@jannet.de
|
|
# $Id$
|
|
|
|
include $(JWBDIR)/make/defs.mk
|
|
include $(JWBDIR)/make/defs-dirs.mk
|
|
include $(JWBDIR)/make/dev-utils.mk
|
|
|
|
CACHED_FILES ?= $(VERSION_FILE) $(wildcard $(TOPDIR)/make/project.conf)
|
|
CACHED_VARS ?= PROJECT PREREQ VERSION HEX_VERSION FULL_NAME \
|
|
WHICH PYTHON ECHO TEST BROWSER SED RM PWD ID CUT TR \
|
|
AWK GETENT XARGS FIND PRINTF HOST_TUPLE OS_NAME_VERSION \
|
|
OS_NAME CAT BIN_INSTALL SUDO
|
|
|
|
include $(JWBDIR)/make/cache.mk
|
|
|
|
ifneq ($(CREATE_DEVEL),false)
|
|
MKFILES += $(wildcard project.conf)
|
|
DEVEL_TARGETS += install_MAKE $(INSTALLED_PKG_MK)
|
|
ifeq ($(CREATE_PKG_CONFIG),true)
|
|
DEVEL_TARGETS += install_PKG_CONFIG
|
|
endif
|
|
endif
|
|
|
|
include $(JWBDIR)/make/rules.mk
|
|
|
|
INSTALL_PCKG_DEPS_DIR = $(ENV_PREFIX)$(JWBDIR)/make/deps.d
|
|
ifneq ($(wildcard pckg-deps.mk),)
|
|
INSTALLED_PKG_MK += $(INSTALL_PCKG_DEPS_DIR)/$(PROJECT).mk
|
|
endif
|
|
|
|
INSTALL_PCKG_DEFS_DIR = $(JWBDIR)/make/defs.d
|
|
ifneq ($(wildcard pckg-defs.mk),)
|
|
INSTALLED_PKG_MK += $(INSTALL_PCKG_DEFS_DIR)/$(PROJECT).mk
|
|
endif
|
|
|
|
ifeq ($(CREATE_PKG_CONFIG),true)
|
|
all: build_PKG_CONFIG
|
|
endif
|
|
install: $(DEVEL_TARGETS)
|
|
clean: textclean localclean doneclean clean.pkg-config
|
|
test:
|
|
|
|
$(INSTALL_PCKG_DEPS_DIR)/$(PROJECT).mk: pckg-deps.mk
|
|
mkdir -p $(dir $@)
|
|
$(INSTALL) -p -m $(MAKEMODE) -o $(MAKEOWNER) -g $(MAKEGROUP) $< $@
|
|
|
|
$(INSTALL_PCKG_DEFS_DIR)/$(PROJECT).mk: pckg-defs.mk
|
|
mkdir -p $(dir $@)
|
|
$(INSTALL) -p -m $(MAKEMODE) -o $(MAKEOWNER) -g $(MAKEGROUP) $< $@
|
|
|
|
install-links:
|
|
DEVELOPMENT=false make do-install-links
|
|
|
|
do-install-links:
|
|
@$(call install_links,MAKE)
|
|
|
|
ifeq ($(CREATE_PKG_CONFIG),true)
|
|
|
|
ifeq ($(EXPORT_PROJECT_LIB),true)
|
|
CREATE_PKG_CONFIG_OPTS += -c "-I$(PROJECT_DIRPATH)/include"
|
|
CREATE_PKG_CONFIG_OPTS += -l "-L$(PROJECT_DIRPATH)/lib -l$(PROJECT)"
|
|
endif
|
|
|
|
$(LOCAL_PKG_CONFIG): $(PROJECT_DESCR_FILE) $(JWBDIR)/make/make.mk $(JWB_SCRIPT_DIR)/create-pkg-config.sh
|
|
/bin/bash $(JWB_SCRIPT_DIR)/create-pkg-config.sh \
|
|
-F $< \
|
|
-n $(PROJECT) \
|
|
-v $(DIST_VERSION) \
|
|
-p $(PROJECT_DIRPATH) \
|
|
-V $(shell echo $(PROJECT) | tr a-z- A-Z_)_DIR=$(PROJECT_DIRPATH) \
|
|
-r "$(RPM_REQUIRES_RUN)" \
|
|
-R "$(RPM_REQUIRES_DEVEL)" \
|
|
-l "-L$(PROJECT_DIRPATH)/lib -l$(LIBNAME)" \
|
|
$(CREATE_PKG_CONFIG_OPTS) \
|
|
> $@.tmp
|
|
mv $@.tmp $@
|
|
|
|
$(BUILD_PKG_CONFIG): $(LOCAL_PKG_CONFIG)
|
|
|
|
endif # ifeq ($(CREATE_PKG_CONFIG),true)
|
|
|
|
clean.pkg-config:
|
|
$(RM) -f *.pc $(BUILD_PKG_CONFIG)
|