fritzkink
2023-12-27 706019354bab81fc3f01995caf1ae1a2dfa346cf
make-rules/cmake.mk
@@ -97,6 +97,7 @@
CMAKE_ENV += FCFLAGS="$(FCFLAGS)"
CMAKE_ENV += LDFLAGS="$(LDFLAGS)"
CMAKE_ENV += PKG_CONFIG_PATH="$(PKG_CONFIG_PATH)"
CMAKE_ENV += PATH="$(PATH)"
# Rewrite absolute source-code paths into relative for ccache, so that any
# workspace with a shared CCACHE_DIR can benefit when compiling a component
@@ -146,7 +147,7 @@
# variable that we can generally use to accomplish the same result.  Setting
# them both shouldn't harm anything.
CMAKE_OPTIONS += -DLIB_INSTALL_DIR="$(CMAKE_PREFIX)/$(CMAKE_LIBDIR.$(BITS))"
CMAKE_OPTIONS.64 += -DCMAKE_LIBRARY_ARCHITECTURE=amd64
CMAKE_OPTIONS.64 += -DCMAKE_LIBRARY_ARCHITECTURE=$(MACH64)
CMAKE_OPTIONS.64 += -DLIB_SUFFIX="/$(MACH64)"
endif
CMAKE_OPTIONS += $(CMAKE_OPTIONS.$(BITS))
@@ -163,6 +164,23 @@
# configure the unpacked source for building 32 and 64 bit version
CMAKE =   cmake
# provide test transforms for ctest
CMAKE_TEST_TRANSFORMS = \
   ' -e "s/[0-9]*\.[0-9]* sec//" ' \
   ' -n ' \
   ' -e "/Not Run/p" ' \
   ' -e "/Start/p" ' \
   ' -e "/Skipped/p" ' \
   ' -e "/Failed/p" ' \
   ' -e "/Passed/p" ' \
   ' -e "/failed/p" '
USE_DEFAULT_TEST_TRANSFORMS?=no
ifeq ($(strip $(USE_DEFAULT_TEST_TRANSFORMS)),yes)
COMPONENT_TEST_TRANSFORMS += $(CMAKE_TEST_TRANSFORMS)
endif
$(BUILD_DIR)/%/.configured:   $(SOURCE_DIR)/.prep
   ($(RM) -rf $(@D) ; $(MKDIR) $(@D))
   $(COMPONENT_PRE_CMAKE_ACTION)
@@ -205,13 +223,19 @@
   $(COMPONENT_TEST_CLEANUP)
   $(TOUCH) $@
$(BUILD_DIR)/%/.tested:   SHELLOPTS=pipefail
$(BUILD_DIR)/%/.tested:   $(BUILD_DIR)/%/.built
   $(RM) -rf $(COMPONENT_TEST_BUILD_DIR)
   $(MKDIR) $(COMPONENT_TEST_BUILD_DIR)
   $(COMPONENT_PRE_TEST_ACTION)
   (cd $(COMPONENT_TEST_DIR) ; \
      $(COMPONENT_TEST_ENV_CMD) $(COMPONENT_TEST_ENV) \
      $(COMPONENT_TEST_CMD) \
      $(COMPONENT_TEST_ARGS) $(COMPONENT_TEST_TARGETS))
      $(COMPONENT_TEST_ARGS) $(COMPONENT_TEST_TARGETS)) \
      |& $(TEE) $(COMPONENT_TEST_OUTPUT)
   $(COMPONENT_POST_TEST_ACTION)
   $(COMPONENT_TEST_CREATE_TRANSFORMS)
   $(COMPONENT_TEST_PERFORM_TRANSFORM)
   $(COMPONENT_TEST_CLEANUP)
   $(TOUCH) $@