qtmobility/configure
changeset 14 6fbed849b4f4
parent 11 06b8e2af4411
child 15 1f895d8a5b2b
equal deleted inserted replaced
11:06b8e2af4411 14:6fbed849b4f4
    56 # as an example $2 might have value "maemo5".
    56 # as an example $2 might have value "maemo5".
    57 # This is required because when building in scratchbox for
    57 # This is required because when building in scratchbox for
    58 # maemo we do not want to follow symbolic links that are 
    58 # maemo we do not want to follow symbolic links that are 
    59 # introduced by scratchbox
    59 # introduced by scratchbox
    60 absPath() {
    60 absPath() {
    61     
       
    62     if [ "$2" = "maemo5" -o "$2" = "maemo6" ]; then
    61     if [ "$2" = "maemo5" -o "$2" = "maemo6" ]; then
    63         if [ `isAbsPath $1` = '1' ]; then
    62         if [ `isAbsPath $1` = '1' ]; then
    64             echo $1;
    63             echo $1;
    65         else
    64         else
    66             echo "Relative prefix paths are not supported for Maemo"
    65             echo >&2 "Relative prefix/bin/lib/header/plugin paths are not supported for Maemo"
    67             exit 1;
    66             exit 1;
    68         fi
    67         fi
    69     else
    68     else
    70         RESULT=`(cd "$1"; /bin/pwd)`
    69         PATH=`$relpath/bin/pathhelper $1`
    71         echo $RESULT
    70         echo $PATH
    72     fi
    71     fi
    73 }
    72 }
    74 
    73 
    75 
    74 
    76 # the current directory (shadow build dir)
    75 # the current directory (shadow build dir)
   310         echo "CONFIG+=maemo6" >> "$CONFIG_IN"
   309         echo "CONFIG+=maemo6" >> "$CONFIG_IN"
   311     fi
   310     fi
   312 fi
   311 fi
   313 
   312 
   314 #process PREFIX
   313 #process PREFIX
   315 if [ -d "$QT_MOBILITY_PREFIX" ]; then
   314 QT_MOBILITY_PREFIX=`absPath $QT_MOBILITY_PREFIX $LINUX_TARGET`
   316     QT_MOBILITY_PREFIX=`absPath $QT_MOBILITY_PREFIX $LINUX_TARGET`
   315 if [ "$?" -eq "1" ]; then
   317 else
   316     exit 1
   318     mkdir -p "$QT_MOBILITY_PREFIX"
       
   319     QT_MOBILITY_PREFIX=`absPath $QT_MOBILITY_PREFIX $LINUX_TARGET`
       
   320     rm -rf "$QT_MOBILITY_PREFIX"
       
   321 fi
   317 fi
   322 echo "QT_MOBILITY_PREFIX = $QT_MOBILITY_PREFIX" >> "$CONFIG_IN"
   318 echo "QT_MOBILITY_PREFIX = $QT_MOBILITY_PREFIX" >> "$CONFIG_IN"
   323 
   319 
   324 #process include path
   320 #process include path
   325 if [ -z "$QT_MOBILITY_INCLUDE" ]; then
   321 if [ -z "$QT_MOBILITY_INCLUDE" ]; then
   326     QT_MOBILITY_INCLUDE="$QT_MOBILITY_PREFIX/include"
   322     QT_MOBILITY_INCLUDE="$QT_MOBILITY_PREFIX/include"
   327 elif [ -d "$QT_MOBILITY_INCLUDE" ]; then
   323 else
   328     QT_MOBILITY_INCLUDE=`absPath $QT_MOBILITY_INCLUDE $LINUX_TARGET`
   324     QT_MOBILITY_INCLUDE=`absPath $QT_MOBILITY_INCLUDE $LINUX_TARGET`
   329 else
   325     if [ "$?" -eq "1" ]; then
   330     mkdir -p "$QT_MOBILITY_INCLUDE"
   326         exit 1
   331     QT_MOBILITY_INCLUDE=`absPath $QT_MOBILITY_INCLUDE $LINUX_TARGET`
   327     fi
   332     rm -rf "$QT_MOBILITY_INCLUDE"
       
   333 fi
   328 fi
   334 echo "QT_MOBILITY_INCLUDE = $QT_MOBILITY_INCLUDE" >> "$CONFIG_IN"
   329 echo "QT_MOBILITY_INCLUDE = $QT_MOBILITY_INCLUDE" >> "$CONFIG_IN"
   335 
   330 
   336 
   331 
   337 #process library path
   332 #process library path
   338 if [ -z "$QT_MOBILITY_LIB" ]; then
   333 if [ -z "$QT_MOBILITY_LIB" ]; then
   339     QT_MOBILITY_LIB="$QT_MOBILITY_PREFIX/$LIB_PATH"
   334     QT_MOBILITY_LIB="$QT_MOBILITY_PREFIX/$LIB_PATH"
   340 elif [ -d "$QT_MOBILITY_LIB" ]; then
   335 else
   341     QT_MOBILITY_LIB=`absPath $QT_MOBILITY_LIB $LINUX_TARGET`
   336     QT_MOBILITY_LIB=`absPath $QT_MOBILITY_LIB $LINUX_TARGET`
   342 else
   337     if [ "$?" -eq "1" ]; then
   343     mkdir -p "$QT_MOBILITY_LIB"
   338         exit 1
   344     QT_MOBILITY_LIB=`absPath $QT_MOBILITY_LIB $LINUX_TARGET`
   339     fi
   345     rm -rf "$QT_MOBILITY_LIB"
       
   346 fi
   340 fi
   347 echo "QT_MOBILITY_LIB = $QT_MOBILITY_LIB" >> "$CONFIG_IN"
   341 echo "QT_MOBILITY_LIB = $QT_MOBILITY_LIB" >> "$CONFIG_IN"
   348 
   342 
   349 #process bin path
   343 #process bin path
   350 if [ -z "$QT_MOBILITY_BIN" ]; then
   344 if [ -z "$QT_MOBILITY_BIN" ]; then
   351     QT_MOBILITY_BIN="$QT_MOBILITY_PREFIX/$BIN_PATH"
   345     QT_MOBILITY_BIN="$QT_MOBILITY_PREFIX/$BIN_PATH"
   352 elif [ -d "$QT_MOBILITY_BIN" ]; then
   346 else
   353     QT_MOBILITY_BIN=`absPath $QT_MOBILITY_BIN $LINUX_TARGET`
   347     QT_MOBILITY_BIN=`absPath $QT_MOBILITY_BIN $LINUX_TARGET`
   354 else
   348     if [ "$?" -eq "1" ]; then
   355     mkdir -p "$QT_MOBILITY_BIN"
   349         exit 1
   356     QT_MOBILITY_BIN=`absPath $QT_MOBILITY_BIN $LINUX_TARGET`
   350     fi
   357     rm -rf "$QT_MOBILITY_BIN"
       
   358 fi
   351 fi
   359 echo "QT_MOBILITY_BIN = $QT_MOBILITY_BIN" >> "$CONFIG_IN"
   352 echo "QT_MOBILITY_BIN = $QT_MOBILITY_BIN" >> "$CONFIG_IN"
   360 
   353 
   361 #process plugin path
   354 #process plugin path
   362 if [ -z "$QT_MOBILITY_PLUGINS" ]; then
   355 if [ -z "$QT_MOBILITY_PLUGINS" ]; then
   363     QT_MOBILITY_PLUGINS="$QT_MOBILITY_PREFIX/$PLUGIN_PATH"
   356     QT_MOBILITY_PLUGINS="$QT_MOBILITY_PREFIX/$PLUGIN_PATH"
   364 elif [ -d "$QT_MOBILITY_PLUGINS" ]; then
   357 else
   365     QT_MOBILITY_PLUGINS=`absPath $QT_MOBILITY_PLUGINS $LINUX_TARGET`
   358     QT_MOBILITY_PLUGINS=`absPath $QT_MOBILITY_PLUGINS $LINUX_TARGET`
   366 else
   359     if [ "$?" -eq "1" ]; then
   367     mkdir -p "$QT_MOBILITY_PLUGINS"
   360         exit 1
   368     QT_MOBILITY_PLUGINS=`absPath $QT_MOBILITY_PLUGINS $LINUX_TARGET`
   361     fi
   369     rm -rf "$QT_MOBILITY_PLUGINS"
       
   370 fi
   362 fi
   371 echo "QT_MOBILITY_PLUGINS = $QT_MOBILITY_PLUGINS" >> "$CONFIG_IN"
   363 echo "QT_MOBILITY_PLUGINS = $QT_MOBILITY_PLUGINS" >> "$CONFIG_IN"
   372 
   364 
   373 
   365 
   374 echo "QT_MOBILITY_SOURCE_TREE = $relpath" >> "$QMAKE_CACHE"
   366 echo "QT_MOBILITY_SOURCE_TREE = $relpath" >> "$QMAKE_CACHE"
   467 compileTest QMF qmf
   459 compileTest QMF qmf
   468 compileTest NetworkManager networkmanager
   460 compileTest NetworkManager networkmanager
   469 compileTest "CoreWLAN (MacOS 10.6)" corewlan
   461 compileTest "CoreWLAN (MacOS 10.6)" corewlan
   470 compileTest "Maemo ICD" maemo-icd
   462 compileTest "Maemo ICD" maemo-icd
   471 compileTest "Maemo ICD WLAN" maemo-icd-network-wlan
   463 compileTest "Maemo ICD WLAN" maemo-icd-network-wlan
       
   464 compileTest "Maemo5 contacts dependencies" maemo5-contacts
   472 if [ "$LINUX_TARGET" = maemo6 ]; then
   465 if [ "$LINUX_TARGET" = maemo6 ]; then
   473     compileTest sensord sensord
   466     compileTest sensord sensord
   474 else
   467 else
   475     echo "sensord_enabled = no" >> "$CONFIG_IN"
   468     echo "sensord_enabled = no" >> "$CONFIG_IN"
   476 fi
   469 fi
   479 # using 'expr match ....' should help a bit
   472 # using 'expr match ....' should help a bit
   480 #if [ -n "$MOBILITY_MODULES_UNPARSED" ]; then
   473 #if [ -n "$MOBILITY_MODULES_UNPARSED" ]; then
   481     # In theory we should do some sanity checking here.
   474     # In theory we should do some sanity checking here.
   482 #    MOBILITY_MODULES="$MOBILITY_MODULES_UNPARSED"
   475 #    MOBILITY_MODULES="$MOBILITY_MODULES_UNPARSED"
   483 #fi
   476 #fi
       
   477 
       
   478 # Test if able to build multimedia
       
   479 for module in $MOBILITY_MODULES; do
       
   480     case "$module" in
       
   481         multimedia)
       
   482             echo "contains(QT_CONFIG,multimedia):message(1)" > 1.pro
       
   483             SOMETHING=`qmake 1.pro 2>&1`
       
   484             if [ "$SOMETHING" = "Project MESSAGE: 1" ]; then
       
   485                 MOBILITY_MODULES="$(echo $MOBILITY_MODULES | sed 's:multimedia::g')"
       
   486                 echo "Only one multimedia module allowed, please rebuild Qt with -no-multimedia"
       
   487             fi
       
   488             rm 1.pro
       
   489             ;;
       
   490     esac
       
   491 done
       
   492 
       
   493 if [ -z "$MOBILITY_MODULES" ]; then
       
   494     echo "No module available to build."
       
   495     exit 1
       
   496 fi
   484 
   497 
   485 # It's a lot easier to make qmake do the dependency checking...
   498 # It's a lot easier to make qmake do the dependency checking...
   486 echo "mobility_modules = $MOBILITY_MODULES" >> "$CONFIG_IN"
   499 echo "mobility_modules = $MOBILITY_MODULES" >> "$CONFIG_IN"
   487 echo "contains(mobility_modules,versit): mobility_modules *= contacts" >> "$CONFIG_IN"
   500 echo "contains(mobility_modules,versit): mobility_modules *= contacts" >> "$CONFIG_IN"
   488 echo "maemo5|maemo6:contains(maemo-icd_enabled, no): mobility_modules -= bearer" >> "$CONFIG_IN"
   501 echo "maemo5|maemo6:contains(maemo-icd_enabled, no): mobility_modules -= bearer" >> "$CONFIG_IN"
   518             $relpath/bin/syncheaders $shadowpath/include/QtmContacts $relpath/src/contacts/details
   531             $relpath/bin/syncheaders $shadowpath/include/QtmContacts $relpath/src/contacts/details
   519             $relpath/bin/syncheaders $shadowpath/include/QtmContacts $relpath/src/contacts/requests
   532             $relpath/bin/syncheaders $shadowpath/include/QtmContacts $relpath/src/contacts/requests
   520             $relpath/bin/syncheaders $shadowpath/include/QtmContacts $relpath/src/contacts/filters
   533             $relpath/bin/syncheaders $shadowpath/include/QtmContacts $relpath/src/contacts/filters
   521             ;;
   534             ;;
   522         multimedia)
   535         multimedia)
   523             $relpath/bin/syncheaders $shadowpath/include/QtmMedia $relpath/src/multimedia
   536             $relpath/bin/syncheaders $shadowpath/include/QtMultimedia $relpath/src/multimedia
       
   537             $relpath/bin/syncheaders $shadowpath/include/QtMultimedia $relpath/src/multimedia/audio
       
   538             $relpath/bin/syncheaders $shadowpath/include/QtMultimedia $relpath/src/multimedia/video
   524             ;;
   539             ;;
   525         messaging)
   540         messaging)
   526             $relpath/bin/syncheaders $shadowpath/include/QtmMessaging $relpath/src/messaging
   541             $relpath/bin/syncheaders $shadowpath/include/QtmMessaging $relpath/src/messaging
   527             ;;
   542             ;;
   528         versit)
   543         versit)