.gitignore AR = @(AR) AS = @(AS) CC = @(CC) CXX = @(CXX) LD= @(LD) OBJCOPY = @(OBJCOPY) OUT_DIR=$(TUP_CWD)/out DEV_DIR = $(TUP_CWD)/dev DEV_LIB_DIR = $(DEV_DIR)/lib ifdef IS_GCC include tup-genode/gcc.tup endif ifdef IS_LLVM include tup-genode/llvm.tup endif ifeq ($(TOOLCHAIN_CONFIGURED),) error no toolchain configuration is active endif ifneq ($(TOOLCHAIN_CONFIGURED),X) error "multiple toolchain configurations are active " endif ifeq (@(TUP_ARCH),i386) X86 = y endif ifeq (@(TUP_ARCH),x86_64) X86 = y endif GENODE_DIR = $(TUP_CWD) !prg = | $(DEV_DIR)/ $(DEV_DIR)/ \ |> ^o LD %o^ \ $(LD) $(LD_MARCH) $(LDFLAGS) \ %f \ -L$(DEV_LIB_DIR) \ `$(PKG_CONFIG) --libs $(LIBS) genode-prg` \ $(LIBGCC) \ -o %o \ |> %d !lib = | $(DEV_DIR)/ $(DEV_DIR)/ |> ^o LD %o^ $(LD) $(LD_MARCH) %f $(LDFLAGS) `$(PKG_CONFIG) --libs genode-lib $(LIBS)` -L$(DEV_LIB_DIR) -o %o |> %d.lib.so !collect_bin = |> ^ COLLECT %b^ \ $STRIP -o %o %f \ |> $(OUT_DIR)/bin/%b $(OUT_DIR)/ !collect_shared = |> ^ COLLECT %b^ \ cp %f %o \ |> $(OUT_DIR)/lib/%b $(OUT_DIR)/ !collect_static = |> ^ COLLECT %b^ \ cp %f %o \ |> $(DEV_LIB_DIR)/%b \ $(DEV_DIR)/ \ export PKG_CONFIG_PATH PKG_CONFIG_DIR = $(DEV_DIR)/lib/pkgconfig PKG_CONFIG = PKG_CONFIG_PATH=$(PKG_CONFIG_DIR) @(PKGCONFIG) CFLAGS += -g CXXFLAGS += -g ifdef OLEVEL OLEVEL = @(OLEVEL) else OLEVEL = -O2 endif export STRIP !strip = |> $STRIP -o %o %f |> !ln = |> ln -s %f %o |> export AR !ar = |> $AR -rcs %o %f |> %d.a GIT_VERSION = `git describe || echo @(VERSION)` SED_PKGCONFIG_FLAGS += -e "s|@VERSION@|$(GIT_VERSION)|" !sed_pkgconfig_file = |> ^o SED %B^ \ sed $(SED_PKGCONFIG_FLAGS) $(SED_FLAGS) < %f > %o; \ $(PKG_CONFIG) --validate %o; \ |> $(PKG_CONFIG_DIR)/%B $(DEV_DIR)/ !sed_pkgconfig_flags = |> ^o SED %d.pc^ \ sed $(SED_PKGCONFIG_FLAGS) $(SED_FLAGS) > %o; \ $(PKG_CONFIG) --validate %o; \ |> $(PKG_CONFIG_DIR)/%d.pc $(DEV_DIR)/ !emit_lib_pkg_config = |> ^ emit %d.a pkg-config^ \ echo Name: %d >> %o; \ echo Description: Genode %d library >> %o; \ echo Version: $(GIT_VERSION) >> %o; \ echo Libs: -l:%d.a >> %o; \ $(PKG_CONFIG) --validate %o; \ |> $(PKG_CONFIG_DIR)/%d.pc $(DEV_DIR)/