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) |