summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksandar Bozhinovski <aleksandar.bozhinovski@seavus.com>2012-05-09 11:33:53 +0200
committerViktor Mladenovski <viktor.mladenovski@seavus.com>2012-05-25 14:47:32 +0200
commit9aa6b84a5e16a7b49bc33bb90ade668aca350812 (patch)
treecddba7770f18348afcfde2e2a93cc4c65b2c809e
parentf5ee26db1fc2b706a23b71ac6bc61b56dc60cdf4 (diff)
Reconfigure output folderste-dev
When using android build, intermediate build files now are placed in $OUT folder, not in the source folder. ST-Ericsson ID: 432503 ST-Ericsson FOSS-OUT ID: STETL-FOSS-OUT-10204 Change-Id: Id5b27ab3fae32a573ee684731bb17fb162920ec0 Depends-On: Ief5705e34a63b14cdd9506360bd0d8ce10458e95 Depends-On: Id2aa896b7a7dfd572bf589a22c0f4e41d1848370 Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/58521 Tested-by: Vlatko STENKOSKI Tested-by: Cvetko MLADENOVSKI <cvetko.mladenovski@seavus.com> Reviewed-by: Zoran ALEKSOV <zoran.aleksov@seavus.com>
-rw-r--r--Android.mk8
-rw-r--r--Makefile23
-rw-r--r--lcmodule/Makefile34
-rwxr-xr-xsource/gen_rc.sh5
4 files changed, 44 insertions, 26 deletions
diff --git a/Android.mk b/Android.mk
index a13e8aa..a28cab1 100644
--- a/Android.mk
+++ b/Android.mk
@@ -54,11 +54,11 @@ install-lcm: build-lcm
$(MAKE) -C $(PRIVATE_LC_LCM_DIR) $(PRIVATE_LC_LCM_FLAGS) CONFIG_DIR=$(PRIVATE_LC_LCM_OUT_DIR) install
.PHONY: clean-lcm
-clean-lcm:
+clean-lcm: config-lcm
$(MAKE) -C $(PRIVATE_LC_LCM_DIR) $(PRIVATE_LC_LCM_FLAGS) CONFIG_DIR=$(PRIVATE_LC_LCM_OUT_DIR) clean
.PHONY: distclean-lcm
-distclean-lcm:
+distclean-lcm: config-lcm
$(MAKE) -C $(PRIVATE_LC_LCM_DIR) $(PRIVATE_LC_LCM_FLAGS) CONFIG_DIR=$(PRIVATE_LC_LCM_OUT_DIR) distclean
#LCD TARGETS
@@ -77,11 +77,11 @@ install-lcd: build-lcd
$(MAKE) -C $(PRIVATE_LC_LCD_DIR) $(PRIVATE_LC_LCD_FLAGS) CONFIG_DIR=$(PRIVATE_LC_LCD_OUT_DIR) install
.PHONY: clean-lcd
-clean-lcd:
+clean-lcd: config-lcd
$(MAKE) -C $(PRIVATE_LC_LCD_DIR) $(PRIVATE_LC_LCD_FLAGS) CONFIG_DIR=$(PRIVATE_LC_LCD_OUT_DIR) clean
.PHONY: distclean-lcd
-distclean-lcd:
+distclean-lcd: config-lcd
$(MAKE) -C $(PRIVATE_LC_LCD_DIR) $(PRIVATE_LC_LCD_FLAGS) CONFIG_DIR=$(PRIVATE_LC_LCD_OUT_DIR) distclean
clean clobber: clean-lcm clean-lcd
diff --git a/Makefile b/Makefile
index 5cc580e..239bf9d 100644
--- a/Makefile
+++ b/Makefile
@@ -137,14 +137,12 @@ build: $(SCRIPT)
$(MAKE) -C . start-build
# Start Win x32 Build
ifeq ($(USE_MINGW_X32),1)
- bash $(LCD_DIR)source/gen_rc.sh --lcd
$(MAKE) -C . start-build BUILD_WIN=1
else
@echo "*** warning: No Cross Compiler $(MINGW_X32_CC)g++ found ***"
endif
# Start Win x64 Build
ifeq ($(USE_MINGW_X64),1)
- bash $(LCD_DIR)source/gen_rc.sh --lcd
$(MAKE) -C . start-build BUILD_WIN=2
else
@echo "*** warning: No Cross Compiler $(MINGW_X64_CC)g++ found ***"
@@ -228,9 +226,9 @@ $(BUILDFOLDER)/$(LIB_x32_OBJ_DIR)/%.o: source/api_wrappers/linux/%.cpp $(AUTOGEN
endif
ifeq ($(BUILD_WIN),1)
-$(BUILDFOLDER)/$(LIB_x32_OBJ_DIR)/%.o: out/autogen/outLCDriver.rc $(AUTOGEN_FILES)
+$(BUILDFOLDER)/$(LIB_x32_OBJ_DIR)/%.o: $(AUTO_DIR_LIB)/outLCDriver.rc $(AUTOGEN_FILES)
@mkdir -p $(dir $@)
- $(MINGW_X32_CC)windres out/autogen/outLCDriver.rc $(BUILDFOLDER)/$(LIB_x32_OBJ_DIR)/$(@F)
+ $(MINGW_X32_CC)windres $(AUTO_DIR_LIB)/outLCDriver.rc $(BUILDFOLDER)/$(LIB_x32_OBJ_DIR)/$(@F)
endif
#
@@ -271,9 +269,9 @@ $(BUILDFOLDER)/$(LIB_x64_OBJ_DIR)/%.o: source/api_wrappers/linux/%.cpp $(AUTOGEN
endif
ifeq ($(BUILD_WIN),2)
-$(BUILDFOLDER)/$(LIB_x64_OBJ_DIR)/%.o: out/autogen/outLCDriver.rc $(AUTOGEN_FILES)
+$(BUILDFOLDER)/$(LIB_x64_OBJ_DIR)/%.o: $(AUTO_DIR_LIB)/outLCDriver.rc $(AUTOGEN_FILES)
@mkdir -p $(dir $@)
- $(MINGW_X64_CC)windres out/autogen/outLCDriver.rc $(BUILDFOLDER)/$(LIB_x64_OBJ_DIR)/$(@F)
+ $(MINGW_X64_CC)windres $(AUTO_DIR_LIB)/outLCDriver.rc $(BUILDFOLDER)/$(LIB_x64_OBJ_DIR)/$(@F)
endif
#Autogen files
@@ -321,6 +319,10 @@ $(AUTO_DIR_LIB)/LcdVersion.cpp: $(LCD_DIR)source/gen_version_files.sh | setup_fo
@echo "Generating autogen $(AUTO_DIR_LIB)/LcdVersion.cpp..."
bash $(LCD_DIR)source/gen_version_files.sh --lcd $(abspath $(AUTO_DIR_LIB)) $(abspath $(LCD_DIR))
+$(AUTO_DIR_LIB)/outLCDriver.rc: $(LCD_DIR)source/gen_rc.sh | setup_folders
+ @echo "Generating autogen $(AUTO_DIR_LIB)/outLCDriver.rc..."
+ bash $(LCD_DIR)source/gen_rc.sh --lcd $(AUTO_DIR_LIB)
+
#setting up needed folders
$(BUILDFOLDER): | configfile
@mkdir -p $@ 2> /dev/null
@@ -374,10 +376,16 @@ config: LIB_x32_OBJ_DIR := x32
config: LIB_x64_OBJ_DIR := x64
config: LCD_INSTALLDIR := /tmp/
config:
+ifeq ($(CONFIG_DIR),)
+ BUILDOUT := $(LCD_DIR)out
+else
+ BUILDOUT := $(CONFIG_DIR)/out
+endif
+config:
@echo Generating config file...
@rm -f $(config_file)
@touch $(config_file)
- @echo "BUILDOUT := \$$(LCD_DIR)out" >> $(config_file)
+ @echo "BUILDOUT := $(BUILDOUT)" >> $(config_file)
@echo "ifeq (\$$(BUILD_WIN),)" >> $(config_file)
@echo "BUILDFOLDER := \$$(BUILDOUT)/out_linux" >> $(config_file)
@@ -440,7 +448,6 @@ clean:
$(MAKE) -C . start-clean BUILD_WIN=2
start-clean:
- @rm -f $(LCD_DIR)out/autogen/outLCDriver.rc
$(if $(BUILDFOLDER), \
$(if $(LIB_x32_OBJ_DIR), \
@rm -rf $(BUILDFOLDER)/$(LIB_x32_OBJ_DIR) \
diff --git a/lcmodule/Makefile b/lcmodule/Makefile
index 3aac38a..37cb19e 100644
--- a/lcmodule/Makefile
+++ b/lcmodule/Makefile
@@ -20,6 +20,7 @@ LCM_CONFIG:=$(LCM_CNH_PATH)/config
LCM_CUST_CONFIG:=$(LCM_PATH)/customer_config
SUPPORTED_CMDS_PATH:=$(LOADER_DIR)/src/platform_support/stn8500/config/supported_commands.xml
+
ifneq ($(shell which $(MINGW_X32_CC)gcc), )
USE_MINGW_X32 := 1
else
@@ -126,13 +127,11 @@ endif
build:
$(MAKE) -C . start-build
ifeq ($(USE_MINGW_X32),1)
- bash ${LCM_PATH}/../source/gen_rc.sh --lcm
$(MAKE) -C . start-build BUILD_WIN=1
else
@echo "*** warning: No Cross Compiler $(MINGW_X32_CC)gcc found ***"
endif
ifeq ($(USE_MINGW_X64),1)
- bash ${LCM_PATH}/../source/gen_rc.sh --lcm
$(MAKE) -C . start-build BUILD_WIN=2
else
@echo "*** warning: No Cross Compiler $(MINGW_X64_CC)gcc found ***"
@@ -205,9 +204,9 @@ $(BUILDFOLDER)/$(LIB_x32_OBJ_DIR)/lcm_version.o: $(LCM_AUTO_DIR)/lcm_version.c
$(CC) $(INCLUDES) $(CFLAGS) -c -m32 $< -o $(BUILDFOLDER)/$(LIB_x32_OBJ_DIR)/$(@F)
ifeq ($(BUILD_WIN),1)
-$(BUILDFOLDER)/$(LIB_x32_OBJ_DIR)/%.o: out/autogen/outLCM.rc $(AUTOGEN_FILES)
+$(BUILDFOLDER)/$(LIB_x32_OBJ_DIR)/%.o: $(LCM_AUTO_DIR)/outLCM.rc $(AUTOGEN_FILES)
@mkdir -p $(dir $@)
- $(MINGW_X32_CC)windres out/autogen/outLCM.rc $(BUILDFOLDER)/$(LIB_x32_OBJ_DIR)/$(@F)
+ $(MINGW_X32_CC)windres $(LCM_AUTO_DIR)/outLCM.rc $(BUILDFOLDER)/$(LIB_x32_OBJ_DIR)/$(@F)
endif
#
@@ -238,9 +237,9 @@ $(BUILDFOLDER)/$(LIB_x64_OBJ_DIR)/lcm_version.o: $(LCM_AUTO_DIR)/lcm_version.c
$(CC) $(INCLUDES) $(CFLAGS) -c $< -o $(BUILDFOLDER)/$(LIB_x64_OBJ_DIR)/$(@F)
ifeq ($(BUILD_WIN),2)
-$(BUILDFOLDER)/$(LIB_x64_OBJ_DIR)/%.o: out/autogen/outLCM.rc $(AUTOGEN_FILES)
+$(BUILDFOLDER)/$(LIB_x64_OBJ_DIR)/%.o: $(LCM_AUTO_DIR)/outLCM.rc $(AUTOGEN_FILES)
@mkdir -p $(dir $@)
- $(MINGW_X64_CC)windres out/autogen/outLCM.rc $(BUILDFOLDER)/$(LIB_x64_OBJ_DIR)/$(@F)
+ $(MINGW_X64_CC)windres $(LCM_AUTO_DIR)/outLCM.rc $(BUILDFOLDER)/$(LIB_x64_OBJ_DIR)/$(@F)
endif
#Autogen files
@@ -298,6 +297,9 @@ $(AUTO_DIR_LOADER)/custom_command_marshal.c: $(LCM_CUST_CONFIG)/custom_commands.
$(LCM_AUTO_DIR)/lcm_version.c: ${LCM_PATH}/../source/gen_version_files.sh | setup_folders
bash ${LCM_PATH}/../source/gen_version_files.sh --lcm $(abspath $(LCM_AUTO_DIR)) $(abspath $(LCM_PATH))
+$(LCM_AUTO_DIR)/outLCM.rc: ${LCM_PATH}/../source/gen_rc.sh | setup_folders
+ bash ${LCM_PATH}/../source/gen_rc.sh --lcm $(abspath $(LCM_AUTO_DIR))
+
#setting up needed folders
$(BUILDFOLDER): | configfile
@mkdir -p $@ 2> /dev/null
@@ -331,7 +333,8 @@ $(LCM_AUTO_DIR)/.autodirdummy : | $(LCM_AUTO_DIR)
.PHONY: setup_folders
setup_folders: validatevariables
-setup_folders: $(AUTO_DIR_LOADER)/.autodirldrdummy $(AUTO_DIR_LIB)/.autodirlibdummy $(LCM_AUTO_DIR)/.autodirdummy $(LCMLIB_INSTALLDIR)/.libinstalldummy
+setup_folders: $(BUILDFOLDER)/.builddummy $(LCMLIB_INSTALLDIR)/.libinstalldummy
+setup_folders: $(AUTO_DIR_LOADER)/.autodirldrdummy $(AUTO_DIR_LIB)/.autodirlibdummy $(LCM_AUTO_DIR)/.autodirdummy
@echo $< > /dev/null
@@ -369,11 +372,17 @@ config: LIB_x32_OBJ_DIR := x32
config: LIB_x64_OBJ_DIR := x64
config: LOADER_DIR := ./
config:
+ifeq ($(CONFIG_DIR),)
+ BUILDOUT := $(LCM_PATH)/out
+else
+ BUILDOUT := $(CONFIG_DIR)/out
+endif
+config:
@echo Generating config file...
@echo config_file : $(config_file)
@rm -f $(config_file)
@touch $(config_file)
- @echo "BUILDOUT := \$$(LCM_PATH)/out" >> $(config_file)
+ @echo "BUILDOUT := $(BUILDOUT)" >> $(config_file)
@echo "ifeq (\$$(BUILD_WIN),)" >> $(config_file)
@echo "BUILDFOLDER := \$$(BUILDOUT)/out_linux" >> $(config_file)
@@ -461,16 +470,15 @@ clean:
$(MAKE) -C . start-clean BUILD_WIN=2
start-clean:
- @rm -f $(LCM_PATH)out/autogen/outLCM.rc
$(if ${BUILDFOLDER}, \
$(if ${LIB_x32_OBJ_DIR}, \
- @rm -rf ${BUILDFOLDER}/${LIB_x32_OBJ_DIR}/*.o \
+ @rm -f ${BUILDFOLDER}/${LIB_x32_OBJ_DIR}/*.o \
@rm -rf ${BUILDFOLDER}/${LIB_x32_OBJ_DIR} \
@rm -rf ${BUILDFOLDER},),)
ifeq ($(LBITS),64)
$(if ${BUILDFOLDER}, \
$(if ${LIB_x64_OBJ_DIR}, \
- @rm -rf ${BUILDFOLDER}/${LIB_x64_OBJ_DIR}/*.o \
+ @rm -f ${BUILDFOLDER}/${LIB_x64_OBJ_DIR}/*.o \
@rm -rf ${BUILDFOLDER}/${LIB_x64_OBJ_DIR} \
@rm -rf ${BUILDFOLDER},),)
endif
@@ -482,9 +490,11 @@ endif
@rm -rf ${BUILDOUT},)
distclean: clean
-
+ $(if ${LCMLIB_INSTALLDIR}, \
@rm -f ${LCMLIB_INSTALLDIR}/LCM.dll \
@rm -f $(LCMLIB_INSTALLDIR)/LCM_x64.dll \
+ @rm -f ${LCMLIB_INSTALLDIR}/liblcm.$(LIB_EXTENSION) \
+ @rm -f ${LCMLIB_INSTALLDIR}/liblcm_x64.$(LIB_EXTENSION),)
$(if ${LCM_AUTO_DIR}, \
@rm -rf ${LCM_AUTO_DIR},)
$(if $(config_file), \
diff --git a/source/gen_rc.sh b/source/gen_rc.sh
index 61400ab..abee67c 100755
--- a/source/gen_rc.sh
+++ b/source/gen_rc.sh
@@ -20,8 +20,9 @@ DATE=""
#git revision info
VERSION=""
-LCD_RC_PATH=out/autogen/outLCDriver.rc
-LCM_RC_PATH=out/autogen/outLCM.rc
+path=$2
+LCD_RC_PATH=$path/outLCDriver.rc
+LCM_RC_PATH=$path/outLCM.rc
# ------------------------------INTERNAL FUNCTIONS ----------------------------