From: SeokYeon Hwang Date: Wed, 9 Sep 2015 13:52:05 +0000 (+0900) Subject: dibs: prepared cross building on DIBS X-Git-Tag: Tizen_Studio_1.3_Release_p2.3.2~40^2~127 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b0cdcf237a43e569d41035a33c8575be6115b432;p=sdk%2Femulator%2Fqemu.git dibs: prepared cross building on DIBS Change-Id: I2e669d1fb8cc7507608bcd898ac5cde740ca872d Signed-off-by: SeokYeon Hwang --- diff --git a/package/build.common b/package/build.common index e8c2d77c4b..ed3240ec3f 100644 --- a/package/build.common +++ b/package/build.common @@ -5,14 +5,13 @@ build_common() cd ${SRCDIR}/tizen - PKG_CONFIG_PATH=${ROOTDIR}/lib/pkgconfig:${ROOTDIR}/remote/lib/pkgconfig:${ROOTDIR}/libav/lib/pkgconfig + PKG_CONFIG_PATH=${ROOTDIR}/lib/pkgconfig PATH=${PATH}:${ROOTDIR}/bin PKG_CONFIG_PATH=${PKG_CONFIG_PATH} ./emulator_configure.sh x86 make clean - # FIXME: PKG_CONFIG_PATH is only for qt5_msg_box - PATH=${PATH} PKG_CONFIG_PATH=${PKG_CONFIG_PATH} make all_dibs -j8 + PATH=${PATH} make all_dibs -j8 make install_dibs if [ $? -eq 0 ] diff --git a/package/build.linux b/package/build.linux index 343ac2121d..d43568dbba 100755 --- a/package/build.linux +++ b/package/build.linux @@ -10,42 +10,69 @@ prepare() exit 1 fi - REQUIRED_PKG="ant python zlib1g-dev libglib2.0-dev libsdl1.2-dev libasound2-dev \ - libx11-dev libv4l-dev libxcomposite-dev libpixman-1-dev libcurl4-gnutls-dev \ - libcap-dev libattr1-dev" - - echo "Checking required packages before compling!!" - for pkg in ${REQUIRED_PKG} - do - dpkg -s ${pkg} > /dev/null - if [ "x$?" = "x0" ] - then - echo "checking ${pkg} ... OK" - else - echo "checking ${pkg} ... failure" - exit 1 - fi - done + if [ "${TARGET_OS}" = "windows-32" ] || [ "${TARGET_OS}" = "windows-64" ] + then + # for Windows target (cross compiling) + + # we should use cross compiler from mingw-x package + export PATH=/opt/mingw32/bin:$PATH + export CROSS_PREFIX=i686-w64-mingw32- + + # correct pc's prefix since windows install script is not run + # on linux + PCs=$(find ${ROOTDIR}/lib/pkgconfig -name '*.pc') + + for pc in ${PCs}; do + echo "${pc}" + LIB_DIR=${ROOTDIR} + sed -i '/LIBDIR=/d' ${pc} + sed -i '/^prefix=/!b;c\prefix=${LIBDIR}' ${pc} + sed -i "1s|^|LIBDIR=${LIB_DIR}\n|" ${pc} + done + + # mingw-x doesn't have zlib, so we use our own. + export EXTRA_CFLAGS=-I${ROOTDIR}/include + export EXTRA_LDFLAGS=-L${ROOTDIR}/lib + else + # for linux target + + REQUIRED_PKG="ant python zlib1g-dev libglib2.0-dev libsdl1.2-dev \ + libasound2-dev libx11-dev libv4l-dev libxcomposite-dev \ + libpixman-1-dev libcurl4-gnutls-dev libcap-dev libattr1-dev" + + echo "Checking required packages before compling!!" + for pkg in ${REQUIRED_PKG} + do + dpkg -s ${pkg} > /dev/null + if [ "x$?" = "x0" ] + then + echo "checking ${pkg} ... OK" + else + echo "checking ${pkg} ... failure" + exit 1 + fi + done + fi } # clean clean() { - echo "nothing to do" + echo "nothing to do" } # build build() { - . $SRCDIR/package/build.common - build_common + . $SRCDIR/package/build.common + build_common } # install install() { - . $SRCDIR/package/build.common - install_common + . $SRCDIR/package/build.common + install_common } [ "$1" = "clean" ] && clean diff --git a/tizen/emulator_configure.sh b/tizen/emulator_configure.sh index bb6244e70a..0a88f86a7f 100755 --- a/tizen/emulator_configure.sh +++ b/tizen/emulator_configure.sh @@ -81,14 +81,18 @@ if [ -z "$TIZEN_SDK_DEV_PATH" ] ; then fi fi +if [ ! -z "$EXTRA_CFLAGS" ] ; then + CONFIGURE_APPEND="$CONFIGURE_APPEND --extra-cflags=$EXTRA_CFLAGS" +fi + +if [ ! -z "$EXTRA_LDFLAGS" ] ; then + CONFIGURE_APPEND="$CONFIGURE_APPEND --extra-ldflags=$EXTRA_LDFLAGS" +fi + echo "##### checking for os... Host OS $hostos, Target OS $targetos" echo "##### TIZEN_SDK_DEV_PATH: ${TIZEN_SDK_DEV_PATH}" echo "$*" -if [ -z "$EMUL_TARGET_LIST" ] ; then - set_target all -fi - # avoid pkg-config bug on Windows if [ -z ${PKG_CONFIG_PATH} ] ; then export PKG_CONFIG_PATH=${TIZEN_SDK_DEV_PATH}/distrib/lib/pkgconfig