diff -Nru libmpd-0.18.0/aclocal.m4 libmpd-0.19.0/aclocal.m4 --- libmpd-0.18.0/aclocal.m4 2009-03-09 16:22:40.000000000 +0000 +++ libmpd-0.19.0/aclocal.m4 2009-09-21 11:06:04.000000000 +0100 @@ -2316,14 +2316,7 @@ *) objformat=elf ;; esac fi - # Handle Gentoo/FreeBSD as it was Linux - case $host_vendor in - gentoo) - version_type=linux ;; - *) - version_type=freebsd-$objformat ;; - esac - + version_type=freebsd-$objformat case $version_type in freebsd-elf*) library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' @@ -2334,12 +2327,6 @@ library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' need_version=yes ;; - linux) - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - need_lib_prefix=no - need_version=no - ;; esac shlibpath_var=LD_LIBRARY_PATH case $host_os in @@ -2513,6 +2500,18 @@ dynamic_linker='GNU/Linux ld.so' ;; +netbsdelf*-gnu) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='NetBSD ld.elf_so' + ;; + netbsd*) version_type=sunos need_lib_prefix=no @@ -3104,7 +3103,7 @@ lt_cv_deplibs_check_method=pass_all ;; -netbsd*) +netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' else @@ -3785,7 +3784,7 @@ ;; esac ;; - netbsd*) + netbsd* | netbsdelf*-gnu) ;; *qnx* | *nto*) # QNX uses GNU C++, but need to define -shared option too, otherwise @@ -4210,6 +4209,9 @@ cygwin* | mingw* | cegcc*) _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;/^.*[[ ]]__nm__/s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols' ;; + linux* | k*bsd*-gnu) + _LT_TAGVAR(link_all_deplibs, $1)=no + ;; *) _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' ;; @@ -4456,7 +4458,7 @@ fi ;; - netbsd*) + netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= @@ -4631,6 +4633,7 @@ if test "$aix_use_runtimelinking" = yes; then shared_flag="$shared_flag "'${wl}-G' fi + _LT_TAGVAR(link_all_deplibs, $1)=no else # not using gcc if test "$host_cpu" = ia64; then @@ -4869,7 +4872,7 @@ _LT_TAGVAR(link_all_deplibs, $1)=yes ;; - netbsd*) + netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else @@ -8046,14 +8049,16 @@ # _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) # --------------------------------------------- m4_define([_PKG_CONFIG], -[if test -n "$$1"; then - pkg_cv_[]$1="$$1" - elif test -n "$PKG_CONFIG"; then - PKG_CHECK_EXISTS([$3], - [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`], - [pkg_failed=yes]) - else - pkg_failed=untried +[if test -n "$PKG_CONFIG"; then + if test -n "$$1"; then + pkg_cv_[]$1="$$1" + else + PKG_CHECK_EXISTS([$3], + [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`], + [pkg_failed=yes]) + fi +else + pkg_failed=untried fi[]dnl ])# _PKG_CONFIG @@ -8097,9 +8102,9 @@ if test $pkg_failed = yes; then _PKG_SHORT_ERRORS_SUPPORTED if test $_pkg_short_errors_supported = yes; then - $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$2" 2>&1` + $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "$2"` else - $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors "$2" 2>&1` + $1[]_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"` fi # Put the nasty error message in config.log where it belongs echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD @@ -8425,59 +8430,61 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -#serial 4 +#serial 5 # _AM_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], -[# Autoconf 2.62 quotes --file arguments for eval, but not when files -# are listed without --file. Let's play safe and only enable the eval -# if we detect the quoting. -case $CONFIG_FILES in -*\'*) eval set x "$CONFIG_FILES" ;; -*) set x $CONFIG_FILES ;; -esac -shift -for mf -do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named `Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # Grep'ing the whole file is not good either: AIX grep has a line - # limit of 2048, but all sed's we know have understand at least 4000. - if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then - dirpart=`AS_DIRNAME("$mf")` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running `make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n 's/^U = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`AS_DIRNAME(["$file"])` - AS_MKDIR_P([$dirpart/$fdir]) - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" +[{ + # Autoconf 2.62 quotes --file arguments for eval, but not when files + # are listed without --file. Let's play safe and only enable the eval + # if we detect the quoting. + case $CONFIG_FILES in + *\'*) eval set x "$CONFIG_FILES" ;; + *) set x $CONFIG_FILES ;; + esac + shift + for mf + do + # Strip MF so we end up with the name of the file. + mf=`echo "$mf" | sed -e 's/:.*$//'` + # Check whether this is an Automake generated Makefile or not. + # We used to match only the files named `Makefile.in', but + # some people rename them; so instead we look at the file content. + # Grep'ing the first line is not enough: some people post-process + # each Makefile.in and add a new line on top of each file to say so. + # Grep'ing the whole file is not good either: AIX grep has a line + # limit of 2048, but all sed's we know have understand at least 4000. + if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then + dirpart=`AS_DIRNAME("$mf")` + else + continue + fi + # Extract the definition of DEPDIR, am__include, and am__quote + # from the Makefile without running `make'. + DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` + test -z "$DEPDIR" && continue + am__include=`sed -n 's/^am__include = //p' < "$mf"` + test -z "am__include" && continue + am__quote=`sed -n 's/^am__quote = //p' < "$mf"` + # When using ansi2knr, U may be empty or an underscore; expand it + U=`sed -n 's/^U = //p' < "$mf"` + # Find all dependency output files, they are included files with + # $(DEPDIR) in their names. We invoke sed twice because it is the + # simplest approach to changing $(DEPDIR) to its actual value in the + # expansion. + for file in `sed -n " + s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do + # Make sure the directory exists. + test -f "$dirpart/$file" && continue + fdir=`AS_DIRNAME(["$file"])` + AS_MKDIR_P([$dirpart/$fdir]) + # echo "creating $dirpart/$file" + echo '# dummy' > "$dirpart/$file" + done done -done +} ])# _AM_OUTPUT_DEPENDENCY_COMMANDS diff -Nru /tmp/MCjLit738T/libmpd-0.18.0/config.guess /tmp/6pey5ChugS/libmpd-0.19.0/config.guess --- libmpd-0.18.0/config.guess 2009-03-09 16:22:41.000000000 +0000 +++ libmpd-0.19.0/config.guess 2009-09-21 11:06:04.000000000 +0100 @@ -4,7 +4,7 @@ # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 # Free Software Foundation, Inc. -timestamp='2008-09-28' +timestamp='2008-01-23' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -139,23 +139,6 @@ UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown -if [ "${UNAME_SYSTEM}" = "Linux" ] ; then - eval $set_cc_for_build - cat << EOF > $dummy.c - #include - #ifdef __UCLIBC__ - # ifdef __UCLIBC_CONFIG_VERSION__ - LIBC=uclibc __UCLIBC_CONFIG_VERSION__ - # else - LIBC=uclibc - # endif - #else - LIBC=gnu - #endif -EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep LIBC= | sed -e 's: ::g'` -fi - # Note: order is significant - the case branches are not exclusive. case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in @@ -813,7 +796,7 @@ x86) echo i586-pc-interix${UNAME_RELEASE} exit ;; - EM64T | authenticamd | genuineintel) + EM64T | authenticamd) echo x86_64-unknown-interix${UNAME_RELEASE} exit ;; IA64) @@ -857,31 +840,31 @@ if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_EABI__ then - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu else - echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi + echo ${UNAME_MACHINE}-unknown-linux-gnueabi fi exit ;; avr32*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; cris:Linux:*:*) - echo cris-axis-linux-${LIBC} + echo cris-axis-linux-gnu exit ;; crisv32:Linux:*:*) - echo crisv32-axis-linux-${LIBC} + echo crisv32-axis-linux-gnu exit ;; frv:Linux:*:*) - echo frv-unknown-linux-${LIBC} + echo frv-unknown-linux-gnu exit ;; ia64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; m32r*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; m68*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; mips:Linux:*:*) eval $set_cc_for_build @@ -904,7 +887,7 @@ s: ::g p }'`" - test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; } + test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } ;; mips64:Linux:*:*) eval $set_cc_for_build @@ -927,16 +910,16 @@ s: ::g p }'`" - test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; } + test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } ;; or32:Linux:*:*) - echo or32-unknown-linux-${LIBC} + echo or32-unknown-linux-gnu exit ;; ppc:Linux:*:*) - echo powerpc-unknown-linux-${LIBC} + echo powerpc-unknown-linux-gnu exit ;; ppc64:Linux:*:*) - echo powerpc64-unknown-linux-${LIBC} + echo powerpc64-unknown-linux-gnu exit ;; alpha:Linux:*:*) case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in @@ -949,43 +932,40 @@ EV68*) UNAME_MACHINE=alphaev68 ;; esac objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null - if test "$?" = 0 ; then LIBC="gnulibc1" ; fi - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} - exit ;; - padre:Linux:*:*) - echo sparc-unknown-linux-gnu + if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi + echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} exit ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in - PA7*) echo hppa1.1-unknown-linux-${LIBC} ;; - PA8*) echo hppa2.0-unknown-linux-${LIBC} ;; - *) echo hppa-unknown-linux-${LIBC} ;; + PA7*) echo hppa1.1-unknown-linux-gnu ;; + PA8*) echo hppa2.0-unknown-linux-gnu ;; + *) echo hppa-unknown-linux-gnu ;; esac exit ;; parisc64:Linux:*:* | hppa64:Linux:*:*) - echo hppa64-unknown-linux-${LIBC} + echo hppa64-unknown-linux-gnu exit ;; s390:Linux:*:* | s390x:Linux:*:*) echo ${UNAME_MACHINE}-ibm-linux exit ;; sh64*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; sh*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; sparc:Linux:*:* | sparc64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; vax:Linux:*:*) - echo ${UNAME_MACHINE}-dec-linux-${LIBC} + echo ${UNAME_MACHINE}-dec-linux-gnu exit ;; x86_64:Linux:*:*) - echo x86_64-unknown-linux-${LIBC} + echo x86_64-unknown-linux-gnu exit ;; xtensa*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; i*86:Linux:*:*) # The BFD linker knows what the default object file format is, so @@ -1000,19 +980,20 @@ p'` case "$ld_supported_targets" in elf32-i386) - TENTATIVE="${UNAME_MACHINE}-pc-linux-${LIBC}" + TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" ;; a.out-i386-linux) - echo "${UNAME_MACHINE}-pc-linux-${LIBC}aout" + echo "${UNAME_MACHINE}-pc-linux-gnuaout" + exit ;; + coff-i386) + echo "${UNAME_MACHINE}-pc-linux-gnucoff" exit ;; "") # Either a pre-BFD a.out linker (linux-gnuoldld) or # one that does not give us useful --help. - echo "${UNAME_MACHINE}-pc-linux-${LIBC}oldld" + echo "${UNAME_MACHINE}-pc-linux-gnuoldld" exit ;; esac - # This should get integrated into the C code below, but now we hack - if [ "$LIBC" != "gnu" ] ; then echo "$TENTATIVE" && exit 0 ; fi # Determine whether the default compiler is a.out or elf eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c @@ -1235,9 +1216,6 @@ BePC:BeOS:*:*) # BeOS running on Intel PC compatible. echo i586-pc-beos exit ;; - BePC:Haiku:*:*) # Haiku running on Intel PC compatible. - echo i586-pc-haiku - exit ;; SX-4:SUPER-UX:*:*) echo sx4-nec-superux${UNAME_RELEASE} exit ;; diff -Nru /tmp/MCjLit738T/libmpd-0.18.0/config.sub /tmp/6pey5ChugS/libmpd-0.19.0/config.sub --- libmpd-0.18.0/config.sub 2009-03-09 16:22:41.000000000 +0000 +++ libmpd-0.19.0/config.sub 2009-09-21 11:06:04.000000000 +0100 @@ -4,7 +4,7 @@ # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 # Free Software Foundation, Inc. -timestamp='2008-09-08' +timestamp='2008-01-16' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software @@ -244,20 +244,18 @@ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ | bfin \ | c4x | clipper \ - | d10v | d30v | dlx | dsp16xx | dvp \ + | d10v | d30v | dlx | dsp16xx \ | fido | fr30 | frv \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | i370 | i860 | i960 | ia64 \ | ip2k | iq2000 \ | m32c | m32r | m32rle | m68000 | m68k | m88k \ - | maxq | mb | microblaze | mcore | mep | metag \ + | maxq | mb | microblaze | mcore | mep \ | mips | mipsbe | mipseb | mipsel | mipsle \ | mips16 \ | mips64 | mips64el \ - | mips64octeon | mips64octeonel \ - | mips64orion | mips64orionel \ - | mips64r5900 | mips64r5900el \ | mips64vr | mips64vrel \ + | mips64orion | mips64orionel \ | mips64vr4100 | mips64vr4100el \ | mips64vr4300 | mips64vr4300el \ | mips64vr5000 | mips64vr5000el \ @@ -279,7 +277,7 @@ | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ | pyramid \ | score \ - | sh | sh[1234] | sh[24]a | sh[24]a*eb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ + | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ | sh64 | sh64le \ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ @@ -288,7 +286,7 @@ | v850 | v850e \ | we32k \ | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ - | z8k | z80) + | z8k) basic_machine=$basic_machine-unknown ;; m6811 | m68hc11 | m6812 | m68hc12) @@ -333,14 +331,12 @@ | ip2k-* | iq2000-* \ | m32c-* | m32r-* | m32rle-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ - | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ + | m88110-* | m88k-* | maxq-* | mcore-* \ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips16-* \ | mips64-* | mips64el-* \ - | mips64octeon-* | mips64octeonel-* \ - | mips64orion-* | mips64orionel-* \ - | mips64r5900-* | mips64r5900el-* \ | mips64vr-* | mips64vrel-* \ + | mips64orion-* | mips64orionel-* \ | mips64vr4100-* | mips64vr4100el-* \ | mips64vr4300-* | mips64vr4300el-* \ | mips64vr5000-* | mips64vr5000el-* \ @@ -362,20 +358,20 @@ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ | pyramid-* \ | romp-* | rs6000-* \ - | sh-* | sh[1234]-* | sh[24]a-* | sh[24]a*eb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ + | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ | sparclite-* \ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ | tahoe-* | thumb-* \ - | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \ + | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ | tron-* \ | v850-* | v850e-* | vax-* \ | we32k-* \ | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ | xstormy16-* | xtensa*-* \ | ymp-* \ - | z8k-* | z80-*) + | z8k-*) ;; # Recognize the basic CPU types without company name, with glob match. xtensa*) @@ -463,10 +459,6 @@ basic_machine=c90-cray os=-unicos ;; - cegcc) - basic_machine=arm-unknown - os=-cegcc - ;; convex-c1) basic_machine=c1-convex os=-bsd @@ -534,10 +526,6 @@ basic_machine=m88k-motorola os=-sysv3 ;; - dicos) - basic_machine=i686-pc - os=-dicos - ;; djgpp) basic_machine=i586-pc os=-msdosdjgpp @@ -726,24 +714,6 @@ basic_machine=m68k-atari os=-mint ;; - mipsEE* | ee | ps2) - basic_machine=mips64r5900el-scei - case $os in - -linux*) - ;; - *) - os=-elf - ;; - esac - ;; - iop) - basic_machine=mipsel-scei - os=-irx - ;; - dvp) - basic_machine=dvp-scei - os=-elf - ;; mips3*-*) basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` ;; @@ -1158,10 +1128,6 @@ basic_machine=z8k-unknown os=-sim ;; - z80-*-coff) - basic_machine=z80-unknown - os=-sim - ;; none) basic_machine=none-none os=-none @@ -1282,7 +1248,7 @@ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ - | -chorusos* | -chorusrdb* | -cegcc* \ + | -chorusos* | -chorusrdb* \ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ | -uxpv* | -beos* | -mpeix* | -udk* \ @@ -1292,7 +1258,7 @@ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ - | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -irx*) + | -skyos* | -haiku* | -rdos* | -toppers* | -drops*) # Remember, each alternative MUST END IN *, to match a version number. ;; -qnx*) @@ -1422,9 +1388,6 @@ -zvmoe) os=-zvmoe ;; - -dicos*) - os=-dicos - ;; -none) ;; *) diff -Nru /tmp/MCjLit738T/libmpd-0.18.0/configure /tmp/6pey5ChugS/libmpd-0.19.0/configure --- libmpd-0.18.0/configure 2009-03-09 16:22:42.000000000 +0000 +++ libmpd-0.19.0/configure 2009-09-21 11:06:04.000000000 +0100 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.63 for libmpd 0.18.0. +# Generated by GNU Autoconf 2.63 for libmpd 0.19.0. # # Report bugs to . # @@ -745,8 +745,8 @@ # Identity of this package. PACKAGE_NAME='libmpd' PACKAGE_TARNAME='libmpd' -PACKAGE_VERSION='0.18.0' -PACKAGE_STRING='libmpd 0.18.0' +PACKAGE_VERSION='0.19.0' +PACKAGE_STRING='libmpd 0.19.0' PACKAGE_BUGREPORT='qball@sarine.nl' # Factoring default headers for most tests. @@ -1477,7 +1477,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures libmpd 0.18.0 to adapt to many kinds of systems. +\`configure' configures libmpd 0.19.0 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1547,7 +1547,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of libmpd 0.18.0:";; + short | recursive ) echo "Configuration of libmpd 0.19.0:";; esac cat <<\_ACEOF @@ -1649,7 +1649,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -libmpd configure 0.18.0 +libmpd configure 0.19.0 generated by GNU Autoconf 2.63 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -1663,7 +1663,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by libmpd $as_me 0.18.0, which was +It was created by libmpd $as_me 0.19.0, which was generated by GNU Autoconf 2.63. Invocation command line was $ $0 $@ @@ -2385,7 +2385,7 @@ # Define the identity of the package. PACKAGE='libmpd' - VERSION='0.18.0' + VERSION='0.19.0' cat >>confdefs.h <<_ACEOF @@ -2532,7 +2532,7 @@ # This makes sure the right substitution is done LIBMPD_MAJOR_VERSION=0 -LIBMPD_MINOR_VERSION=18 +LIBMPD_MINOR_VERSION=19 LIBMPD_MICRO_VERSION=0 @@ -2542,7 +2542,7 @@ # R is on changed source code. # A is age (added interfaces) # -LIBMPD_LIBTOOL_VERSION=1:0:0 +LIBMPD_LIBTOOL_VERSION=2:0:1 ac_ext=c @@ -5126,7 +5126,7 @@ lt_cv_deplibs_check_method=pass_all ;; -netbsd*) +netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' else @@ -8513,7 +8513,7 @@ fi ;; - netbsd*) + netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= @@ -8688,6 +8688,7 @@ if test "$aix_use_runtimelinking" = yes; then shared_flag="$shared_flag "'${wl}-G' fi + link_all_deplibs=no else # not using gcc if test "$host_cpu" = ia64; then @@ -9102,7 +9103,7 @@ link_all_deplibs=yes ;; - netbsd*) + netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else @@ -9848,14 +9849,7 @@ *) objformat=elf ;; esac fi - # Handle Gentoo/FreeBSD as it was Linux - case $host_vendor in - gentoo) - version_type=linux ;; - *) - version_type=freebsd-$objformat ;; - esac - + version_type=freebsd-$objformat case $version_type in freebsd-elf*) library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' @@ -9866,12 +9860,6 @@ library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' need_version=yes ;; - linux) - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - need_lib_prefix=no - need_version=no - ;; esac shlibpath_var=LD_LIBRARY_PATH case $host_os in @@ -10092,6 +10080,18 @@ dynamic_linker='GNU/Linux ld.so' ;; +netbsdelf*-gnu) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='NetBSD ld.elf_so' + ;; + netbsd*) version_type=sunos need_lib_prefix=no @@ -11593,10 +11593,11 @@ { $as_echo "$as_me:$LINENO: checking for glib" >&5 $as_echo_n "checking for glib... " >&6; } -if test -n "$glib_CFLAGS"; then - pkg_cv_glib_CFLAGS="$glib_CFLAGS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ +if test -n "$PKG_CONFIG"; then + if test -n "$glib_CFLAGS"; then + pkg_cv_glib_CFLAGS="$glib_CFLAGS" + else + if test -n "$PKG_CONFIG" && \ { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.16\"") >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.16") 2>&5 ac_status=$? @@ -11606,13 +11607,15 @@ else pkg_failed=yes fi - else - pkg_failed=untried + fi +else + pkg_failed=untried fi -if test -n "$glib_LIBS"; then - pkg_cv_glib_LIBS="$glib_LIBS" - elif test -n "$PKG_CONFIG"; then - if test -n "$PKG_CONFIG" && \ +if test -n "$PKG_CONFIG"; then + if test -n "$glib_LIBS"; then + pkg_cv_glib_LIBS="$glib_LIBS" + else + if test -n "$PKG_CONFIG" && \ { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.16\"") >&5 ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.16") 2>&5 ac_status=$? @@ -11622,8 +11625,9 @@ else pkg_failed=yes fi - else - pkg_failed=untried + fi +else + pkg_failed=untried fi @@ -11636,9 +11640,9 @@ _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - glib_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "glib-2.0 >= 2.16" 2>&1` + glib_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "glib-2.0 >= 2.16"` else - glib_PKG_ERRORS=`$PKG_CONFIG --print-errors "glib-2.0 >= 2.16" 2>&1` + glib_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "glib-2.0 >= 2.16"` fi # Put the nasty error message in config.log where it belongs echo "$glib_PKG_ERRORS" >&5 @@ -12468,7 +12472,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by libmpd $as_me 0.18.0, which was +This file was extended by libmpd $as_me 0.19.0, which was generated by GNU Autoconf 2.63. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -12531,7 +12535,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -libmpd config.status 0.18.0 +libmpd config.status 0.19.0 configured by $0, generated by GNU Autoconf 2.63, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" @@ -13575,27 +13579,28 @@ case $ac_file$ac_mode in - "depfiles":C) test x"$AMDEP_TRUE" != x"" || # Autoconf 2.62 quotes --file arguments for eval, but not when files -# are listed without --file. Let's play safe and only enable the eval -# if we detect the quoting. -case $CONFIG_FILES in -*\'*) eval set x "$CONFIG_FILES" ;; -*) set x $CONFIG_FILES ;; -esac -shift -for mf -do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named `Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # Grep'ing the whole file is not good either: AIX grep has a line - # limit of 2048, but all sed's we know have understand at least 4000. - if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then - dirpart=`$as_dirname -- "$mf" || + "depfiles":C) test x"$AMDEP_TRUE" != x"" || { + # Autoconf 2.62 quotes --file arguments for eval, but not when files + # are listed without --file. Let's play safe and only enable the eval + # if we detect the quoting. + case $CONFIG_FILES in + *\'*) eval set x "$CONFIG_FILES" ;; + *) set x $CONFIG_FILES ;; + esac + shift + for mf + do + # Strip MF so we end up with the name of the file. + mf=`echo "$mf" | sed -e 's/:.*$//'` + # Check whether this is an Automake generated Makefile or not. + # We used to match only the files named `Makefile.in', but + # some people rename them; so instead we look at the file content. + # Grep'ing the first line is not enough: some people post-process + # each Makefile.in and add a new line on top of each file to say so. + # Grep'ing the whole file is not good either: AIX grep has a line + # limit of 2048, but all sed's we know have understand at least 4000. + if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then + dirpart=`$as_dirname -- "$mf" || $as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$mf" : 'X\(//\)[^/]' \| \ X"$mf" : 'X\(//\)$' \| \ @@ -13618,28 +13623,28 @@ q } s/.*/./; q'` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running `make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n 's/^U = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`$as_dirname -- "$file" || + else + continue + fi + # Extract the definition of DEPDIR, am__include, and am__quote + # from the Makefile without running `make'. + DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` + test -z "$DEPDIR" && continue + am__include=`sed -n 's/^am__include = //p' < "$mf"` + test -z "am__include" && continue + am__quote=`sed -n 's/^am__quote = //p' < "$mf"` + # When using ansi2knr, U may be empty or an underscore; expand it + U=`sed -n 's/^U = //p' < "$mf"` + # Find all dependency output files, they are included files with + # $(DEPDIR) in their names. We invoke sed twice because it is the + # simplest approach to changing $(DEPDIR) to its actual value in the + # expansion. + for file in `sed -n " + s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do + # Make sure the directory exists. + test -f "$dirpart/$file" && continue + fdir=`$as_dirname -- "$file" || $as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$file" : 'X\(//\)[^/]' \| \ X"$file" : 'X\(//\)$' \| \ @@ -13662,7 +13667,7 @@ q } s/.*/./; q'` - { as_dir=$dirpart/$fdir + { as_dir=$dirpart/$fdir case $as_dir in #( -*) as_dir=./$as_dir;; esac @@ -13703,10 +13708,11 @@ } || test -d "$as_dir" || { { $as_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 $as_echo "$as_me: error: cannot create directory $as_dir" >&2;} { (exit 1); exit 1; }; }; } - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" + # echo "creating $dirpart/$file" + echo '# dummy' > "$dirpart/$file" + done done -done +} ;; "libtool":C) diff -Nru /tmp/MCjLit738T/libmpd-0.18.0/configure.ac /tmp/6pey5ChugS/libmpd-0.19.0/configure.ac --- libmpd-0.18.0/configure.ac 2009-03-09 16:22:39.000000000 +0000 +++ libmpd-0.19.0/configure.ac 2009-09-21 11:06:04.000000000 +0100 @@ -1,7 +1,7 @@ -AC_INIT([libmpd], [0.18.0], [qball@sarine.nl]) +AC_INIT([libmpd], [0.19.0], [qball@sarine.nl]) AM_CONFIG_HEADER(config.h) m4_define([package_major_version], [0]) -m4_define([package_minor_version], [18]) +m4_define([package_minor_version], [19]) m4_define([package_micro_version], [0]) m4_define([package_version], [package_major_version.package_minor_version.package_micro_version]) AM_INIT_AUTOMAKE @@ -20,7 +20,7 @@ # R is on changed source code. # A is age (added interfaces) # -LIBMPD_LIBTOOL_VERSION=1:0:0 +LIBMPD_LIBTOOL_VERSION=2:0:1 AC_SUBST(LIBMPD_LIBTOOL_VERSION) AC_PROG_CC diff -Nru /tmp/MCjLit738T/libmpd-0.18.0/debian/changelog /tmp/6pey5ChugS/libmpd-0.19.0/debian/changelog --- libmpd-0.18.0/debian/changelog 2009-09-27 09:12:09.000000000 +0100 +++ libmpd-0.19.0/debian/changelog 2009-09-27 09:12:09.000000000 +0100 @@ -1,3 +1,38 @@ +libmpd (0.19.0-1~ppa1) karmic; urgency=low + + * New upstream release imported from Debian Sid. + + -- Khashayar Naderehvandi Sun, 27 Sep 2009 09:59:14 +0200 + +libmpd (0.19.0-1) unstable; urgency=low + + * New upstream release. + + -- Arnaud Cornet Mon, 21 Sep 2009 12:06:12 +0200 + +libmpd (0.18.100-1) UNRELEASED; urgency=low + + * New upstream release. + * Tighten debhelper build-depend. + * Bump standards version, no change needed. + + -- Arnaud Cornet Sat, 29 Aug 2009 13:39:25 +0200 + +libmpd (0.18.98-1) unstable; urgency=low + + * New upstream release. + * Put libmpd-dev in section libdevel + + -- Arnaud Cornet Wed, 12 Aug 2009 21:59:29 +0200 + +libmpd (0.18.96+git090811-1) unstable; urgency=low + + * New upstream release. + * Build in current dir. + * Switched to dh7 styled debian/rules, drop cdbs + + -- Arnaud Cornet Mon, 10 Aug 2009 21:19:43 +0200 + libmpd (0.18.0-3) unstable; urgency=low * Set myself as maintainer (acked by Decklin Foster). diff -Nru /tmp/MCjLit738T/libmpd-0.18.0/debian/control /tmp/6pey5ChugS/libmpd-0.19.0/debian/control --- libmpd-0.18.0/debian/control 2009-09-27 09:12:09.000000000 +0100 +++ libmpd-0.19.0/debian/control 2009-09-27 09:12:09.000000000 +0100 @@ -2,8 +2,8 @@ Section: libs Priority: optional Maintainer: Arnaud Cornet -Build-Depends: libglib2.0-dev, debhelper (>> 7), cdbs -Standards-Version: 3.8.1 +Build-Depends: libglib2.0-dev, debhelper (>= 7.0.50~), quilt +Standards-Version: 3.8.3 Homepage: http://gmpc.wikia.com/ Package: libmpd1 @@ -16,6 +16,7 @@ This package contains the shared libraries. Package: libmpd1-dbg +Section: debug Priority: extra Architecture: any Depends: libmpd1 (= ${binary:Version}), ${misc:Depends} diff -Nru /tmp/MCjLit738T/libmpd-0.18.0/debian/rules /tmp/6pey5ChugS/libmpd-0.19.0/debian/rules --- libmpd-0.18.0/debian/rules 2009-09-27 09:12:09.000000000 +0100 +++ libmpd-0.19.0/debian/rules 2009-09-27 09:12:09.000000000 +0100 @@ -1,9 +1,4 @@ #!/usr/bin/make -f -DEB_BUILDDIR:=++build-dir -DEB_DH_INSTALL_ARGS:=--sourcedir=debian/tmp - -include /usr/share/cdbs/1/rules/debhelper.mk -include /usr/share/cdbs/1/class/autotools.mk SRC_NAME:=libmpd LIB_NAME:=$(SRC_NAME)1 @@ -11,21 +6,21 @@ DBG_NAME:=$(SRC_NAME)1-dbg DEB_DH_STRIP_ARGS:=--dbg-package=$(DBG_NAME) -DEB_DH_MAKESHLIBS_ARGS_libmpd0 := -V"libmpd0 (>= $(DEB_UPSTREAM_VERSION))" +%: + dh --with quilt $@ -# remove the empty README -binary-post-install/$(LIB_NAME):: +override_dh_installdocs: + dh_installdocs rm -f debian/$(LIB_NAME)/usr/share/doc/$(LIB_NAME)/README - -binary-post-install/$(DEV_NAME):: rm -rf debian/$(DEV_NAME)/usr/share/doc/$(DEV_NAME) ln -sf $(LIB_NAME) debian/$(DEV_NAME)/usr/share/doc/$(DEV_NAME) - -binary-post-install/$(DBG_NAME):: rm -rf debian/$(DBG_NAME)/usr/share/doc/$(DBG_NAME) ln -sf $(LIB_NAME) debian/$(DBG_NAME)/usr/share/doc/$(DBG_NAME) -clean:: +override_dh_strip: + dh_strip $(DEB_DH_STRIP_ARGS) + +override_dh_clean: + dh_clean rm -f intltool-extract intltool-merge intltool-update - rm -rf $(DEB_BUILDDIR) diff -Nru /tmp/MCjLit738T/libmpd-0.18.0/ltmain.sh /tmp/6pey5ChugS/libmpd-0.19.0/ltmain.sh --- libmpd-0.18.0/ltmain.sh 2009-01-01 09:11:00.000000000 +0000 +++ libmpd-0.19.0/ltmain.sh 2009-09-21 11:06:04.000000000 +0100 @@ -65,7 +65,7 @@ # compiler: $LTCC # compiler flags: $LTCFLAGS # linker: $LD (gnu? $with_gnu_ld) -# $progname: (GNU libtool) 2.2.6 +# $progname: (GNU libtool) 2.2.6 Debian-2.2.6a-1ubuntu1 # automake: $automake_version # autoconf: $autoconf_version # @@ -73,7 +73,7 @@ PROGRAM=ltmain.sh PACKAGE=libtool -VERSION=2.2.6 +VERSION="2.2.6 Debian-2.2.6a-1ubuntu1" TIMESTAMP="" package_revision=1.3012 @@ -116,15 +116,15 @@ : ${CP="cp -f"} : ${ECHO="echo"} -: ${EGREP="/usr/bin/grep -E"} -: ${FGREP="/usr/bin/grep -F"} -: ${GREP="/usr/bin/grep"} +: ${EGREP="/bin/grep -E"} +: ${FGREP="/bin/grep -F"} +: ${GREP="/bin/grep"} : ${LN_S="ln -s"} : ${MAKE="make"} : ${MKDIR="mkdir"} : ${MV="mv -f"} : ${RM="rm -f"} -: ${SED="/opt/local/bin/gsed"} +: ${SED="/bin/sed"} : ${SHELL="${CONFIG_SHELL-/bin/sh}"} : ${Xsed="$SED -e 1s/^X//"} @@ -570,13 +570,6 @@ # Restart under the correct shell, and then maybe $ECHO will work. exec $SHELL "$progpath" --no-reexec ${1+"$@"} fi -# Same for EGREP, and just to be sure, do LTCC as well -if test "x$EGREP" = x ; then - EGREP=egrep -fi -if test "x$LTCC" = x ; then - LTCC=${CC-gcc} -fi if test "X$1" = X--fallback-echo; then # used as fallback echo @@ -5040,7 +5033,10 @@ case $pass in dlopen) libs="$dlfiles" ;; dlpreopen) libs="$dlprefiles" ;; - link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; + link) + libs="$deplibs %DEPLIBS%" + test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs" + ;; esac fi if test "$linkmode,$pass" = "lib,dlpreopen"; then @@ -6213,6 +6209,9 @@ revision="$number_minor" lt_irix_increment=no ;; + *) + func_fatal_configuration "$modename: unknown library version type \`$version_type'" + ;; esac ;; no) @@ -8066,53 +8065,9 @@ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` test -z "$libdir" && \ func_fatal_error "\`$deplib' is not a valid libtool archive" - if test "x$EGREP" = x ; then - EGREP=egrep - fi - # We do not want portage's install root ($D) present. Check only for - # this if the .la is being installed. - if test "$installed" = yes && test "$D"; then - eval mynewdependency_lib=`echo "$libdir/$name" |sed -e "s:$D:/:g" -e 's:/\+:/:g'` - else - mynewdependency_lib="$libdir/$name" - fi - # Do not add duplicates - if test "$mynewdependency_lib"; then - my_little_ninja_foo_1=`echo $newdependency_libs |$EGREP -e "$mynewdependency_lib"` - if test -z "$my_little_ninja_foo_1"; then - newdependency_libs="$newdependency_libs $mynewdependency_lib" - fi - fi - ;; - *) - if test "$installed" = yes; then - # Rather use S=WORKDIR if our version of portage supports it. - # This is because some ebuild (gcc) do not use $S as buildroot. - if test "$PWORKDIR"; then - S="$PWORKDIR" - fi - # We do not want portage's build root ($S) present. - my_little_ninja_foo_2=`echo $deplib |$EGREP -e "$S"` - # We do not want portage's install root ($D) present. - my_little_ninja_foo_3=`echo $deplib |$EGREP -e "$D"` - if test -n "$my_little_ninja_foo_2" && test "$S"; then - mynewdependency_lib="" - elif test -n "$my_little_ninja_foo_3" && test "$D"; then - eval mynewdependency_lib=`echo "$deplib" |sed -e "s:$D:/:g" -e 's:/\+:/:g'` - else - mynewdependency_lib="$deplib" - fi - else - mynewdependency_lib="$deplib" - fi - # Do not add duplicates - if test "$mynewdependency_lib"; then - my_little_ninja_foo_4=`echo $newdependency_libs |$EGREP -e "$mynewdependency_lib"` - if test -z "$my_little_ninja_foo_4"; then - newdependency_libs="$newdependency_libs $mynewdependency_lib" - fi - fi + newdependency_libs="$newdependency_libs $libdir/$name" ;; + *) newdependency_libs="$newdependency_libs $deplib" ;; esac done dependency_libs="$newdependency_libs" @@ -8176,10 +8131,6 @@ case $host,$output,$installed,$module,$dlname in *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;; esac - # Do not add duplicates - if test "$installed" = yes && test "$D"; then - install_libdir=`echo "$install_libdir" |sed -e "s:$D:/:g" -e 's:/\+:/:g'` - fi $ECHO > $output "\ # $outputname - a libtool library file # Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION diff -Nru /tmp/MCjLit738T/libmpd-0.18.0/src/libmpd.c /tmp/6pey5ChugS/libmpd-0.19.0/src/libmpd.c --- libmpd-0.18.0/src/libmpd.c 2009-03-09 16:22:37.000000000 +0000 +++ libmpd-0.19.0/src/libmpd.c 2009-09-21 11:06:04.000000000 +0100 @@ -70,6 +70,8 @@ state->state = -1; state->songid = -1; state->songpos = -1; + state->nextsongpos = -1; + state->nextsongid = -1; state->dbUpdateTime = 0; state->updatingDb = 0; state->repeat = -1; @@ -82,6 +84,8 @@ state->samplerate = 0; state->channels = 0; state->bits = 0; + state->consume = 0; + state->single = 0; state->playlistLength = 0; state->error[0] = '\0'; @@ -90,13 +94,8 @@ static MpdObj * mpd_create() { - MpdObj * mi = malloc(sizeof(*mi)); - if( mi == NULL ) - { - /* should never happen on linux */ - return NULL; - } - + MpdObj * mi = g_slice_new0(MpdObj); + g_return_val_if_fail(mi != NULL, NULL); /* should never happen on linux */ /* set default values */ /* we start not connected */ @@ -105,57 +104,20 @@ mi->port = 6600; /* localhost */ mi->hostname = strdup("localhost"); - /* no password */ - mi->password = NULL; /* 1 second timeout */ mi->connection_timeout = 1.0; - /* we have no connection pointer */ - mi->connection = NULL; - /* no status */ - mi->status = NULL; - /* no stats */ - mi->stats = NULL; - mi->error = 0; - mi->error_mpd_code = 0; - mi->error_msg = NULL; - mi->CurrentSong = NULL; /* info */ mpd_init_MpdServerState(&(mi->CurrentState)); mpd_init_MpdServerState(&(mi->OldState)); - /** - * Set signals to NULL - */ - /* connection changed signal */ - mi->the_connection_changed_callback = NULL; - mi->the_connection_changed_signal_userdata = NULL; - - /* status changed */ - mi->the_status_changed_callback = NULL; - mi->the_status_changed_signal_userdata = NULL; - - /* error callback */ - mi->the_error_callback = NULL; - mi->the_error_signal_userdata = NULL; /* connection is locked because where not connected */ mi->connection_lock = TRUE; - /* set queue to NULL */ - mi->queue = NULL; /* search stuff */ mi->search_type = MPD_SEARCH_TYPE_NONE; /* no need to initialize, but set it to anything anyway*/ mi->search_field = MPD_TAG_ITEM_ARTIST; - /* outputs */ - mi->num_outputs = 0; - mi->output_states = NULL; - /* set 0 */ - memset((mi->supported_tags), 0,sizeof(mi->supported_tags)); - - mi->has_idle = 0; - /* commands */ - mi->commands = NULL; return mi; } @@ -197,9 +159,14 @@ { mpd_freeSong(mi->CurrentSong); } + if(mi->url_handlers) + { + g_strfreev(mi->url_handlers); + mi->url_handlers = NULL; + } mpd_free_queue_ob(mi); mpd_server_free_commands(mi); - free(mi); + g_slice_free(MpdObj, mi); } int mpd_check_error(MpdObj *mi) @@ -399,10 +366,29 @@ * connect */ if((mi->the_status_changed_callback != NULL)) - { - mi->the_status_changed_callback( mi, - MPD_CST_PERMISSION, mi->the_status_changed_signal_userdata ); - } + { + /** update the supported tags */ + { + int i; + char **retv = mpd_server_get_tag_types(mi); + if(retv){ + for(i=0;isupported_tags[i] = TRUE; + else mi->supported_tags[i] = FALSE; + } + g_strfreev(retv); + } + /* also always true */ + mi->supported_tags[MPD_TAG_ITEM_FILENAME] = TRUE; + mi->supported_tags[MPD_TAG_ITEM_ANY] = TRUE; + } + /* If permission updates, we should also call an output update, The data might be available now. */ + mi->the_status_changed_callback( mi, + MPD_CST_PERMISSION|MPD_CST_OUTPUT, mi->the_status_changed_signal_userdata ); + } } return MPD_OK; } @@ -556,11 +542,18 @@ mpd_freeSong(mi->CurrentSong); mi->CurrentSong = NULL; } + if(mi->url_handlers) + { + g_strfreev(mi->url_handlers); + mi->url_handlers = NULL; + } mi->CurrentState.playlistid = -1; mi->CurrentState.storedplaylistid = -1; mi->CurrentState.state = -1; mi->CurrentState.songid = -1; mi->CurrentState.songpos = -1; + mi->CurrentState.nextsongid = -1; + mi->CurrentState.nextsongpos = -1; mi->CurrentState.dbUpdateTime = 0; mi->CurrentState.updatingDb = 0; mi->CurrentState.repeat = -1; @@ -681,16 +674,17 @@ { return retv; } -/* - - retv = mpd_server_update_outputs(mi); - if(retv != MPD_OK) - return retv; -*/ - - retv = mpd_server_update_outputs(mi); - /** update the supported tags */ + /* Trying to send password, this is needed to get right outputs and tag_types */ + if(mi->password && strlen(mi->password) > 0) { + mpd_send_password(mi); + } + else + { + /* Update tag types, this is done in send_password. + * mpd_send_password() does this. + * So only do it when no password is send. + */ int i; char **retv = mpd_server_get_tag_types(mi); if(retv){ @@ -707,6 +701,15 @@ mi->supported_tags[MPD_TAG_ITEM_FILENAME] = TRUE; mi->supported_tags[MPD_TAG_ITEM_ANY] = TRUE; } +/* + + retv = mpd_server_update_outputs(mi); + if(retv != MPD_OK) + return retv; +*/ + + retv = mpd_server_update_outputs(mi); + /** update the supported tags */ debug_printf(DEBUG_INFO, "Propagating connection changed"); if(mi->the_connection_changed_callback != NULL) @@ -771,23 +774,7 @@ /* MpdData Part */ MpdData *mpd_new_data_struct(void) { - MpdData_real* data; - data = g_slice_new(MpdData_real); - data->type = 0; - - data->tag_type = 0; - data->tag = NULL; - data->song = NULL; - data->directory = NULL; - data->playlist = NULL; - data->output_dev = NULL; - data->next = NULL; - data->prev = NULL; - data->first = NULL; - - data->userdata = NULL; - data->freefunc = NULL; - return (MpdData*)data; + return (MpdData*) g_slice_new0(MpdData_real); } MpdData *mpd_new_data_struct_append(MpdData * data) @@ -967,7 +954,7 @@ data_real->freefunc(data_real->userdata); } data_real = data_real->next; - g_slice_free1(sizeof(*temp), temp); + g_slice_free(MpdData_real, temp); } } @@ -995,7 +982,7 @@ free(mi->queue->path); } - free(mi->queue); + g_slice_free(MpdQueue, mi->queue); mi->queue = temp; } mi->queue = NULL; @@ -1004,13 +991,7 @@ MpdQueue *mpd_new_queue_struct() { - MpdQueue* queue = malloc(sizeof(MpdQueue)); - - queue->type = 0; - queue->path = NULL; - queue->id = 0; - - return queue; + return g_slice_new0(MpdQueue); } @@ -1069,7 +1050,11 @@ mpd_finishCommand(mi->connection); /* unlock */ - mpd_unlock_conn(mi); + if(mpd_unlock_conn(mi) != MPD_OK) + { + if(data)mpd_data_free(data); + return NULL; + } if(data == NULL) { return NULL; @@ -1147,30 +1132,36 @@ { char *temp = NULL; int i=0; - char **retv = NULL; if(!mpd_check_connected(mi)) { debug_printf(DEBUG_WARNING,"not connected\n"); return FALSE; } + if(mi->url_handlers){ + return g_strdupv(mi->url_handlers); + } if(mpd_lock_conn(mi)) { debug_printf(DEBUG_ERROR,"lock failed\n"); return NULL; } + /** + * Fetch url handlers and store them + */ mpd_sendUrlHandlersCommand(mi->connection); while((temp = mpd_getNextHandler(mi->connection)) != NULL) { - retv = realloc(retv,(i+2)*sizeof(*retv)); - retv[i] = temp; - retv[i+1] = NULL; + mi->url_handlers = realloc(mi->url_handlers,(i+2)*sizeof(*mi->url_handlers)); + mi->url_handlers[i] = temp; + mi->url_handlers[i+1] = NULL; i++; } mpd_finishCommand(mi->connection); mpd_unlock_conn(mi); - return retv; + /* Return copy */ + return g_strdupv(mi->url_handlers); } char ** mpd_server_get_tag_types(MpdObj *mi) { @@ -1236,7 +1227,7 @@ while (( output = mpd_getNextOutput(mi->connection)) != NULL) { mi->num_outputs++; - mi->output_states = g_realloc(mi->output_states,mi->num_outputs*sizeof(int)); + mi->output_states = realloc(mi->output_states,mi->num_outputs*sizeof(int)); mi->output_states[mi->num_outputs-1] = FALSE;/*output->enabled;*/ mpd_freeOutputElement(output); } diff -Nru /tmp/MCjLit738T/libmpd-0.18.0/src/libmpdclient.c /tmp/6pey5ChugS/libmpd-0.19.0/src/libmpdclient.c --- libmpd-0.18.0/src/libmpdclient.c 2009-03-09 16:22:37.000000000 +0000 +++ libmpd-0.19.0/src/libmpdclient.c 2009-09-21 11:06:04.000000000 +0100 @@ -30,19 +30,22 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include "libmpdclient.h" +#include "libmpdclient.h" #include #include #include #include #include + #include #include #include #include #include +#include + #ifdef WIN32 # include # include @@ -109,9 +112,9 @@ ioctlsocket(connection->sock, FIONBIO, (u_long FAR*) &iMode); return 0; } -#else /* !WIN32 (sane operating systems) */ +#elif defined(__solaris__) || defined(__sun__) static int do_connect_fail(mpd_Connection *connection, - const struct sockaddr *serv_addr, int addrlen) + const struct sockaddr *serv_addr, int addrlen) { int flags; if (connect(connection->sock, serv_addr, addrlen) < 0) @@ -120,6 +123,50 @@ fcntl(connection->sock, F_SETFL, flags | O_NONBLOCK); return 0; } +#else /* !WIN32 (sane operating systems) */ +static int do_connect_fail(mpd_Connection *connection, + const struct sockaddr *serv_addr, int addrlen) +{ + int flags, res,valopt; + struct timeval tv; + fd_set myset; + flags = fcntl(connection->sock, F_GETFL, 0); + fcntl(connection->sock, F_SETFL, flags | O_NONBLOCK); + /*if (connect(connection->sock, serv_addr, addrlen) < 0) + return 1;*/ + /* Do a non blocking connect */ + res = connect(connection->sock, serv_addr, addrlen); + if (res < 0) { + if (errno == EINPROGRESS) { + tv.tv_sec = connection->timeout.tv_sec; + tv.tv_usec = connection->timeout.tv_usec; + FD_ZERO(&myset); + FD_SET(connection->sock, &myset); + if (select(connection->sock+1, NULL, &myset, NULL, &tv) > 0) { + socklen_t lon; + lon = sizeof(int); + /* Check for errors */ + getsockopt(connection->sock, SOL_SOCKET, SO_ERROR, (void*)(&valopt), &lon); + if (valopt) { + fprintf(stderr, "Error in connection() %d - %s\n", valopt, strerror(valopt)); + return 1; + } + } + else { + /* Connecting timed out. */ + fprintf(stderr, "Timeout or error() %d - %s\n", valopt, strerror(valopt)); + return 1; + } + } + else { + /* Failed to connect */ + fprintf(stderr, "Error connecting %d - %s\n", errno, strerror(errno)); + return 1; + } + } + + return 0; +} #endif /* !WIN32 */ #ifdef MPD_HAVE_GAI @@ -298,7 +345,7 @@ static mpd_ReturnElement * mpd_newReturnElement(const char * name, const char * value) { - mpd_ReturnElement * ret = malloc(sizeof(mpd_ReturnElement)); + mpd_ReturnElement* ret = g_slice_new(mpd_ReturnElement); ret->name = strdup(name); ret->value = strdup(value); @@ -309,7 +356,7 @@ static void mpd_freeReturnElement(mpd_ReturnElement * re) { free(re->name); free(re->value); - free(re); + g_slice_free(mpd_ReturnElement, re); } void mpd_setConnectionTimeout(mpd_Connection * connection, float timeout) { @@ -404,21 +451,12 @@ int err; char * rt; char * output = NULL; - mpd_Connection * connection = malloc(sizeof(mpd_Connection)); + mpd_Connection * connection = g_slice_new0(mpd_Connection); struct timeval tv; fd_set fds; strcpy(connection->buffer,""); connection->sock = -1; - connection->buflen = 0; - connection->bufstart = 0; strcpy(connection->errorStr,""); - connection->error = 0; - connection->doneProcessing = 0; - connection->commandList = 0; - connection->listOks = 0; - connection->doneListOk = 0; - connection->returnElement = NULL; - connection->request = NULL; if (winsock_dll_error(connection)) return connection; @@ -493,7 +531,7 @@ closesocket(connection->sock); if(connection->returnElement) free(connection->returnElement); if(connection->request) free(connection->request); - free(connection); + g_slice_free(mpd_Connection, connection); WSACleanup(); } @@ -721,8 +759,6 @@ } mpd_Status * mpd_getStatus(mpd_Connection * connection) { - mpd_Status * status; - /*mpd_executeCommand(connection,"status\n"); if(connection->error) return NULL;*/ @@ -735,28 +771,18 @@ if(!connection->returnElement) mpd_getNextReturnElement(connection); - status = malloc(sizeof(mpd_Status)); + mpd_Status* status = g_slice_new0(mpd_Status); status->volume = -1; - status->repeat = 0; - status->random = 0; status->playlist = -1; - status->storedplaylist = -1; + status->storedplaylist = -1; status->playlistLength = -1; status->state = -1; - status->song = 0; - status->songid = 0; - status->elapsedTime = 0; - status->totalTime = 0; - status->bitRate = 0; - status->sampleRate = 0; - status->bits = 0; - status->channels = 0; + status->nextsong = -1; + status->nextsongid = -1; status->crossfade = -1; - status->error = NULL; - status->updatingDb = 0; if(connection->error) { - free(status); + g_slice_free(mpd_Status, status); return NULL; } while(connection->returnElement) { @@ -767,6 +793,12 @@ else if(strcmp(re->name,"repeat")==0) { status->repeat = atoi(re->value); } + else if(strcmp(re->name,"single")==0) { + status->single = atoi(re->value); + } + else if(strcmp(re->name,"consume")==0) { + status->consume = atoi(re->value); + } else if(strcmp(re->name,"random")==0) { status->random = atoi(re->value); } @@ -799,6 +831,12 @@ else if(strcmp(re->name,"songid")==0) { status->songid = atoi(re->value); } + else if(strcmp(re->name,"nextsong")==0) { + status->nextsong = atoi(re->value); + } + else if(strcmp(re->name,"nextsongid")==0) { + status->nextsongid = atoi(re->value); + } else if(strcmp(re->name,"time")==0) { char * tok = strchr(re->value,':'); /* the second strchr below is a safety check */ @@ -830,19 +868,19 @@ mpd_getNextReturnElement(connection); if(connection->error) { - free(status); + g_slice_free(mpd_Status, status); return NULL; } } if(connection->error) { - free(status); + g_slice_free(mpd_Status, status); return NULL; } else if(status->state<0) { strcpy(connection->errorStr,"state not found"); connection->error = 1; - free(status); + g_slice_free(mpd_Status, status); return NULL; } @@ -851,7 +889,7 @@ void mpd_freeStatus(mpd_Status * status) { if(status->error) free(status->error); - free(status); + g_slice_free(mpd_Status, status); } void mpd_sendStatsCommand(mpd_Connection * connection) { @@ -859,8 +897,6 @@ } mpd_Stats * mpd_getStats(mpd_Connection * connection) { - mpd_Stats * stats; - /*mpd_executeCommand(connection,"stats\n"); if(connection->error) return NULL;*/ @@ -873,17 +909,10 @@ if(!connection->returnElement) mpd_getNextReturnElement(connection); - stats = malloc(sizeof(mpd_Stats)); - stats->numberOfArtists = 0; - stats->numberOfAlbums = 0; - stats->numberOfSongs = 0; - stats->uptime = 0; - stats->dbUpdateTime = 0; - stats->playTime = 0; - stats->dbPlayTime = 0; + mpd_Stats* stats = g_slice_new0(mpd_Stats); if(connection->error) { - free(stats); + mpd_freeStats(stats); return NULL; } while(connection->returnElement) { @@ -912,13 +941,13 @@ mpd_getNextReturnElement(connection); if(connection->error) { - free(stats); + mpd_freeStats(stats); return NULL; } } if(connection->error) { - free(stats); + mpd_freeStats(stats); return NULL; } @@ -926,14 +955,11 @@ } void mpd_freeStats(mpd_Stats * stats) { - free(stats); + g_slice_free(mpd_Stats, stats); } mpd_SearchStats * mpd_getSearchStats(mpd_Connection * connection) { - mpd_SearchStats * stats; - mpd_ReturnElement * re; - if (connection->doneProcessing || (connection->listOks && connection->doneListOk)) { return NULL; @@ -944,9 +970,8 @@ if (connection->error) return NULL; - stats = malloc(sizeof(mpd_SearchStats)); - stats->numberOfSongs = 0; - stats->playTime = 0; + mpd_ReturnElement* re; + mpd_SearchStats* stats = g_slice_new0(mpd_SearchStats); while (connection->returnElement) { re = connection->returnElement; @@ -959,13 +984,13 @@ mpd_getNextReturnElement(connection); if (connection->error) { - free(stats); + mpd_freeSearchStats(stats); return NULL; } } if (connection->error) { - free(stats); + mpd_freeSearchStats(stats); return NULL; } @@ -974,28 +999,7 @@ void mpd_freeSearchStats(mpd_SearchStats * stats) { - free(stats); -} - -static void mpd_initSong(mpd_Song * song) { - song->file = NULL; - song->artist = NULL; - song->album = NULL; - song->track = NULL; - song->title = NULL; - song->name = NULL; - song->date = NULL; - /* added by Qball */ - song->genre = NULL; - song->composer = NULL; - song->performer = NULL; - song->disc = NULL; - song->comment = NULL; - song->albumartist = NULL; - - song->time = MPD_SONG_NO_TIME; - song->pos = MPD_SONG_NO_NUM; - song->id = MPD_SONG_NO_ID; + g_slice_free(mpd_SearchStats, stats); } static void mpd_finishSong(mpd_Song * song) { @@ -1015,16 +1019,16 @@ } mpd_Song * mpd_newSong(void) { - mpd_Song * ret = malloc(sizeof(mpd_Song)); - - mpd_initSong(ret); - + mpd_Song * ret = g_slice_new0(mpd_Song); + ret->time = MPD_SONG_NO_TIME; + ret->pos = MPD_SONG_NO_NUM; + ret->id = MPD_SONG_NO_ID; return ret; } void mpd_freeSong(mpd_Song * song) { mpd_finishSong(song); - free(song); + g_slice_free(mpd_Song, song); } mpd_Song * mpd_songDup(const mpd_Song * song) { @@ -1050,26 +1054,18 @@ return ret; } -static void mpd_initDirectory(mpd_Directory * directory) { - directory->path = NULL; -} static void mpd_finishDirectory(mpd_Directory * directory) { if(directory->path) free(directory->path); } mpd_Directory * mpd_newDirectory(void) { - mpd_Directory * directory = malloc(sizeof(mpd_Directory));; - - mpd_initDirectory(directory); - - return directory; + return g_slice_new0(mpd_Directory); } void mpd_freeDirectory(mpd_Directory * directory) { mpd_finishDirectory(directory); - - free(directory); + g_slice_free(mpd_Directory, directory); } mpd_Directory * mpd_directoryDup(mpd_Directory * directory) { @@ -1080,27 +1076,18 @@ return ret; } -static void mpd_initPlaylistFile(mpd_PlaylistFile * playlist) { - playlist->path = NULL; - playlist->mtime = NULL; -} - static void mpd_finishPlaylistFile(mpd_PlaylistFile * playlist) { if(playlist->path) free(playlist->path); if(playlist->mtime) free(playlist->mtime); } mpd_PlaylistFile * mpd_newPlaylistFile(void) { - mpd_PlaylistFile * playlist = malloc(sizeof(mpd_PlaylistFile)); - - mpd_initPlaylistFile(playlist); - - return playlist; + return g_slice_new0(mpd_PlaylistFile); } void mpd_freePlaylistFile(mpd_PlaylistFile * playlist) { mpd_finishPlaylistFile(playlist); - free(playlist); + g_slice_free(mpd_PlaylistFile, playlist); } mpd_PlaylistFile * mpd_playlistFileDup(mpd_PlaylistFile * playlist) { @@ -1112,10 +1099,6 @@ return ret; } -static void mpd_initInfoEntity(mpd_InfoEntity * entity) { - entity->info.directory = NULL; -} - static void mpd_finishInfoEntity(mpd_InfoEntity * entity) { if(entity->info.directory) { if(entity->type == MPD_INFO_ENTITY_TYPE_DIRECTORY) { @@ -1131,16 +1114,12 @@ } mpd_InfoEntity * mpd_newInfoEntity(void) { - mpd_InfoEntity * entity = malloc(sizeof(mpd_InfoEntity)); - - mpd_initInfoEntity(entity); - - return entity; + return g_slice_new0(mpd_InfoEntity); } void mpd_freeInfoEntity(mpd_InfoEntity * entity) { mpd_finishInfoEntity(entity); - free(entity); + g_slice_free(mpd_InfoEntity, entity); } static void mpd_sendInfoCommand(mpd_Connection * connection,const char * command) { @@ -1628,18 +1607,18 @@ free(string); } -void mpd_sendSeekCommand(mpd_Connection * connection, int song, int time) { +void mpd_sendSeekCommand(mpd_Connection * connection, int song, int seek_time) { int len = strlen("seek")+2+INTLEN+3+INTLEN+3; char *string = malloc(len); - snprintf(string, len, "seek \"%i\" \"%i\"\n", song, time); + snprintf(string, len, "seek \"%i\" \"%i\"\n", song, seek_time); mpd_sendInfoCommand(connection,string); free(string); } -void mpd_sendSeekIdCommand(mpd_Connection * connection, int id, int time) { +void mpd_sendSeekIdCommand(mpd_Connection * connection, int id, int seek_time) { int len = strlen("seekid")+2+INTLEN+3+INTLEN+3; char *string = malloc(len); - snprintf(string, len, "seekid \"%i\" \"%i\"\n", id, time); + snprintf(string, len, "seekid \"%i\" \"%i\"\n", id, seek_time); mpd_sendInfoCommand(connection,string); free(string); } @@ -1671,6 +1650,22 @@ mpd_executeCommand(connection,"previous\n"); } +void mpd_sendSingleCommand(mpd_Connection * connection, int singleMode) { + int len = strlen("repeat")+2+INTLEN+3; + char *string = malloc(len); + snprintf(string, len, "single \"%i\"\n", singleMode); + mpd_executeCommand(connection,string); + free(string); +} + +void mpd_sendConsumeCommand(mpd_Connection * connection, int consumeMode) { + int len = strlen("repeat")+2+INTLEN+3; + char *string = malloc(len); + snprintf(string, len, "consume \"%i\"\n", consumeMode); + mpd_executeCommand(connection,string); + free(string); +} + void mpd_sendRepeatCommand(mpd_Connection * connection, int repeatMode) { int len = strlen("repeat")+2+INTLEN+3; char *string = malloc(len); @@ -1695,14 +1690,6 @@ free(string); } -void mpd_sendVolumeCommand(mpd_Connection * connection, int volumeChange) { - int len = strlen("volume")+2+INTLEN+3; - char *string = malloc(len); - snprintf(string, len, "volume \"%i\"\n", volumeChange); - mpd_executeCommand(connection,string); - free(string); -} - void mpd_sendCrossfadeCommand(mpd_Connection * connection, int seconds) { int len = strlen("crossfade")+2+INTLEN+3; char *string = malloc(len); @@ -1757,8 +1744,6 @@ } mpd_OutputEntity * mpd_getNextOutput(mpd_Connection * connection) { - mpd_OutputEntity * output = NULL; - if(connection->doneProcessing || (connection->listOks && connection->doneListOk)) { @@ -1767,10 +1752,8 @@ if(connection->error) return NULL; - output = malloc(sizeof(mpd_OutputEntity)); + mpd_OutputEntity* output = g_slice_new0(mpd_OutputEntity); output->id = -10; - output->name = NULL; - output->enabled = 0; if(!connection->returnElement) mpd_getNextReturnElement(connection); @@ -1789,10 +1772,9 @@ mpd_getNextReturnElement(connection); if(connection->error) { - free(output); + mpd_freeOutputElement(output); return NULL; } - } return output; @@ -1815,8 +1797,9 @@ } void mpd_freeOutputElement(mpd_OutputEntity * output) { - free(output->name); - free(output); + if(output->name) + free(output->name); + g_slice_free(mpd_OutputEntity, output); } /** diff -Nru /tmp/MCjLit738T/libmpd-0.18.0/src/libmpdclient.h /tmp/6pey5ChugS/libmpd-0.19.0/src/libmpdclient.h --- libmpd-0.18.0/src/libmpdclient.h 2009-03-09 16:22:37.000000000 +0000 +++ libmpd-0.19.0/src/libmpdclient.h 2009-09-21 11:06:04.000000000 +0100 @@ -170,6 +170,10 @@ int repeat; /* 1 if random is on, 0 otherwise */ int random; + /* 1 if single in on, 0 otherwise */ + int single; + /* 1 if single is on, 0 otherwise */ + int consume; /* playlist length */ int playlistLength; /* playlist, use this to determine when the playlist has changed */ @@ -187,6 +191,12 @@ int song; /* Song ID of the currently selected song */ int songid; + + /* The next song pos */ + int nextsong; + /* The next song id */ + int nextsongid; + /* time in seconds that have elapsed in the currently playing/paused * song */ @@ -507,19 +517,20 @@ void mpd_sendSwapIdCommand(mpd_Connection * connection, int song1, int song2); -void mpd_sendSeekCommand(mpd_Connection * connection, int song, int time); +void mpd_sendSeekCommand(mpd_Connection * connection, int song, int seek_time); -void mpd_sendSeekIdCommand(mpd_Connection * connection, int song, int time); +void mpd_sendSeekIdCommand(mpd_Connection * connection, int song, int seek_time); void mpd_sendRepeatCommand(mpd_Connection * connection, int repeatMode); +void mpd_sendSingleCommand(mpd_Connection * connection, int singleMode); + +void mpd_sendConsumeCommand(mpd_Connection * connection, int consumeMode); + void mpd_sendRandomCommand(mpd_Connection * connection, int randomMode); void mpd_sendSetvolCommand(mpd_Connection * connection, int volumeChange); -/* WARNING: don't use volume command, its depreacted */ -void mpd_sendVolumeCommand(mpd_Connection * connection, int volumeChange); - void mpd_sendCrossfadeCommand(mpd_Connection * connection, int seconds); void mpd_sendUpdateCommand(mpd_Connection * connection,const char * path); diff -Nru /tmp/MCjLit738T/libmpd-0.18.0/src/libmpd-database.c /tmp/6pey5ChugS/libmpd-0.19.0/src/libmpd-database.c --- libmpd-0.18.0/src/libmpd-database.c 2009-03-09 16:22:37.000000000 +0000 +++ libmpd-0.19.0/src/libmpd-database.c 2009-09-21 11:06:04.000000000 +0100 @@ -484,6 +484,7 @@ MpdData *mpd_database_get_playlist_content(MpdObj *mi,const char *playlist) { + int i=0; MpdData *data = NULL; mpd_InfoEntity *ent = NULL; if(!mpd_check_connected(mi)) @@ -509,31 +510,24 @@ mpd_sendListPlaylistInfoCommand(mi->connection, playlist); while (( ent = mpd_getNextInfoEntity(mi->connection)) != NULL) { - data = mpd_new_data_struct_append( data ); - if(ent->type == MPD_INFO_ENTITY_TYPE_DIRECTORY) - { - data->type = MPD_DATA_TYPE_DIRECTORY; - data->directory = ent->info.directory->path; - ent->info.directory->path = NULL; - } - else if (ent->type == MPD_INFO_ENTITY_TYPE_SONG) + if (ent->type == MPD_INFO_ENTITY_TYPE_SONG) { - data->type = MPD_DATA_TYPE_SONG; + data = mpd_new_data_struct_append( data ); + data->type = MPD_DATA_TYPE_SONG; data->song = ent->info.song; + data->song->pos = i; ent->info.song = NULL; - } - else if (ent->type == MPD_INFO_ENTITY_TYPE_PLAYLISTFILE) - { - data->type = MPD_DATA_TYPE_PLAYLIST; - data->playlist = ent->info.playlistFile; - ent->info.playlistFile= NULL; - } - + i++; + } mpd_freeInfoEntity(ent); } mpd_finishCommand(mi->connection); - /* unlock */ + if(mi->connection->error == MPD_ERROR_ACK && mi->connection->errorCode == MPD_ACK_ERROR_NO_EXIST) + { + mpd_clearError(mi->connection); + } + /* unlock */ mpd_unlock_conn(mi); if(data == NULL) { @@ -703,7 +697,7 @@ */ void mpd_database_search_add_constraint(MpdObj *mi, mpd_TagItems field, const char *value) { - if(mi == NULL || value == NULL ) + if(mi == NULL ) { debug_printf(DEBUG_ERROR,"Failed to parse arguments"); return; @@ -729,7 +723,7 @@ debug_printf(DEBUG_ERROR, "Failed to lock connection"); return ; } - mpd_addConstraintSearch(mi->connection, field, value); + mpd_addConstraintSearch(mi->connection, field, (value)?value:""); /* unlock, let the error handler handle any possible error. */ mpd_unlock_conn(mi); diff -Nru /tmp/MCjLit738T/libmpd-0.18.0/src/libmpd.h /tmp/6pey5ChugS/libmpd-0.19.0/src/libmpd.h --- libmpd-0.18.0/src/libmpd.h 2009-03-09 16:22:37.000000000 +0000 +++ libmpd-0.19.0/src/libmpd.h 2009-09-21 11:06:04.000000000 +0100 @@ -383,7 +383,13 @@ /** output changed */ MPD_CST_OUTPUT = 0x80000, /** Sticker changed */ - MPD_CST_STICKER = 0x100000 + MPD_CST_STICKER = 0x100000, + /** Next song changed */ + MPD_CST_NEXTSONG = 0x200000, + /** Single mode changed */ + MPD_CST_SINGLE_MODE = 0x400000, + /** Consume mode changed */ + MPD_CST_CONSUME_MODE = 0x800000 } ChangedStatusType; diff -Nru /tmp/MCjLit738T/libmpd-0.18.0/src/libmpd-internal.h /tmp/6pey5ChugS/libmpd-0.19.0/src/libmpd-internal.h --- libmpd-0.18.0/src/libmpd-internal.h 2009-03-09 16:22:37.000000000 +0000 +++ libmpd-0.19.0/src/libmpd-internal.h 2009-09-21 11:06:04.000000000 +0100 @@ -55,6 +55,8 @@ long long storedplaylistid; int songid; int songpos; + int nextsongpos; + int nextsongid; int state; unsigned long dbUpdateTime; int updatingDb; @@ -70,6 +72,8 @@ int channels; unsigned long playlistLength; char error[512]; + int single; + int consume; } MpdServerState; @@ -142,7 +146,10 @@ */ int num_outputs; int *output_states; - + /** + * Supported url handlers + */ + char **url_handlers; /** * For testing supported tags */ diff -Nru /tmp/MCjLit738T/libmpd-0.18.0/src/libmpd-player.c /tmp/6pey5ChugS/libmpd-0.19.0/src/libmpd-player.c --- libmpd-0.18.0/src/libmpd-player.c 2009-03-09 16:22:37.000000000 +0000 +++ libmpd-0.19.0/src/libmpd-player.c 2009-09-21 11:06:04.000000000 +0100 @@ -40,7 +40,48 @@ } return mi->status->state; } - +int mpd_player_get_next_song_id(MpdObj *mi) +{ + if (!mpd_check_connected(mi)) { + debug_printf(DEBUG_WARNING, "not connected\n"); + return MPD_NOT_CONNECTED; + } + if (mpd_status_check(mi) != MPD_OK) { + debug_printf(DEBUG_ERROR, "Failed to get status\n"); + return MPD_STATUS_FAILED; + } + /* check if in valid state */ + if (mpd_player_get_state(mi) != MPD_PLAYER_PLAY && + mpd_player_get_state(mi) != MPD_PLAYER_PAUSE) { + return MPD_PLAYER_NOT_PLAYING; + } + /* just to be sure check */ + if (!mi->status->playlistLength) { + return MPD_PLAYLIST_EMPTY; + } + return mi->status->nextsongid; +} +int mpd_player_get_next_song_pos(MpdObj *mi) +{ + if (!mpd_check_connected(mi)) { + debug_printf(DEBUG_WARNING, "not connected\n"); + return MPD_NOT_CONNECTED; + } + if (mpd_status_check(mi) != MPD_OK) { + debug_printf(DEBUG_ERROR, "Failed to get status\n"); + return MPD_STATUS_FAILED; + } + /* check if in valid state */ + if (mpd_player_get_state(mi) != MPD_PLAYER_PLAY && + mpd_player_get_state(mi) != MPD_PLAYER_PAUSE) { + return MPD_PLAYER_NOT_PLAYING; + } + /* just to be sure check */ + if (!mi->status->playlistLength) { + return MPD_PLAYLIST_EMPTY; + } + return mi->status->nextsong; +} int mpd_player_get_current_song_id(MpdObj * mi) { if (!mpd_check_connected(mi)) { @@ -236,6 +277,66 @@ return MPD_OK; } +int mpd_player_get_consume(MpdObj * mi) +{ + if (!mpd_check_connected(mi)) { + debug_printf(DEBUG_WARNING, "not connected\n"); + return MPD_NOT_CONNECTED; + } + if (mpd_status_check(mi) != MPD_OK) { + debug_printf(DEBUG_WARNING, "Failed grabbing status\n"); + return MPD_NOT_CONNECTED; + } + return mi->status->consume; +} +int mpd_player_set_single(MpdObj * mi, int single) +{ + if (!mpd_check_connected(mi)) { + debug_printf(DEBUG_WARNING, "not connected\n"); + return MPD_NOT_CONNECTED; + } + if (mpd_lock_conn(mi)) { + debug_printf(DEBUG_WARNING, "lock failed\n"); + return MPD_LOCK_FAILED; + } + mpd_sendSingleCommand(mi->connection, single); + mpd_finishCommand(mi->connection); + + mpd_unlock_conn(mi); + mpd_status_queue_update(mi); + return MPD_OK; +} +int mpd_player_get_single(MpdObj * mi) +{ + if (!mpd_check_connected(mi)) { + debug_printf(DEBUG_WARNING, "not connected\n"); + return MPD_NOT_CONNECTED; + } + if (mpd_status_check(mi) != MPD_OK) { + debug_printf(DEBUG_WARNING, "Failed grabbing status\n"); + return MPD_NOT_CONNECTED; + } + return mi->status->single; +} +int mpd_player_set_consume(MpdObj * mi, int consume) +{ + if (!mpd_check_connected(mi)) { + debug_printf(DEBUG_WARNING, "not connected\n"); + return MPD_NOT_CONNECTED; + } + if (mpd_lock_conn(mi)) { + debug_printf(DEBUG_WARNING, "lock failed\n"); + return MPD_LOCK_FAILED; + } + mpd_sendConsumeCommand(mi->connection, consume); + mpd_finishCommand(mi->connection); + + mpd_unlock_conn(mi); + mpd_status_queue_update(mi); + return MPD_OK; +} + + int mpd_player_get_repeat(MpdObj * mi) { if (!mpd_check_connected(mi)) { diff -Nru /tmp/MCjLit738T/libmpd-0.18.0/src/libmpd-player.h /tmp/6pey5ChugS/libmpd-0.19.0/src/libmpd-player.h --- libmpd-0.18.0/src/libmpd-player.h 2009-03-09 16:22:37.000000000 +0000 +++ libmpd-0.19.0/src/libmpd-player.h 2009-09-21 11:06:04.000000000 +0100 @@ -147,6 +147,23 @@ */ int mpd_player_get_repeat(MpdObj * mi); +/** + * \param mi a #MpdObj + * + * Get the state of consume mode: 1 if enabled, 0 when disabled. + * + * @returns the state of consume + */ +int mpd_player_get_consume(MpdObj * mi); + +/** + * \param mi a #MpdObj + * + * Get the state of single mode: 1 if enabled, 0 when disabled. + * + * @returns the state of single + */ +int mpd_player_get_single(MpdObj * mi); /** * \param mi a #MpdObj @@ -186,6 +203,28 @@ */ int mpd_player_seek(MpdObj * mi, int sec); + + +int mpd_player_get_next_song_pos(MpdObj *mi); +int mpd_player_get_next_song_id(MpdObj *mi); +/** + * @param mi a #MpdObj + * @param single the state of single mode + * + * Enable/disable single mode. (single = 1 is enabled, single = 0 disabled) + * @return a #MpdError + */ +int mpd_player_set_single(MpdObj * mi, int single); + +/** + * @param mi a #MpdObj + * @param consume the state of consume mode + * + * Enable/disable consume mode. (consume = 1 is enabled, consume = 0 disabled) + */ +int mpd_player_set_consume(MpdObj * mi, int consume); + #endif + /*@}*/ diff -Nru /tmp/MCjLit738T/libmpd-0.18.0/src/libmpd-playlist.c /tmp/6pey5ChugS/libmpd-0.19.0/src/libmpd-playlist.c --- libmpd-0.18.0/src/libmpd-playlist.c 2009-03-09 16:22:37.000000000 +0000 +++ libmpd-0.19.0/src/libmpd-playlist.c 2009-09-21 11:06:04.000000000 +0100 @@ -238,7 +238,7 @@ { if(!mpd_check_connected(mi)) { - debug_printf(DEBUG_ERROR, "Not Connected\n"); + debug_printf(DEBUG_WARNING, "Not Connected\n"); return NULL; } diff -Nru /tmp/MCjLit738T/libmpd-0.18.0/src/libmpd-status.c /tmp/6pey5ChugS/libmpd-0.19.0/src/libmpd-status.c --- libmpd-0.18.0/src/libmpd-status.c 2009-03-09 16:22:37.000000000 +0000 +++ libmpd-0.19.0/src/libmpd-status.c 2009-09-21 11:06:04.000000000 +0100 @@ -151,7 +151,24 @@ mi->CurrentState.songpos = mi->status->song; } + if(mi->CurrentState.nextsongid != mi->status->nextsongid || mi->CurrentState.nextsongpos != mi->status->nextsong) + { + what_changed |= MPD_CST_NEXTSONG; + /* save new songid */ + mi->CurrentState.nextsongpos = mi->status->nextsong; + mi->CurrentState.nextsongid = mi->status->nextsongid; + } + if(mi->CurrentState.single != mi->status->single) + { + what_changed |= MPD_CST_SINGLE_MODE; + mi->CurrentState.single = mi->status->single; + } + if(mi->CurrentState.consume != mi->status->consume) + { + what_changed |= MPD_CST_CONSUME_MODE; + mi->CurrentState.consume = mi->status->consume; + } if(mi->CurrentState.repeat != mi->status->repeat) { what_changed |= MPD_CST_REPEAT; @@ -249,7 +266,14 @@ mpd_OutputEntity *output = NULL; mpd_sendOutputsCommand(mi->connection); while (( output = mpd_getNextOutput(mi->connection)) != NULL) - { + { + if(mi->num_outputs < output->id) + { + mi->num_outputs++; + mi->output_states = realloc(mi->output_states,mi->num_outputs*sizeof(int)); + mi->output_states[mi->num_outputs] = output->enabled; + what_changed |= MPD_CST_OUTPUT; + } if(mi->output_states[output->id] != output->enabled) { mi->output_states[output->id] = output->enabled; diff -Nru /tmp/MCjLit738T/libmpd-0.18.0/src/libmpd-sticker.c /tmp/6pey5ChugS/libmpd-0.19.0/src/libmpd-sticker.c --- libmpd-0.18.0/src/libmpd-sticker.c 2009-03-09 16:22:37.000000000 +0000 +++ libmpd-0.19.0/src/libmpd-sticker.c 2009-09-21 11:06:04.000000000 +0100 @@ -50,7 +50,7 @@ if(mi->connection->error == MPD_ERROR_ACK && mi->connection->errorCode == MPD_ACK_ERROR_NO_EXIST) { mpd_clearError(mi->connection); - free(retv); + g_free(retv); retv = NULL; } if(mpd_unlock_conn(mi)) diff -Nru /tmp/MCjLit738T/libmpd-0.18.0/src/libmpd-version.h /tmp/6pey5ChugS/libmpd-0.19.0/src/libmpd-version.h --- libmpd-0.18.0/src/libmpd-version.h 2009-03-09 16:22:46.000000000 +0000 +++ libmpd-0.19.0/src/libmpd-version.h 2009-09-21 11:06:04.000000000 +0100 @@ -18,9 +18,9 @@ */ #ifndef LIBMPD_VERSION -#define LIBMPD_VERSION "0.18.0" +#define LIBMPD_VERSION "0.19.0" #define LIBMPD_MAJOR_VERSION (0) -#define LIBMPD_MINOR_VERSION (18) +#define LIBMPD_MINOR_VERSION (19) #define LIBMPD_MICRO_VERSION (0) #endif