2. Adding to make aarch64 sdk.
Change-Id: If33296bae6015cc277a9d71d8701356e902e40e2
@cd $(TOPDIR)
endif
+.ONESHELL: # Only applies to configsdk target
+configsdk64:
+ifeq ($(wildcard $(INFO_DIR)/.bb_list.txt),)
+ @echo "Please make a image firstly..."
+else
+ @cd $(TOPDIR)/config-sdk
+ @echo "$(INFO_DIR)/.bb_list.txt|$(TBB_INFO_IMAGE_NAME)|$(TBB_INFO_PLATFORM_VERSION)"
+ @$(TIC_CONFIG_ENV) ./make_extension.sh $(INFO_DIR)/.bb_list.txt $(TBB_INFO_PROFILE_NAME) $(TBB_PLATFORM_VERSION) --64bit
+ @cd $(TOPDIR)
+endif
+
.ONESHELL: # Only applies to configsdk target
cleansdk:
@cd $(TOPDIR)/config-sdk
source base_url.config
-if [ $# != 3 ]
+if [ $# -lt 3 ]
then
- echo "Usage : make_extension.sh <buildingblock list file> <profile> <platform verion>"
+ echo "Usage : make_extension.sh <buildingblock list file> <profile> <platform verion> [--64bit]"
echo " format of platform version : 4.0 , 5.0 , 5.5 or 6.0"
exit 1
fi
BB_LIST_FILE=$1
EXT_NAME=$2
VERSION=$3
+OPT_ARCH=""
+if [ "$4" = "--64bit" ]
+then
+ ARCH64=true
+ OPT_ARCH="--64bit"
+fi
if [ $VERSION == "6.0" ]
then
echo "Warning : There is no xml file.($RSXML)"
fi
done
+
+ if [ ${ARCH64} = true ]
+ then
+ find ./$RS_TBB \( -name "*-rs.xml" ! -iname "kernel-headers-linux-rs.xml" \) \
+ -exec xmlstarlet ed -L -u //rootstrap/emulator/rpm/@arch -v "x86_64" {} \; \
+ -exec xmlstarlet ed -L -u //rootstrap/target/rpm/@arch -v "aarch64" {} \; \
+ -exec xmlstarlet ed -L -u //rootstrap/library_path -v "/usr/lib64" {} \; \
+ -exec sed -i "s@<file>/usr/lib/@<file>/usr/lib64/@" {} \; \
+ -exec sed -i "s@<file>/lib/@<file>/lib64/@" {} \; \
+ -exec sed -i "s@<include_path>/usr/lib/@<include_path>/usr/lib64/@" {} \;
+ fi
}
CONFIG_FILE=iot_rs_config
make_config_file $VERSION $EXT_NAME
echo "5. Making rootstrap"
-./make_rootstrap.sh -C $CONFIG_FILE -c -t ./rs_tbb
+./make_rootstrap.sh -C $CONFIG_FILE -c -t ./rs_tbb ${OPT_ARCH}
if [ $? != 0 ]
then
fi
echo "6. Making pakcage"
-./package_rootstrap.sh -C $CONFIG_FILE
+./package_rootstrap.sh -C $CONFIG_FILE ${OPT_ARCH}
if [ $? != 0 ]
then
echo "Error to make package!!!!!!"
OPT_CLEAN=false
OPT_CONF=""
INTERNAL=false
+ARCH64=false
###############################################################################
# function usage
echo "Usage: $SCRIPT_NAME -C [<config_file>] [<OPTION>]... [<FILE>]..."
echo " -e, --emulator : Make Rootstrap for Emulator"
echo " -t, --target : Make Rootstrap for Target"
- echo " -c, --clean : Delete .rpm cache folder"
+ echo " -c, --clean : Delete .rpm cache folder"
+ echo " --64bit : 64bit"
echo " -h, --help"
echo " -v, --version : Display script version information"
echo ""
###############################################################################
## Get Parameter
###############################################################################
-OPTS=`getopt -o -C:tedchv --long target,emulator,downloadrpm,clean,help,version,internal -- "$@"`
+OPTS=`getopt -o -C:tedchv --long target,emulator,downloadrpm,clean,64bit,help,version,internal -- "$@"`
if [ $? != 0 ] ; then echo "Failed parsing options." >&2 ; exit 1 ; fi
echo ""
-h | --help )usage;exit 0;;
-v | --version )echo "${SCRIPT_NAME}" "version : $SCRIPT_VER"; exit 0 ;;
--internal ) INTERNAL=true; shift;;
+ --64bit ) ARCH64=true; shift;;
-- ) shift; break ;;
*) #file or directory
if [ -d "${1}" ] || [ -f "${1}" ]; then
esac
done
+echo "ARCH64 : $ARCH64"
+
if [ "$OPT_TARGET" = false ] && [ "$OPT_EMULATOR" = false ]
then
OPT_TARGET=true
if [ "$PLATFORM_VERSION" == "3.0" ] || [ "$PLATFORM_VERSION" == "4.0" ] || [ "$PLATFORM_VERSION" == "5.0" ] || [ "$PLATFORM_VERSION" == "5.5" ] || [ "$PLATFORM_VERSION" == "6.0" ]
then
- mv ${DIR_TARGET}/usr/include/asm-arm ${DIR_TARGET}/usr/include/asm
+ if [ ${ARCH64} = true ]
+ then
+ mv ${DIR_TARGET}/usr/include/asm-arm64 ${DIR_TARGET}/usr/include/asm
+ else
+ mv ${DIR_TARGET}/usr/include/asm-arm ${DIR_TARGET}/usr/include/asm
+ fi
mv ${DIR_TARGET}/usr/include/base/deprecated/* ${DIR_TARGET}/usr/include/base/
-
+
if [ "$INTERNAL" = false ]; then
echo "remove Non-Public EFL API"
$CMD_API_FILTER .target>/dev/null #EFL filter
if [ "$PLATFORM_VERSION" == "3.0" ] || [ "$PLATFORM_VERSION" == "4.0" ] || [ "$PLATFORM_VERSION" == "5.0" ] || [ "$PLATFORM_VERSION" == "5.5" ] || [ "$PLATFORM_VERSION" == "6.0" ]
then
- mv ${DIR_EMULATOR}/usr/include/asm-x86 ${DIR_EMULATOR}/usr/include/asm
+ if [ ${ARCH64} = true ]
+ then
+ mv ${DIR_EMULATOR}/usr/include/asm-i64 ${DIR_EMULATOR}/usr/include/asm
+ else
+ mv ${DIR_EMULATOR}/usr/include/asm-x86 ${DIR_EMULATOR}/usr/include/asm
+ fi
mv ${DIR_EMULATOR}/usr/include/base/deprecated/* ${DIR_EMULATOR}/usr/include/base/
-
-
+
+
if [ "$INTERNAL" = false ]; then
echo "remove Non-Public EFL API"
$CMD_API_FILTER .emulator >/dev/null #EFL filter
<necessary>
<file>/usr/include/efl-1/Efl.h</file>
<file>/usr/include/efl-1/Efl_MVVM_Common.h</file>
- <file>/usr/include/efl-1/interfaces/*</file>
+ <file>/usr/include/efl-1/interfaces/*</file>
</necessary>
<unnecessary>
</unnecessary>
<file>/usr/include/dali/public-api/adaptor-framework/widget.h</file>
<file>/usr/include/dali/public-api/adaptor-framework/widget-impl.h</file>
<file>/usr/include/dali/public-api/adaptor-framework/widget-application.h</file>
+ <file>/usr/include/dali/public-api/capture/capture.h</file>
<file>/usr/lib/libdali-adaptor.so</file>
<file>/usr/lib/libdali-adaptor-cxx11.so*</file>
</necessary>
<file>/usr/include/dali-toolkit/public-api/controls/video-view/video-view.h</file>
+ <file>/usr/include/dali-toolkit/public-api/image-loader/image.h</file>
<file>/usr/include/dali-toolkit/public-api/image-loader/async-image-loader.h</file>
<file>/usr/include/dali-toolkit/public-api/image-loader/sync-image-loader.h</file>
WGET_CMD="wget -nd -nc -q -r -l1 "
ERRMSG_CONTACT_AUTHOR="E-MAIL ADDRESS : "
ERR_AUTHOR=""
+BASE_LIB="/usr/lib"
###############################################################################
# function log
if [ ${#ERR_AUTHOR} -ne 0 ]; then
log "$ERRMSG_CONTACT_AUTHOR File : ${1}, $ERR_AUTHOR" 1>&2
-
- if [ -e ${LOGFILE} ] ; then
+
+ if [ -e ${LOGFILE} ] ; then
log "[ERROR] Filename: ${1}, Contact: $ERR_AUTHOR" 1>&2 | tee -a $LOGFILE
fi
fi
if [ $DOWNLOAD_COUNT -gt $FILE_COUNT ]
then
#check_error $ERROR_FAILED_DOWNLOAD_RPM "Fail to download rpm from ${1}. Expect number of DOWNLOAD files are [$DOWNLOAD_COUNT]. but actually count [$FILE_COUNT]"
- log "Fail to download rpm from ${1}.\nExpect number of DOWNLOAD files are [$DOWNLOAD_COUNT].\nbut actually count [$FILE_COUNT]" 1>&2
+ log "Fail to download rpm from ${1}.\nExpect number of DOWNLOAD files are [$DOWNLOAD_COUNT].\nbut actually count [$FILE_COUNT]" 1>&2
get_author ${1}
return $ERROR_FAILED_DOWNLOAD_RPM
fi
#######
# Pc
#######
- if [ -d "${TEMP_SRC_DIR}/usr/lib/pkgconfig" ]
+ if [ -d "${TEMP_SRC_DIR}/${BASE_LIB}/pkgconfig" ]
then
(
cd ${TEMP_SRC_DIR}
- cp -P -R --parents "./usr/lib/pkgconfig" "${TEMP_DEST_DIR}" ;
+ cp -P -R --parents "./${BASE_LIB}/pkgconfig" "${TEMP_DEST_DIR}" ;
)
fi
#script start
check_prerequisite
-OPTS=`getopt -o -t:u:b:l:i:p:wh --long type:,url:,base:,list:,id:,pw:,withlogin,help,internal,log: -n 'rootstrap_gen_1.0' -- "$@"`
+OPTS=`getopt -o -t:u:b:l:i:p:wh --long type:,url:,base:,list:,id:,pw:,withlogin,help,64bit,internal,log: -n 'rootstrap_gen_1.0' -- "$@"`
if [ $? != 0 ] ; then log "Failed parsing options." >&2 ; exit 1 ; fi
log ""
BASE_PKG_URL=""
XML_INPUT_LIST=""
INTERNAL=false
+ARCH64=false
while true; do
case "$1" in
fi
shift;;
--internal ) INTERNAL=true; shift;;
+ --64bit ) ARCH64=true; shift;;
-h | --help ) print_usage_exit $ERROR_USAGE; shift; shift ;;
-- ) shift; break ;;
* )
DEST=${PWD_BACKUP}/.${ROOTSTRAP_TYPE}
TMP=${PWD_BACKUP}/".tmp"
RPM_Directory=${PWD_BACKUP}/".rpm"
+if [ $ARCH64 = true ]
+then
+POSTLINKER_PATH=${PWD_BACKUP}"/script/postlinker_64"
+BASE_LIB="/usr/lib64"
+else
POSTLINKER_PATH=${PWD_BACKUP}"/script/postlinker"
+fi
if [ ! -e $POSTLINKER_PATH ]
then
then
continue;
fi
-
+
#unpack rpm
unpack_rpm $item
##################################################################
log "************* Post link *******************"
log "# POSTLINKER_PATH=$POSTLINKER_PATH"
-for i in $(find ${DEST}/usr/lib -name "*.so" -o -name "*.so.*")
+for i in $(find ${DEST}/${BASE_LIB} -name "*.so" -o -name "*.so.*")
do
${POSTLINKER_PATH} $i >/dev/null 1>&2
done