diff --git a/acinclude.m4 b/acinclude.m4 index 38323b1d9..e50254329 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -82,21 +82,33 @@ check_path () { ]) +dnl expand nested ${foo}/bar +AC_DEFUN([TUXBOX_EXPAND_VARIABLE],[__$1="$2" + for __CNT in false false false false true; do dnl max 5 levels of indirection + + $1=`eval echo "$__$1"` + echo ${$1} | grep -q '\$' || break # 'grep -q' is POSIX, exit if no $ in variable + __$1="${$1}" + done + $__CNT && AC_MSG_ERROR([can't expand variable $1=$2]) dnl bail out if we did not expand +]) + AC_DEFUN([TUXBOX_APPS_DIRECTORY_ONE],[ AC_ARG_WITH($1,[ $6$7 [[PREFIX$4$5]]],[ _$2=$withval if test "$TARGET" = "cdk"; then - $2=`eval echo "$TARGET_PREFIX$withval"` + $2=`eval echo "$TARGET_PREFIX$withval"` # no indirection possible IMNSHO else $2=$withval fi TARGET_$2=${$2} ],[ - $2="\${$3}$5" + # RFC 1925: "you can always add another level of indirection..." + TUXBOX_EXPAND_VARIABLE($2,"${$3}$5") if test "$TARGET" = "cdk"; then - _$2=`eval echo "${target$3}$5"` + TUXBOX_EXPAND_VARIABLE(_$2,"${target$3}$5") else - _$2=`eval echo "${$3}$5"` + _$2=${$2} fi TARGET_$2=$_$2 ]) @@ -317,6 +329,7 @@ if $PKG_CONFIG --exists "$2" ; then AC_MSG_RESULT(yes) $1_CFLAGS=$($PKG_CONFIG --cflags "$2") $1_LIBS=$($PKG_CONFIG --libs "$2") + $1_EXISTS=yes else AC_MSG_RESULT(no) fi @@ -327,7 +340,7 @@ AC_SUBST($1_LIBS) AC_DEFUN([TUXBOX_APPS_LIB_PKGCONFIG],[ _TUXBOX_APPS_LIB_PKGCONFIG($1,$2) -if test -z "$$1_CFLAGS" ; then +if test x"$$1_EXISTS" != xyes; then AC_MSG_ERROR([could not find package $2]); fi ]) diff --git a/configure.ac b/configure.ac index f4d28a7ba..bac79fa15 100644 --- a/configure.ac +++ b/configure.ac @@ -89,8 +89,16 @@ fi AM_CONDITIONAL(USE_TREMOR, test "$TREMOR" = "yes") # TUXBOX_APPS_LIB_PKGCONFIG(OPENSSL,openssl) -TUXBOX_APPS_LIB_CONFIG(CURL,curl-config) -TUXBOX_APPS_LIB_CONFIG(FREETYPE,freetype-config) +TUXBOX_APPS_LIB_PKGCONFIG(CURL,libcurl) +TUXBOX_APPS_LIB_PKGCONFIG(FREETYPE,freetype2) +# fallback to curl-config (which is ugly for cross-compilation) +if test -z "$CURL_LIBS" -a -z "$CURL_CFLAGS"; then + TUXBOX_APPS_LIB_CONFIG(CURL,curl-config) +fi +# fallback to freetype-config (which is ugly for cross-compilation) +if test -z "$FREETYPE_LIBS" -a -z "$FREETYPE_CFLAGS"; then + TUXBOX_APPS_LIB_CONFIG(FREETYPE,freetype-config) +fi TUXBOX_APPS_LIB_PKGCONFIG(PNG,libpng) TUXBOX_APPS_LIB_PKGCONFIG(AVFORMAT,libavformat) diff --git a/lib/libdvbsub/Makefile.am b/lib/libdvbsub/Makefile.am index 6ac627d08..aa9082181 100644 --- a/lib/libdvbsub/Makefile.am +++ b/lib/libdvbsub/Makefile.am @@ -4,6 +4,7 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/src \ -I$(top_srcdir)/src/zapit/include \ @AVFORMAT_CFLAGS@ \ + @SIGC_CFLAGS@ \ @HWLIB_CFLAGS@ AM_CPPFLAGS += -fno-rtti -fno-exceptions diff --git a/lib/libtuxtxt/Makefile.am b/lib/libtuxtxt/Makefile.am index 7ea232ad1..5d24e483e 100644 --- a/lib/libtuxtxt/Makefile.am +++ b/lib/libtuxtxt/Makefile.am @@ -4,6 +4,7 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/src \ -I$(top_srcdir)/src/zapit/include \ $(FREETYPE_CFLAGS) \ + @SIGC_CFLAGS@ \ @HWLIB_CFLAGS@ AM_CPPFLAGS += -fno-rtti -fno-exceptions diff --git a/src/gui/channellist.cpp b/src/gui/channellist.cpp index 5bb4f06ef..c6c9bafa3 100644 --- a/src/gui/channellist.cpp +++ b/src/gui/channellist.cpp @@ -1080,10 +1080,12 @@ bool CChannelList::checkLockStatus(neutrino_msg_data_t data, bool pip) out: if (startvideo) { if(pip) { +#ifdef ENABLE_PIP if (CNeutrinoApp::getInstance()->StartPip((*chanlist)[selected]->getChannelID())) { calcSize(); paintBody(); } +#endif } else g_RemoteControl->startvideo(); return true; diff --git a/src/gui/update_ext.cpp b/src/gui/update_ext.cpp index c946c89b5..3e6246d36 100644 --- a/src/gui/update_ext.cpp +++ b/src/gui/update_ext.cpp @@ -324,7 +324,7 @@ bool CExtUpdate::applySettings() fd2 = -1; int tmpCount = 0; while (fd2 < 0) { - fd2 = open(mtdBlockFileName.c_str(), O_WRONLY); + fd2 = open(mtdBlockFileName.c_str(), O_WRONLY, 00644); tmpCount++; if (tmpCount > 3) break; @@ -375,7 +375,7 @@ bool CExtUpdate::applySettings() if (fd1 < 0) return ErrorReset(RESET_UNLOAD | DELETE_MTDBUF, "cannot read mtdBlock"); fsize = mtdRamSize; - fd2 = open(imgFilename.c_str(), O_WRONLY | O_CREAT); + fd2 = open(imgFilename.c_str(), O_WRONLY | O_CREAT, 00644); if (fd2 < 0) return ErrorReset(RESET_UNLOAD | CLOSE_FD1 | DELETE_MTDBUF, "cannot open image file: ", imgFilename); while(fsize > 0) { diff --git a/src/zapit/src/Makefile.am b/src/zapit/src/Makefile.am index a1dac17bc..0130f3a8a 100644 --- a/src/zapit/src/Makefile.am +++ b/src/zapit/src/Makefile.am @@ -11,6 +11,7 @@ AM_CPPFLAGS += \ -I$(top_srcdir)/lib/libeventserver \ -I$(top_srcdir)/lib/xmltree \ @FREETYPE_CFLAGS@ \ + @SIGC_CFLAGS@ \ @HWLIB_CFLAGS@ noinst_LIBRARIES = libzapit.a