--- a/build/Makefile.defs Fri Sep 17 16:44:34 2010 +0300
+++ b/build/Makefile.defs Mon Oct 04 11:29:25 2010 +0300
@@ -28,8 +28,11 @@
endif
endif
+# Determine if we're building jrt or jrtext
+GEN_BUILD_FILES_DIR = $(if $(JRTEXT_SRC_ROOT),$(JRTEXT_SRC_ROOT),$(JAVA_SRC_ROOT))
+
# S60 release file (written if release is given explicitly on commandline)
-RD_JAVA_S60_RELEASE_FILE = $(JAVA_SRC_ROOT)/inc/java_s60_release.hrh
+RD_JAVA_S60_RELEASE_FILE = $(GEN_BUILD_FILES_DIR)/inc/java_s60_release.hrh
include $(JAVA_SRC_ROOT)/build/Makefile.project
@@ -40,6 +43,7 @@
$(error The environment variable JAVA_6_HOME is not defined)
endif
export JAVA_HOME=$(JAVA_6_HOME)
+ HASH_CHAR=\#
ifeq ($(notdir $(basename $(SHELL))),sh)
# Cygwin & Linux definitions
@@ -121,6 +125,7 @@
export PLATFORM = linux
QMAKE = qmake
ANT := ant
+ HASH_CHAR=\\\#
ifndef JAVA_BIN_ROOT
export JAVA_BIN_ROOT=$(JAVA_SRC_ROOT)/bin
@@ -185,6 +190,22 @@
export VARIANT
+# Specify RVCT version explicitly by default
+OVERRIDE_RVCT = 1
+SBSCONFIG = $(PLATFORM)_$(CFG)
+ifeq ($(OVERRIDE_RVCT),1)
+ ifeq ($(PLATFORM),armv5)
+ ifdef RD_JAVA_S60_RELEASE_10_1_ONWARDS
+ SBSCONFIG = $(PLATFORM)_$(CFG).rvct4_0
+ RVCTBIN = $(RVCT40BIN)
+ else
+ SBSCONFIG = $(PLATFORM)_$(CFG).rvct2_2
+ RVCTBIN = $(RVCT22BIN)
+ endif
+ export PATH:=$(RVCTBIN);$(subst $(RVCT40BIN),,$(subst $(RVCT22BIN),,$(PATH)))
+ endif
+endif
+
ANT_PROJECT_DEFINES = $(foreach d,$(PROJECT_DEFINES),-D$d=1)
COMPONENT_NAME ?= $(notdir $(CURDIR))
@@ -217,13 +238,16 @@
# Common ----------------------------------
# Export files need a build_defines file
-BUILDDEFINEFILE := $(JAVA_SRC_ROOT)/inc/build_defines.hrh
-QBUILDDEFINEFILE := $(JAVA_SRC_ROOT)/inc/build_defines.pri
-JAVAVERSIONFILE := $(JAVA_SRC_ROOT)/inc/java.txt
+BUILDDEFINEFILE := $(GEN_BUILD_FILES_DIR)/inc/build_defines.hrh
+QBUILDDEFINEFILE := $(GEN_BUILD_FILES_DIR)/inc/build_defines.pri
# Project define file is needed by export and native phases of nonqt components
# Native builds require project_defines.hrh for nonqt-mmp-files
-PROJECTDEFINEFILE = $(JAVA_SRC_ROOT)/inc/project_defines.hrh
+PROJECTDEFINEFILE = $(GEN_BUILD_FILES_DIR)/inc/project_defines.hrh
+
+# Java version file
+JAVAVERSIONFILE := $(GEN_BUILD_FILES_DIR)/inc/java.txt
+
ifndef FIRSTTIME_FLAG
export FIRSTTIME_FLAG = 1
@@ -237,7 +261,7 @@
ifeq ($(BUILDENV),symbian)
all init export configure qmake java native releasebuild test: echo_s60_release
echo_s60_release:
- @echo Building on top of S60 $(RD_JAVA_S60_RELEASE)
+ @echo Building on top of S60 $(RD_JAVA_S60_RELEASE), PLATFORM=$(PLATFORM) VARIANT=$(VARIANT)
endif
include $(JAVA_SRC_ROOT)/build/makefile.javaversion
@@ -245,13 +269,17 @@
COMMA = ,
JAVA_VERSION_ = $(subst .,$(COMMA),$(JAVA_VERSION))
-configure: generateconffiles generatereleasefile
+configure: create_inc_dir generateconffiles generatereleasefile
+
+create_inc_dir:
+ $(call MKDIR, $(call PATHFIX,$(GEN_BUILD_FILES_DIR)/inc))
+
generateconffiles:
@echo Writing $(BUILDDEFINEFILE) ... \
$(shell $(call CATCOMMAND,$(JAVA_SRC_ROOT)/build/templates/generated_header.txt) > $(BUILDDEFINEFILE)) \
- $(shell echo #define RD_JAVA_VERSION $(JAVA_VERSION_)>> $(BUILDDEFINEFILE)) \
- $(shell echo #define RD_JAVA_BIN_VERSION_NONQT $(shell python $(JAVA_SRC_ROOT)/build/buildutils/ver2binver.py mmp $(JAVA_VERSION))>> $(BUILDDEFINEFILE)) \
- $(foreach d, $(PROJECT_DEFINES), $(shell echo #define $d >> $(BUILDDEFINEFILE)))
+ $(shell echo $(HASH_CHAR)define RD_JAVA_VERSION $(JAVA_VERSION_)>> $(BUILDDEFINEFILE)) \
+ $(shell echo $(HASH_CHAR)define RD_JAVA_BIN_VERSION_NONQT $(shell python $(JAVA_SRC_ROOT)/build/buildutils/ver2binver.py mmp $(JAVA_VERSION))>> $(BUILDDEFINEFILE)) \
+ $(foreach d, $(PROJECT_DEFINES), $(shell echo $(HASH_CHAR)define $d>> $(BUILDDEFINEFILE)))
@echo Writing $(QBUILDDEFINEFILE) ... \
$(shell $(call CATCOMMAND,$(JAVA_SRC_ROOT)/build/templates/generated_header_hash.txt) > $(QBUILDDEFINEFILE)) \
$(shell echo RD_JAVA_BIN_VERSION = $(shell python $(JAVA_SRC_ROOT)/build/buildutils/ver2binver.py qmake $(JAVA_VERSION))>> $(QBUILDDEFINEFILE)) \