Allow rdefs in subdirectories in makefile-engine.

Also use finddir instead of hardcoded paths for drivers and locale
catalog helper rules.

Fixes #11115. Thanks to Waddlesplash and Puckipedia for investigating
the issue.
This commit is contained in:
Adrien Destugues 2014-08-13 08:05:13 +02:00
parent b59ed15486
commit 6288f7b453

View File

@ -140,8 +140,8 @@ endef
OBJS = $(SRCS_LIST_TO_OBJS) OBJS = $(SRCS_LIST_TO_OBJS)
DEPENDS = $(SRCS_LIST_TO_DEPENDS) DEPENDS = $(SRCS_LIST_TO_DEPENDS)
# create a unique list of paths to our sourcefiles # create a unique list of paths to our sourcefiles and resources
SRC_PATHS += $(sort $(foreach file, $(SRCS), $(dir $(file)))) SRC_PATHS += $(sort $(foreach file, $(SRCS) $(RSRCS) $(RDEFS), $(dir $(file))))
# add source paths to VPATH if not already present # add source paths to VPATH if not already present
VPATH := VPATH :=
@ -351,8 +351,8 @@ rmapp ::
-rm -f $(TARGET) -rm -f $(TARGET)
# make it easy to install drivers for testing # make it easy to install drivers for testing
USER_BIN_PATH = /boot/home/config/add-ons/kernel/drivers/bin USER_BIN_PATH := $(shell finddir B_USER_NONPACKAGED_ADDONS_DIRECTORY)/kernel/drivers/bin
USER_DEV_PATH = /boot/home/config/add-ons/kernel/drivers/dev USER_DEV_PATH := $(shell finddir B_USER_NONPACKAGED_ADDONS_DIRECTORY)/kernel/drivers/dev
driverinstall :: default driverinstall :: default
ifeq ($(strip $(TYPE)), DRIVER) ifeq ($(strip $(TYPE)), DRIVER)
@ -369,10 +369,13 @@ else
cp $(TARGET) $(INSTALL_DIR)/$(NAME) cp $(TARGET) $(INSTALL_DIR)/$(NAME)
endif endif
# catalog installation directory
CATALOG_INSTALL_DIR := $(shell finddir B_USER_NONPACKAGED_DATA_DIRECTORY)/locale/catalogs
# rule to install localization resources catalogs # rule to install localization resources catalogs
catalogsinstall :: catalogs catalogsinstall :: catalogs
mkdir -p "/boot/home/config/data/locale/catalogs/$(APP_MIME_SIG)" mkdir -p "$(CATALOG_INSTALL_DIR)/$(APP_MIME_SIG)"
-cp $(CATALOGS_DIR)/*.catalog /boot/home/config/data/locale/catalogs/$(APP_MIME_SIG) -cp $(CATALOGS_DIR)/*.catalog "$(CATALOG_INSTALL_DIR)/$(APP_MIME_SIG)"
# alternative way of storing localization catalogs - bind into program executable's resources # alternative way of storing localization catalogs - bind into program executable's resources
bindcatalogs : bindcatalogs :