Commit 24721bba authored by Led's avatar Led

0.8.1

parent a2e63ec1
......@@ -45,7 +45,7 @@ kill
kill mpd
listall <string directory>
lists all songs in _directory_ (recursively)
lists all songs and directories in _directory_ (recursively)
_directory_ is optional
load <string name>
......
ver 0.8.1 (2003/7/15)
1) FreeBSD fixes
2) Fix for rare segfault when updating
3) Fix bug where client was being hungup on when done playing current song
4) Fix bug when playing flac's where it incorrectly reports an error
5) Make stop playlist on error configurable
6) Configure checks for installed libmad and libid3tag and uses those if found
7) Use buffer->finished in *_decode's instead of depending on catching signals
ver 0.8.0 (2003/7/6)
1) Flac support
2) Make playlist max length configurable
......
bin_PROGRAMS = mpd
SUBDIRS = libid3tag libmad
SUBDIRS = $(ID3_SUBDIR) $(MAD_SUBDIR)
pkgdata_DATA = mpdconf.example README INSTALL
EXTRA_DIST = COMMANDS UPGRADING $(pkgdata_DATA)
mpd_headers = buffer2array.h interface.h command.h playlist.h ls.h \
......@@ -11,7 +11,4 @@ mpd_SOURCES = main.c buffer2array.c interface.c command.c playlist.c ls.c \
tag.c player.c listen.c conf.c ogg_decode.c volume.c mp3_decode.c \
audio.c buffer.c stats.c myfprintf.c $(mpd_headers)
MAD_LIB = libmad/libmad.la
ID3_LIB = libid3tag/libid3tag.la
mpd_LDADD = $(MAD_LIB) $(ID3_LIB)
mpd_LDADD = $(ID3_LIB) $(MAD_LIB)
......@@ -76,11 +76,15 @@ CCASFLAGS = @CCASFLAGS@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
ID3_LIB = @ID3_LIB@
ID3_SUBDIR = @ID3_SUBDIR@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LIBFLAC_CFLAGS = @LIBFLAC_CFLAGS@
LIBFLAC_LIBS = @LIBFLAC_LIBS@
LIBTOOL = @LIBTOOL@
LN_S = @LN_S@
MAD_LIB = @MAD_LIB@
MAD_SUBDIR = @MAD_SUBDIR@
OBJDUMP = @OBJDUMP@
OGG_CFLAGS = @OGG_CFLAGS@
OGG_LIBS = @OGG_LIBS@
......@@ -96,7 +100,7 @@ am__include = @am__include@
am__quote = @am__quote@
install_sh = @install_sh@
bin_PROGRAMS = mpd
SUBDIRS = libid3tag libmad
SUBDIRS = $(ID3_SUBDIR) $(MAD_SUBDIR)
pkgdata_DATA = mpdconf.example README INSTALL
EXTRA_DIST = COMMANDS UPGRADING $(pkgdata_DATA)
mpd_headers = buffer2array.h interface.h command.h playlist.h ls.h \
......@@ -110,10 +114,7 @@ mpd_SOURCES = main.c buffer2array.c interface.c command.c playlist.c ls.c \
audio.c buffer.c stats.c myfprintf.c $(mpd_headers)
MAD_LIB = libmad/libmad.la
ID3_LIB = libid3tag/libid3tag.la
mpd_LDADD = $(MAD_LIB) $(ID3_LIB)
mpd_LDADD = $(ID3_LIB) $(MAD_LIB)
subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
......@@ -132,7 +133,7 @@ am_mpd_OBJECTS = main.$(OBJEXT) buffer2array.$(OBJEXT) \
buffer.$(OBJEXT) stats.$(OBJEXT) myfprintf.$(OBJEXT) \
$(am__objects_1)
mpd_OBJECTS = $(am_mpd_OBJECTS)
mpd_DEPENDENCIES = libmad/libmad.la libid3tag/libid3tag.la
mpd_DEPENDENCIES =
mpd_LDFLAGS =
DEFS = @DEFS@
......
......@@ -3,7 +3,7 @@
http://musicpd.sourceforge.net
A daemon for playing music (currently mp3 and ogg vorbis). Music is played
through the server's audio device. The daemon stores info about all availabe
through the server's audio device. The daemon stores info about all available
music, and this info can be easily searched and retrieved. Player control, info
retrieval, and playlist management can all be managed remotely.
......
......@@ -785,6 +785,8 @@ AC_REQUIRE([AC_PROG_CC])dnl
AC_REQUIRE([AC_PROG_LD])dnl
AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl
AC_REQUIRE([AC_PROG_NM])dnl
AC_REQUIRE([LT_AC_PROG_SED])dnl
AC_REQUIRE([AC_PROG_LN_S])dnl
AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
AC_REQUIRE([AC_OBJEXT])dnl
......@@ -952,9 +954,12 @@ hpux*) # Its linker distinguishes data from code symbols
lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
;;
irix*)
irix* | nonstopux*)
symcode='[[BCDEGRST]]'
;;
osf*)
symcode='[[BCDEGQRST]]'
;;
solaris* | sysv5*)
symcode='[[BDT]]'
;;
......@@ -1051,7 +1056,7 @@ EOF
save_CFLAGS="$CFLAGS"
LIBS="conftstm.$ac_objext"
CFLAGS="$CFLAGS$no_builtin_flag"
if AC_TRY_EVAL(ac_link) && test -s conftest; then
if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
pipe_works=yes
fi
LIBS="$save_LIBS"
......@@ -1595,7 +1600,7 @@ AC_CACHE_VAL(lt_cv_prog_cc_pic,
# like `-m68040'.
lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4'
;;
beos* | irix5* | irix6* | osf3* | osf4* | osf5*)
beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
# PIC is the default for these OSes.
;;
darwin* | rhapsody*)
......@@ -1638,7 +1643,7 @@ AC_CACHE_VAL(lt_cv_prog_cc_pic,
lt_cv_prog_cc_pic='+Z'
;;
irix5* | irix6*)
irix5* | irix6* | nonstopux*)
lt_cv_prog_cc_wl='-Wl,'
lt_cv_prog_cc_static='-non_shared'
# PIC (with -KPIC) is the default.
......@@ -1682,11 +1687,7 @@ AC_CACHE_VAL(lt_cv_prog_cc_pic,
sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
lt_cv_prog_cc_pic='-KPIC'
lt_cv_prog_cc_static='-Bstatic'
if test "x$host_vendor" = xsni; then
lt_cv_prog_cc_wl='-LD'
else
lt_cv_prog_cc_wl='-Wl,'
fi
lt_cv_prog_cc_wl='-Wl,'
;;
uts4*)
......@@ -2051,7 +2052,7 @@ EOF
# If the export-symbols file already is a .def file (1st line
# is EXPORTS), use it as is.
# If DATA tags from a recent dlltool are present, honour them!
archive_expsym_cmds='if test "x`head -1 $export_symbols`" = xEXPORTS; then
archive_expsym_cmds='if test "x`sed 1q $export_symbols`" = xEXPORTS; then
cp $export_symbols $output_objdir/$soname-def;
else
echo EXPORTS > $output_objdir/$soname-def;
......@@ -2060,6 +2061,7 @@ EOF
set dummy \$symbol;
case \[$]# in
2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;;
4) echo " \[$]2 \[$]3 \[$]4 ; " >> $output_objdir/$soname-def; _lt_hint=`expr \$_lt_hint - 1`;;
*) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;;
esac;
_lt_hint=`expr 1 + \$_lt_hint`;
......@@ -2172,10 +2174,12 @@ else
# need to do runtime linking.
case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
for ld_flag in $LDFLAGS; do
if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
case $ld_flag in
*-brtl*)
aix_use_runtimelinking=yes
break
fi
;;
esac
done
esac
......@@ -2247,7 +2251,7 @@ else
allow_undefined_flag='${wl}-berok'
# This is a bit strange, but is similar to how AIX traditionally builds
# it's shared libraries.
archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $objdir/$libname$release.a $objdir/$soname'
archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
;;
......@@ -2289,8 +2293,9 @@ else
esac
# FIXME: Relying on posixy $() will cause problems for
# cross-compilation, but unfortunately the echo tests do not
# yet detect zsh echo's removal of \ escapes.
archive_cmds='$nonopt $(test "x$module" = xyes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib $libobjs $deplibs$linker_flags -install_name $rpath/$soname $verstring'
# yet detect zsh echo's removal of \ escapes. Also zsh mangles
# `"' quotes if we put them in here... so don't!
archive_cmds='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs && $CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib ${lib}-master.o $deplibs$linker_flags $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)'
# We need to add '_' to the symbols in $export_symbols first
#archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols'
hardcode_direct=yes
......@@ -2342,13 +2347,14 @@ else
export_dynamic_flag_spec='${wl}-E'
;;
irix5* | irix6*)
irix5* | irix6* | nonstopux*)
if test "$GCC" = yes; then
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
else
archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
hardcode_libdir_flag_spec='-rpath $libdir'
fi
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
hardcode_libdir_separator=:
link_all_deplibs=yes
;;
......@@ -2376,7 +2382,7 @@ else
hardcode_direct=yes
hardcode_shlibpath_var=no
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
export_dynamic_flag_spec='${wl}-E'
else
......@@ -2386,7 +2392,7 @@ else
hardcode_libdir_flag_spec='-R$libdir'
;;
*)
archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
;;
esac
......@@ -2498,13 +2504,23 @@ EOF
;;
sysv4)
if test "x$host_vendor" = xsno; then
archive_cmds='$LD -G -Bsymbolic -h $soname -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct=yes # is this really true???
else
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct=no #Motorola manual says yes, but my tests say they lie
fi
case $host_vendor in
sni)
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct=yes # is this really true???
;;
siemens)
## LD is ld it makes a PLAMLIB
## CC just makes a GrossModule.
archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
reload_cmds='$CC -r -o $output$reload_objs'
hardcode_direct=no
;;
motorola)
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct=no #Motorola manual says yes, but my tests say they lie
;;
esac
runpath_var='LD_RUN_PATH'
hardcode_shlibpath_var=no
;;
......@@ -2645,6 +2661,9 @@ aix3*)
aix4* | aix5*)
version_type=linux
need_lib_prefix=no
need_version=no
hardcode_into_libs=yes
if test "$host_cpu" = ia64; then
# AIX 5 supports IA64
library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so'
......@@ -2683,6 +2702,7 @@ aix4* | aix5*)
fi
shlibpath_var=LIBPATH
fi
hardcode_into_libs=yes
;;
amigaos*)
......@@ -2730,7 +2750,7 @@ cygwin* | mingw* | pw32*)
;;
yes,mingw*)
library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g"`
sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g" -e "s,=/,/,g"`
;;
yes,pw32*)
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
......@@ -2762,6 +2782,18 @@ freebsd1*)
dynamic_linker=no
;;
freebsd*-gnu*)
version_type=linux
need_lib_prefix=no
need_version=no
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
soname_spec='${libname}${release}.so$major'
shlibpath_var=LD_LIBRARY_PATH
shlibpath_overrides_runpath=no
hardcode_into_libs=yes
dynamic_linker='GNU/FreeBSD ld.so'
;;
freebsd*)
objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
version_type=freebsd-$objformat
......@@ -2813,14 +2845,17 @@ hpux9* | hpux10* | hpux11*)
postinstall_cmds='chmod 555 $lib'
;;
irix5* | irix6*)
version_type=irix
irix5* | irix6* | nonstopux*)
case $host_os in
nonstopux*) version_type=nonstopux ;;
*) version_type=irix ;;
esac
need_lib_prefix=no
need_version=no
soname_spec='${libname}${release}.so$major'
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so'
case $host_os in
irix5*)
irix5* | nonstopux*)
libsuff= shlibsuff=
;;
*)
......@@ -2924,11 +2959,13 @@ os2*)
osf3* | osf4* | osf5*)
version_type=osf
need_version=no
soname_spec='${libname}${release}.so'
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
need_lib_prefix=no
soname_spec='${libname}${release}.so$major'
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
shlibpath_var=LD_LIBRARY_PATH
sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
hardcode_into_libs=yes
;;
sco3.2v5*)
......@@ -2971,6 +3008,12 @@ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
case $host_vendor in
sni)
shlibpath_overrides_runpath=no
need_lib_prefix=no
export_dynamic_flag_spec='${wl}-Blargedynsym'
runpath_var=LD_RUN_PATH
;;
siemens)
need_lib_prefix=no
;;
motorola)
need_lib_prefix=no
......@@ -3125,7 +3168,7 @@ if test -f "$ltmain"; then
# Now quote all the things that may contain metacharacters while being
# careful not to overquote the AC_SUBSTed values. We take copies of the
# variables and quote the copies for generation of the libtool script.
for var in echo old_CC old_CFLAGS \
for var in echo old_CC old_CFLAGS SED \
AR AR_FLAGS CC LD LN_S NM SHELL \
reload_flag reload_cmds wl \
pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
......@@ -3187,8 +3230,11 @@ if test -f "$ltmain"; then
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# A sed that does not truncate output.
SED=$lt_SED
# Sed that helps us avoid accidentally triggering echo(1) options like -n.
Xsed="sed -e s/^X//"
Xsed="${SED} -e s/^X//"
# The HP-UX ksh and POSIX shell print the target directory to stdout
# if CDPATH is set.
......@@ -3949,7 +3995,7 @@ test -n "$reload_flag" && reload_flag=" $reload_flag"
# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies
# -- PORTME fill in with the dynamic library characteristics
AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
[AC_CACHE_CHECK([how to recognise dependant libraries],
[AC_CACHE_CHECK([how to recognise dependent libraries],
lt_cv_deplibs_check_method,
[lt_cv_file_magic_cmd='$MAGIC_CMD'
lt_cv_file_magic_test_file=
......@@ -4024,9 +4070,9 @@ hpux10.20*|hpux11*)
lt_cv_file_magic_test_file=/usr/lib/libc.sl
;;
irix5* | irix6*)
irix5* | irix6* | nonstopux*)
case $host_os in
irix5*)
irix5* | nonstopux*)
# this will be overridden with pass_all, but let us keep it just in case
lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
;;
......@@ -4048,7 +4094,7 @@ irix5* | irix6*)
# This must be Linux ELF.
linux-gnu*)
case $host_cpu in
alpha* | hppa* | i*86 | powerpc* | sparc* | ia64* | s390* )
alpha* | hppa* | i*86 | mips | mipsel | powerpc* | sparc* | ia64* | arm* | m68k)
lt_cv_deplibs_check_method=pass_all ;;
*)
# glibc up to 2.1.1 does not perform some relocations on ARM
......@@ -4119,6 +4165,9 @@ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
lt_cv_file_magic_test_file=/lib/libc.so
;;
siemens)
lt_cv_deplibs_check_method=pass_all
;;
esac
;;
esac
......@@ -4184,12 +4233,12 @@ esac
])
# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
# the libltdl convenience library and INCLTDL to the include flags for
# the libltdl convenience library and LTDLINCL to the include flags for
# the libltdl header and adds --enable-ltdl-convenience to the
# configure arguments. Note that LIBLTDL and INCLTDL are not
# configure arguments. Note that LIBLTDL and LTDLINCL are not
# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not
# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed
# with '${top_builddir}/' and INCLTDL will be prefixed with
# with '${top_builddir}/' and LTDLINCL will be prefixed with
# '${top_srcdir}/' (note the single quotes!). If your package is not
# flat and you're not using automake, define top_builddir and
# top_srcdir appropriately in the Makefiles.
......@@ -4201,16 +4250,18 @@ AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
esac
LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
# For backwards non-gettext consistent compatibility...
INCLTDL="$LTDLINCL"
])
# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
# the libltdl installable library and INCLTDL to the include flags for
# the libltdl installable library and LTDLINCL to the include flags for
# the libltdl header and adds --enable-ltdl-install to the configure
# arguments. Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is
# arguments. Note that LIBLTDL and LTDLINCL are not AC_SUBSTed, nor is
# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed
# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will
# be prefixed with '${top_builddir}/' and INCLTDL will be prefixed
# be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed
# with '${top_srcdir}/' (note the single quotes!). If your package is
# not flat and you're not using automake, define top_builddir and
# top_srcdir appropriately in the Makefiles.
......@@ -4228,12 +4279,14 @@ AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
if test x"$enable_ltdl_install" = x"yes"; then
ac_configure_args="$ac_configure_args --enable-ltdl-install"
LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
else
ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
LIBLTDL="-lltdl"
INCLTDL=
LTDLINCL=
fi
# For backwards non-gettext consistent compatibility...
INCLTDL="$LTDLINCL"
])
# old names
......@@ -4248,6 +4301,95 @@ AC_DEFUN([AM_PROG_NM], [AC_PROG_NM])
# This is just to silence aclocal about the macro not being used
ifelse([AC_DISABLE_FAST_INSTALL])
# NOTE: This macro has been submitted for inclusion into #
# GNU Autoconf as AC_PROG_SED. When it is available in #
# a released version of Autoconf we should remove this #
# macro and use it instead. #
# LT_AC_PROG_SED
# --------------
# Check for a fully-functional sed program, that truncates
# as few characters as possible. Prefer GNU sed if found.
AC_DEFUN([LT_AC_PROG_SED],
[AC_MSG_CHECKING([for a sed that does not truncate output])
AC_CACHE_VAL(lt_cv_path_SED,
[# Loop through the user's path and test for sed and gsed.
# Then use that list of sed's as ones to test for truncation.
as_executable_p="test -f"
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_prog in sed gsed; do
for ac_exec_ext in '' $ac_executable_extensions; do
if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
_sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext"
fi
done
done
done
# Create a temporary directory, and hook for its removal unless debugging.
$debug ||
{
trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
trap '{ (exit 1); exit 1; }' 1 2 13 15
}
# Create a (secure) tmp directory for tmp files.
: ${TMPDIR=/tmp}
{
tmp=`(umask 077 && mktemp -d -q "$TMPDIR/sedXXXXXX") 2>/dev/null` &&
test -n "$tmp" && test -d "$tmp"
} ||
{
tmp=$TMPDIR/sed$$-$RANDOM
(umask 077 && mkdir $tmp)
} ||
{
echo "$me: cannot create a temporary directory in $TMPDIR" >&2
{ (exit 1); exit 1; }
}
_max=0
_count=0
# Add /usr/xpg4/bin/sed as it is typically found on Solaris
# along with /bin/sed that truncates output.
for _sed in $_sed_list /usr/xpg4/bin/sed; do
test ! -f ${_sed} && break
cat /dev/null > "$tmp/sed.in"
_count=0
echo ${ECHO_N-$ac_n} "0123456789${ECHO_C-$ac_c}" >"$tmp/sed.in"
# Check for GNU sed and select it if it is found.
if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then
lt_cv_path_SED=${_sed}
break
fi
while true; do
cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp"
mv "$tmp/sed.tmp" "$tmp/sed.in"
cp "$tmp/sed.in" "$tmp/sed.nl"
echo >>"$tmp/sed.nl"
${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break
cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break
# 40000 chars as input seems more than enough
test $_count -gt 10 && break
_count=`expr $_count + 1`
if test $_count -gt $_max; then
_max=$_count
lt_cv_path_SED=$_sed
fi
done
done
rm -rf "$tmp"
])
if test "X$SED" != "X"; then
lt_cv_path_SED=$SED
else
SED=$lt_cv_path_SED
fi
AC_MSG_RESULT([$SED])
])
# ao.m4
# Configure paths for libao
# Jack Moffitt <jack@icecast.org> 10-21-2000
......
......@@ -20,6 +20,7 @@
#include "command.h"
#include "conf.h"
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/shm.h>
#include <stdio.h>
......
......@@ -31,6 +31,7 @@ typedef struct _Buffer {
int begin;
int end;
int wrap;
int finished;
} Buffer;
void initBuffer();
......
......@@ -359,7 +359,7 @@ int processCommand(FILE * fp, int argArrayLength, char ** argArray) {
return -1;
}
if(argArrayLength==2) directory = argArray[1];
return printAllSongFilenamesInDirectory(fp,directory);
printAllIn(fp,directory);
}
else if(0==strcmp(argArray[0],COMMAND_STATS)) {
if(argArrayLength!=1) {
......
......@@ -28,7 +28,7 @@
#define MAX_STRING_SIZE MAXPATHLEN+80
#define CONF_NUMBER_OF_PARAMS 10
#define CONF_NUMBER_OF_PARAMS 11
#define CONF_NUMBER_OF_PATHS 4
#define CONF_NUMBER_OF_REQUIRED 5
......@@ -37,6 +37,7 @@
#define CONF_MAX_CONNECTIONS_DEFAULT "5"
#define CONF_MAX_PLAYLIST_LENGTH_DEFAULT "4096"
#define CONF_BUFFER_BEFORE_PLAY_DEFAULT "25%"
#define CONF_STOP_ON_ERROR_DEFAULT "yes"
char conf_strings[CONF_NUMBER_OF_PARAMS][24] = {
"port",
......@@ -48,7 +49,8 @@ char conf_strings[CONF_NUMBER_OF_PARAMS][24] = {
"mixer_device",
"max_connections",
"max_playlist_length",
"buffer_before_play"
"buffer_before_play",
"stop_on_error"
};
int conf_absolutePaths[CONF_NUMBER_OF_PATHS] = {
......@@ -79,6 +81,7 @@ void initConf() {
conf_params[CONF_MAX_CONNECTIONS] = strdup(CONF_MAX_CONNECTIONS_DEFAULT);
conf_params[CONF_MAX_PLAYLIST_LENGTH] = strdup(CONF_MAX_PLAYLIST_LENGTH_DEFAULT);
conf_params[CONF_BUFFER_BEFORE_PLAY] = strdup(CONF_BUFFER_BEFORE_PLAY_DEFAULT);
conf_params[CONF_STOP_ON_ERROR] = strdup(CONF_STOP_ON_ERROR_DEFAULT);
}
char ** readConf(char * file) {
......
......@@ -29,6 +29,7 @@
#define CONF_MAX_CONNECTIONS 7
#define CONF_MAX_PLAYLIST_LENGTH 8
#define CONF_BUFFER_BEFORE_PLAY 9
#define CONF_STOP_ON_ERROR 10
/* do not free the return value, it is a static variable */
char ** readConf(char * file);
......
#! /bin/sh
# Attempt to guess a canonical system name.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
# Free Software Foundation, Inc.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
timestamp='2001-09-04'
timestamp='2003-05-19'
# 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
......@@ -24,8 +24,9 @@ timestamp='2001-09-04'
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# Written by Per Bothner <bothner@cygnus.com>.
# Please send patches to <config-patches@gnu.org>.
# Originally written by Per Bothner <per@bothner.com>.
# Please send patches to <config-patches@gnu.org>. Submit a context
# diff and a properly formatted ChangeLog entry.
#
# This script attempts to guess a canonical system name similar to
# config.sub. If it succeeds, it prints the system name on stdout, and
......@@ -87,30 +88,41 @@ if test $# != 0; then
exit 1
fi
trap 'exit 1' 1 2 15
dummy=dummy-$$
trap 'rm -f $dummy.c $dummy.o $dummy.rel $dummy; exit 1' 1 2 15
# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
# compiler to aid in system detection is discouraged as it requires
# temporary files to be created and, as you can see below, it is a
# headache to deal with in a portable fashion.
# CC_FOR_BUILD -- compiler used by this script.
# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
# use `HOST_CC' if defined, but it is deprecated.
set_cc_for_build='case $CC_FOR_BUILD,$HOST_CC,$CC in
,,) echo "int dummy(){}" > $dummy.c ;
for c in cc gcc c89 ; do
($c $dummy.c -c -o $dummy.o) >/dev/null 2>&1 ;
if test $? = 0 ; then
# Portable tmp directory creation inspired by the Autoconf team.
set_cc_for_build='
trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
: ${TMPDIR=/tmp} ;
{ tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
{ test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
{ echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
dummy=$tmp/dummy ;
tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
case $CC_FOR_BUILD,$HOST_CC,$CC in
,,) echo "int x;" > $dummy.c ;
for c in cc gcc c89 c99 ; do
if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
CC_FOR_BUILD="$c"; break ;
fi ;
done ;
rm -f $dummy.c $dummy.o $dummy.rel ;
if test x"$CC_FOR_BUILD" = x ; then
CC_FOR_BUILD=no_compiler_found ;
fi
;;
,,*) CC_FOR_BUILD=$CC ;;
,*,*) CC_FOR_BUILD=$HOST_CC ;;
esac'
esac ;'
# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
# (ghazi@noc.rutgers.edu 1994-08-24)
......@@ -127,29 +139,30 @@ UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
*:NetBSD:*:*)
# Netbsd (nbsd) targets should (where applicable) match one or
# NetBSD (nbsd) targets should (where applicable) match one or
# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
# *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
# switched to ELF, *-*-netbsd* would select the old
# object file format. This provides both forward
# compatibility and a consistent mechanism for selecting the
# object file format.
# Determine the machine/vendor (is the vendor relevant).
case "${UNAME_MACHINE}" in
amiga) machine=m68k-unknown ;;
arm32) machine=arm-unknown ;;
atari*) machine=m68k-atari ;;
sun3*) machine=m68k-sun ;;
mac68k) machine=m68k-apple ;;
macppc) machine=powerpc-apple ;;
hp3[0-9][05]) machine=m68k-hp ;;
ibmrt|romp-ibm) machine=romp-ibm ;;
*) machine=${UNAME_MACHINE}-unknown ;;
#
# Note: NetBSD doesn't particularly care about the vendor
# portion of the name. We always set it to "unknown".
sysctl="sysctl -n hw.machine_arch"
UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
/usr/sbin/$sysctl 2>/dev/null || echo unknown)`
case "${UNAME_MACHINE_ARCH}" in
armeb) machine=armeb-unknown ;;
arm*) machine=arm-unknown ;;
sh3el) machine=shl-unknown ;;
sh3eb) machine=sh-unknown ;;
*) machine=${UNAME_MACHINE_ARCH}-unknown ;;
esac
# The Operating System including object format, if it has switched
# to ELF recently, or will in the future.
case "${UNAME_MACHINE}" in
i386|sparc|amiga|arm*|hp300|mvme68k|vax|atari|luna68k|mac68k|news68k|next68k|pc532|sun3*|x68k)
case "${UNAME_MACHINE_ARCH}" in
arm*|i386|m68k|ns32k|sh3*|sparc|vax)
eval $set_cc_for_build
if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
| grep __ELF__ >/dev/null
......@@ -166,73 +179,107 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
;;
esac
# The OS release
release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
# Debian GNU/NetBSD machines have a different userland, and
# thus, need a distinct triplet. However, they do not need
# kernel version information, so it can be replaced with a
# suitable tag, in the style of linux-gnu.
case "${UNAME_VERSION}" in
Debian*)
release='-gnu'
;;
*)
release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
;;
esac
# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
# contains redundant information, the shorter form:
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
echo "${machine}-${os}${release}"
exit 0 ;;
amiga:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
arc:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
hp300:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
mac68k:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
macppc:OpenBSD:*:*)
echo powerpc-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
mvme68k:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
mvme88k:OpenBSD:*:*)
echo m88k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
mvmeppc:OpenBSD:*:*)
echo powerpc-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
pmax:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
sgi:OpenBSD:*:*)
echo mipseb-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
sun3:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
wgrisc:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
*:OpenBSD:*:*)
echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
alpha:OSF1:*:*)
if test $UNAME_RELEASE = "V4.0"; then
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
fi
# According to Compaq, /usr/sbin/psrinfo has been available on
# OSF/1 and Tru64 systems produced since 1995. I hope that
# covers most systems running today. This code pipes the CPU
# types through head -n 1, so we only detect the type of CPU 0.
ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
case "$ALPHA_CPU_TYPE" in
"EV4 (21064)")
UNAME_MACHINE="alpha" ;;
"EV4.5 (21064)")
UNAME_MACHINE="alpha" ;;
"LCA4 (21066/21068)")
UNAME_MACHINE="alpha" ;;
"EV5 (21164)")
UNAME_MACHINE="alphaev5" ;;
"EV5.6 (21164A)")
UNAME_MACHINE="alphaev56" ;;
"EV5.6 (21164PC)")
UNAME_MACHINE="alphapca56" ;;
"EV5.7 (21164PC)")
UNAME_MACHINE="alphapca57" ;;
"EV6 (21264)")
UNAME_MACHINE="alphaev6" ;;
"EV6.7 (21264A)")
UNAME_MACHINE="alphaev67" ;;
"EV6.8CB (21264C)")
UNAME_MACHINE="alphaev68" ;;
"EV6.8AL (21264B)")
UNAME_MACHINE="alphaev68" ;;
"EV6.8CX (21264D)")
UNAME_MACHINE="alphaev68" ;;
"EV6.9A (21264/EV69A)")
UNAME_MACHINE="alphaev69" ;;
"EV7 (21364)")
UNAME_MACHINE="alphaev7" ;;
"EV7.9 (21364A)")
UNAME_MACHINE="alphaev79" ;;
esac
# A Vn.n version is a released version.
# A Tn.n version is a released field test version.
# A Xn.n version is an unreleased experimental baselevel.
# 1.2 uses "1.2" for uname -r.
cat <<EOF >$dummy.s
.data
\$Lformat:
.byte 37,100,45,37,120,10,0 # "%d-%x\n"
.text
.globl main
.align 4
.ent main
main:
.frame \$30,16,\$26,0
ldgp \$29,0(\$27)
.prologue 1
.long 0x47e03d80 # implver \$0
lda \$2,-1
.long 0x47e20c21 # amask \$2,\$1
lda \$16,\$Lformat
mov \$0,\$17
not \$1,\$18
jsr \$26,printf
ldgp \$29,0(\$26)
mov 0,\$16
jsr \$26,exit
.end main
EOF
eval $set_cc_for_build
$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
if test "$?" = 0 ; then
case `./$dummy` in
0-0)
UNAME_MACHINE="alpha"
;;
1-0)
UNAME_MACHINE="alphaev5"
;;
1-1)
UNAME_MACHINE="alphaev56"
;;
1-101)
UNAME_MACHINE="alphapca56"
;;
2-303)
UNAME_MACHINE="alphaev6"
;;
2-307)
UNAME_MACHINE="alphaev67"
;;
2-1307)
UNAME_MACHINE="alphaev68"
;;
esac
fi
rm -f $dummy.s $dummy
echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
exit 0 ;;
Alpha\ *:Windows_NT*:*)
......@@ -247,29 +294,11 @@ EOF
Amiga*:UNIX_System_V:4.0:*)
echo m68k-unknown-sysv4
exit 0;;
amiga:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
*:[Aa]miga[Oo][Ss]:*:*)
echo ${UNAME_MACHINE}-unknown-amigaos
exit 0 ;;
arc64:OpenBSD:*:*)
echo mips64el-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
arc:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
hkmips:OpenBSD:*:*)
echo mips-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
pmax:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
sgi:OpenBSD:*:*)
echo mips-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
wgrisc:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
*:[Mm]orph[Oo][Ss]:*:*)
echo ${UNAME_MACHINE}-unknown-morphos
exit 0 ;;
*:OS/390:*:*)
echo i370-ibm-openedition
......@@ -291,6 +320,10 @@ EOF
NILE*:*:*:dcosx)
echo pyramid-pyramid-svr4
exit 0 ;;
DRS?6000:UNIX_SV:4.2*:7*)
case `/usr/bin/uname -p` in
sparc) echo sparc-icl-nx7 && exit 0 ;;
esac ;;
sun4H:SunOS:5.*:*)
echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit 0 ;;
......@@ -319,7 +352,7 @@ EOF
echo m68k-sun-sunos${UNAME_RELEASE}
exit 0 ;;
sun*:*:4.2BSD:*)
UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
case "`/bin/arch`" in
sun3)
......@@ -333,12 +366,6 @@ EOF
aushp:SunOS:*:*)
echo sparc-auspex-sunos${UNAME_RELEASE}
exit 0 ;;
sparc*:NetBSD:*)
echo `uname -p`-unknown-netbsd${UNAME_RELEASE}
exit 0 ;;
atari*:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
# The situation for MiNT is a little confusing. The machine name
# can be virtually everything (everything which is not
# "atarist" or "atariste" at least should have a processor
......@@ -365,18 +392,6 @@ EOF
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
echo m68k-unknown-mint${UNAME_RELEASE}
exit 0 ;;
sun3*:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
mac68k:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
mvme68k:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
mvme88k:OpenBSD:*:*)
echo m88k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
powerpc:machten:*:*)
echo powerpc-apple-machten${UNAME_RELEASE}
exit 0 ;;
......@@ -415,15 +430,20 @@ EOF
exit (-1);
}
EOF
$CC_FOR_BUILD $dummy.c -o $dummy \
&& ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
&& rm -f $dummy.c $dummy && exit 0
rm -f $dummy.c $dummy
$CC_FOR_BUILD -o $dummy $dummy.c \
&& $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
&& exit 0
echo mips-mips-riscos${UNAME_RELEASE}
exit 0 ;;
Motorola:PowerMAX_OS:*:*)
echo powerpc-motorola-powermax
exit 0 ;;
Motorola:*:4.3:PL8-*)
echo powerpc-harris-powermax
exit 0 ;;
Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
echo powerpc-harris-powermax
exit 0 ;;
Night_Hawk:Power_UNIX:*:*)
echo powerpc-harris-powerunix
exit 0 ;;
......@@ -496,8 +516,7 @@ EOF
exit(0);
}
EOF
$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
rm -f $dummy.c $dummy
$CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
echo rs6000-ibm-aix3.2.5
elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
echo rs6000-ibm-aix3.2.4
......@@ -506,7 +525,7 @@ EOF
fi
exit 0 ;;
*:AIX:*:[45])
IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'`
IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
IBM_ARCH=rs6000
else
......@@ -546,10 +565,8 @@ EOF
9000/31? ) HP_ARCH=m68000 ;;
9000/[34]?? ) HP_ARCH=m68k ;;
9000/[678][0-9][0-9])
case "${HPUX_REV}" in
11.[0-9][0-9])
if [ -x /usr/bin/getconf ]; then
sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
if [ -x /usr/bin/getconf ]; then
sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
case "${sc_cpu_version}" in
523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
......@@ -558,13 +575,13 @@ EOF
case "${sc_kernel_bits}" in
32) HP_ARCH="hppa2.0n" ;;
64) HP_ARCH="hppa2.0w" ;;
'') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
esac ;;
esac
fi ;;
esac
if [ "${HP_ARCH}" = "" ]; then
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
fi
if [ "${HP_ARCH}" = "" ]; then
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
#define _HPUX_SOURCE
#include <stdlib.h>
......@@ -597,11 +614,21 @@ EOF
exit (0);
}
EOF
(CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy`
if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi
rm -f $dummy.c $dummy
fi ;;
(CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
test -z "$HP_ARCH" && HP_ARCH=hppa
fi ;;
esac
if [ ${HP_ARCH} = "hppa2.0w" ]
then
# avoid double evaluation of $set_cc_for_build
test -n "$CC_FOR_BUILD" || eval $set_cc_for_build
if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null
then
HP_ARCH="hppa2.0w"
else
HP_ARCH="hppa64"
fi
fi
echo ${HP_ARCH}-hp-hpux${HPUX_REV}
exit 0 ;;
ia64:HP-UX:*:*)
......@@ -635,8 +662,7 @@ EOF
exit (0);
}
EOF
$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
rm -f $dummy.c $dummy
$CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
echo unknown-hitachi-hiuxwe2
exit 0 ;;
9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
......@@ -664,9 +690,6 @@ EOF
parisc*:Lites*:*:*)
echo hppa1.1-hp-lites
exit 0 ;;
hppa*:OpenBSD:*:*)
echo hppa-unknown-openbsd
exit 0 ;;
C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
echo c1-convex-bsd
exit 0 ;;
......@@ -685,9 +708,6 @@ EOF
C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
echo c4-convex-bsd
exit 0 ;;
CRAY*X-MP:*:*:*)
echo xmp-cray-unicos
exit 0 ;;
CRAY*Y-MP:*:*:*)
echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;;
......@@ -700,27 +720,21 @@ EOF
CRAY*TS:*:*:*)
echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;;
CRAY*T3D:*:*:*)
echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;;
CRAY*T3E:*:*:*)
echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;;
CRAY*SV1:*:*:*)
echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;;
CRAY-2:*:*:*)
echo cray2-cray-unicos
exit 0 ;;
*:UNICOS/mp:*:*)
echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;;
F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
exit 0 ;;
hp300:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
exit 0 ;;
......@@ -730,11 +744,19 @@ EOF
*:BSD/OS:*:*)
echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
exit 0 ;;
*:FreeBSD:*:*)
echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
exit 0 ;;
*:OpenBSD:*:*)
echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
*:FreeBSD:*:*|*:GNU/FreeBSD:*:*)
# Determine whether the default compiler uses glibc.
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
#include <features.h>
#if __GLIBC__ >= 2
LIBC=gnu
#else
LIBC=
#endif
EOF
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC}
exit 0 ;;
i*:CYGWIN*:*)
echo ${UNAME_MACHINE}-pc-cygwin
......@@ -745,11 +767,17 @@ EOF
i*:PW*:*)
echo ${UNAME_MACHINE}-pc-pw32
exit 0 ;;
x86:Interix*:3*)
echo i586-pc-interix3
exit 0 ;;
[345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
echo i${UNAME_MACHINE}-pc-mks
exit 0 ;;
i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
# How do we know it's Interix rather than the generic POSIX subsystem?
# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
# UNAME_MACHINE based on the output of uname instead of i386?
echo i386-pc-interix
echo i586-pc-interix
exit 0 ;;
i*:UWIN*:*)
echo ${UNAME_MACHINE}-pc-uwin
......@@ -769,17 +797,52 @@ EOF
arm*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
exit 0 ;;
cris:Linux:*:*)
echo cris-axis-linux-gnu
exit 0 ;;
ia64:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux
echo ${UNAME_MACHINE}-unknown-linux-gnu
exit 0 ;;
m68*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
exit 0 ;;
mips:Linux:*:*)
case `sed -n '/^byte/s/^.*: \(.*\) endian/\1/p' < /proc/cpuinfo` in
big) echo mips-unknown-linux-gnu && exit 0 ;;
little) echo mipsel-unknown-linux-gnu && exit 0 ;;
esac
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
#undef CPU
#undef mips
#undef mipsel
#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
CPU=mipsel
#else
#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
CPU=mips
#else
CPU=
#endif
#endif
EOF
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
;;
mips64:Linux:*:*)
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
#undef CPU
#undef mips64
#undef mips64el
#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
CPU=mips64el
#else
#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
CPU=mips64
#else
CPU=
#endif
#endif
EOF
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
;;
ppc:Linux:*:*)
echo powerpc-unknown-linux-gnu
......@@ -828,7 +891,8 @@ EOF
# The BFD linker knows what the default object file format is, so
# first see if it will tell us. cd to the root directory to prevent
# problems with other programs or directories called `ld' in the path.
ld_supported_targets=`cd /; ld --help 2>&1 \
# Set LC_ALL=C to ensure ld outputs messages in English.
ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
| sed -ne '/supported targets:/!d
s/[ ][ ]*/ /g
s/.*supported targets: *//
......@@ -840,7 +904,7 @@ EOF
;;
a.out-i386-linux)
echo "${UNAME_MACHINE}-pc-linux-gnuaout"
exit 0 ;;
exit 0 ;;
coff-i386)
echo "${UNAME_MACHINE}-pc-linux-gnucoff"
exit 0 ;;
......@@ -852,32 +916,28 @@ EOF
esac
# Determine whether the default compiler is a.out or elf
eval $set_cc_for_build
cat >$dummy.c <<EOF
#include <features.h>
#ifdef __cplusplus
#include <stdio.h> /* for printf() prototype */
int main (int argc, char *argv[]) {
#else
int main (argc, argv) int argc; char *argv[]; {
#endif
#ifdef __ELF__
# ifdef __GLIBC__
# if __GLIBC__ >= 2
printf ("%s-pc-linux-gnu\n", argv[1]);
# else
printf ("%s-pc-linux-gnulibc1\n", argv[1]);
# endif
# else
printf ("%s-pc-linux-gnulibc1\n", argv[1]);
# endif
#else
printf ("%s-pc-linux-gnuaout\n", argv[1]);
#endif
return 0;
}
sed 's/^ //' << EOF >$dummy.c
#include <features.h>
#ifdef __ELF__
# ifdef __GLIBC__
# if __GLIBC__ >= 2
LIBC=gnu
# else
LIBC=gnulibc1
# endif
# else
LIBC=gnulibc1
# endif
#else
#ifdef __INTEL_COMPILER
LIBC=gnu
#else
LIBC=gnuaout
#endif
#endif
EOF
$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm -f $dummy.c $dummy && exit 0
rm -f $dummy.c $dummy
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0
test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
;;
i*86:DYNIX/ptx:4*:*)
......@@ -894,6 +954,23 @@ EOF
# Use sysv4.2uw... so that sysv4* matches it.
echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
exit 0 ;;
i*86:OS/2:*:*)
# If we were able to find `uname', then EMX Unix compatibility
# is probably installed.
echo ${UNAME_MACHINE}-pc-os2-emx
exit 0 ;;
i*86:XTS-300:*:STOP)
echo ${UNAME_MACHINE}-unknown-stop
exit 0 ;;
i*86:atheos:*:*)
echo ${UNAME_MACHINE}-unknown-atheos
exit 0 ;;
i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
echo i386-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
i*86:*DOS:*:*)
echo ${UNAME_MACHINE}-pc-msdosdjgpp
exit 0 ;;
i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
......@@ -915,22 +992,19 @@ EOF
UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
elif /bin/uname -X 2>/dev/null >/dev/null ; then
UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
(/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
(/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
&& UNAME_MACHINE=i586
(/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \
(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
&& UNAME_MACHINE=i686
(/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \
(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
&& UNAME_MACHINE=i686
echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
else
echo ${UNAME_MACHINE}-pc-sysv32
fi
exit 0 ;;
i*86:*DOS:*:*)
echo ${UNAME_MACHINE}-pc-msdosdjgpp
exit 0 ;;
pc:*:*:*)
# Left here for compatibility:
# uname -m prints for DJGPP always 'pc', but it prints nothing about
......@@ -954,9 +1028,15 @@ EOF
# "miniframe"
echo m68010-convergent-sysv
exit 0 ;;
mc68k:UNIX:SYSTEM5:3.51m)
echo m68k-convergent-sysv
exit 0 ;;
M680?0:D-NIX:5.3:*)
echo m68k-diab-dnix
exit 0 ;;
M68*:*:R3V[567]*:*)
test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0)
OS_REL=''
test -r /etc/.relid \
&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
......@@ -973,9 +1053,6 @@ EOF
mc68030:UNIX_System_V:4.*:*)
echo m68k-atari-sysv4
exit 0 ;;
i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
echo i386-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
TSUNAMI:LynxOS:2.*:*)
echo sparc-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
......@@ -1047,6 +1124,9 @@ EOF
SX-5:SUPER-UX:*:*)
echo sx5-nec-superux${UNAME_RELEASE}
exit 0 ;;
SX-6:SUPER-UX:*:*)
echo sx6-nec-superux${UNAME_RELEASE}
exit 0 ;;
Power*:Rhapsody:*:*)
echo powerpc-apple-rhapsody${UNAME_RELEASE}
exit 0 ;;
......@@ -1054,18 +1134,24 @@ EOF
echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
exit 0 ;;
*:Darwin:*:*)
echo `uname -p`-apple-darwin${UNAME_RELEASE}
case `uname -p` in
*86) UNAME_PROCESSOR=i686 ;;
powerpc) UNAME_PROCESSOR=powerpc ;;
esac
echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
exit 0 ;;
*:procnto*:*:* | *:QNX:[0123456789]*:*)
if test "${UNAME_MACHINE}" = "x86pc"; then
UNAME_PROCESSOR=`uname -p`
if test "$UNAME_PROCESSOR" = "x86"; then
UNAME_PROCESSOR=i386
UNAME_MACHINE=pc
fi
echo `uname -p`-${UNAME_MACHINE}-nto-qnx
echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
exit 0 ;;
*:QNX:*:4*)
echo i386-pc-qnx
exit 0 ;;
NSR-[KW]:NONSTOP_KERNEL:*:*)
NSR-[DGKLNPTVW]:NONSTOP_KERNEL:*:*)
echo nsr-tandem-nsk${UNAME_RELEASE}
exit 0 ;;
*:NonStop-UX:*:*)
......@@ -1088,11 +1174,6 @@ EOF
fi
echo ${UNAME_MACHINE}-unknown-plan9
exit 0 ;;
i*86:OS/2:*:*)
# If we were able to find `uname', then EMX Unix compatibility
# is probably installed.
echo ${UNAME_MACHINE}-pc-os2-emx
exit 0 ;;
*:TOPS-10:*:*)
echo pdp10-unknown-tops10
exit 0 ;;
......@@ -1111,12 +1192,6 @@ EOF
*:ITS:*:*)
echo pdp10-unknown-its
exit 0 ;;
i*86:XTS-300:*:STOP)
echo ${UNAME_MACHINE}-unknown-stop
exit 0 ;;
i*86:atheos:*:*)
echo ${UNAME_MACHINE}-unknown-atheos
exit 0 ;;
esac
#echo '(No uname command or uname output not recognized.)' 1>&2
......@@ -1237,8 +1312,7 @@ main ()
}
EOF
$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm -f $dummy.c $dummy && exit 0
rm -f $dummy.c $dummy
$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0
# Apollos put the system type in the environment.
......
#! /bin/sh
# Configuration validation subroutine script.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
# Free Software Foundation, Inc.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
timestamp='2001-09-07'
timestamp='2003-05-09'
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
......@@ -29,7 +29,8 @@ timestamp='2001-09-07'
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# Please send patches to <config-patches@gnu.org>.
# Please send patches to <config-patches@gnu.org>. Submit a context
# diff and a properly formatted ChangeLog entry.
#
# Configuration subroutine to validate and canonicalize a configuration type.
# Supply the specified configuration type as an argument.
......@@ -117,7 +118,7 @@ esac
# Here we must recognize all the valid KERNEL-OS combinations.
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in
nto-qnx* | linux-gnu* | storm-chaos* | os2-emx* | windows32-*)
nto-qnx* | linux-gnu* | freebsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
os=-$maybe_os
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
;;
......@@ -226,32 +227,44 @@ case $basic_machine in
1750a | 580 \
| a29k \
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
| c4x | clipper \
| d10v | d30v | dsp16xx \
| fr30 \
| clipper \
| d10v | d30v | dlx | dsp16xx \
| fr30 | frv \
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
| i370 | i860 | i960 | ia64 \
| ip2k \
| m32r | m68000 | m68k | m88k | mcore \
| mips16 | mips64 | mips64el | mips64orion | mips64orionel \
| mips64vr4100 | mips64vr4100el | mips64vr4300 \
| mips64vr4300el | mips64vr5000 | mips64vr5000el \
| mipsbe | mipseb | mipsel | mipsle | mipstx39 | mipstx39el \
| mipsisa32 \
| mips | mipsbe | mipseb | mipsel | mipsle \
| mips16 \
| mips64 | mips64el \
| mips64vr | mips64vrel \
| mips64orion | mips64orionel \
| mips64vr4100 | mips64vr4100el \
| mips64vr4300 | mips64vr4300el \
| mips64vr5000 | mips64vr5000el \
| mipsisa32 | mipsisa32el \
| mipsisa32r2 | mipsisa32r2el \
| mipsisa64 | mipsisa64el \
| mipsisa64sb1 | mipsisa64sb1el \
| mipsisa64sr71k | mipsisa64sr71kel \
| mipstx39 | mipstx39el \
| mn10200 | mn10300 \
| msp430 \
| ns16k | ns32k \
| openrisc \
| openrisc | or32 \
| pdp10 | pdp11 | pj | pjl \
| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
| pyramid \
| s390 | s390x \
| sh | sh[34] | sh[34]eb | shbe | shle \
| sparc | sparc64 | sparclet | sparclite | sparcv9 | sparcv9b \
| stormy16 | strongarm \
| sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
| sh64 | sh64le \
| sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \
| strongarm \
| tahoe | thumb | tic80 | tron \
| v850 \
| v850 | v850e \
| we32k \
| x86 | xscale \
| x86 | xscale | xstormy16 | xtensa \
| z8k)
basic_machine=$basic_machine-unknown
;;
......@@ -278,38 +291,55 @@ case $basic_machine in
580-* \
| a29k-* \
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
| alphapca5[67]-* | arc-* \
| arm-* | armbe-* | armle-* | armv*-* \
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
| arm-* | armbe-* | armle-* | armeb-* | armv*-* \
| avr-* \
| bs2000-* \
| c[123]* | c30-* | [cjt]90-* | c54x-* \
| clipper-* | cray2-* | cydra-* \
| d10v-* | d30v-* \
| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
| clipper-* | cydra-* \
| d10v-* | d30v-* | dlx-* \
| elxsi-* \
| f30[01]-* | f700-* | fr30-* | fx80-* \
| f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
| h8300-* | h8500-* \
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
| i*86-* | i860-* | i960-* | ia64-* \
| ip2k-* \
| m32r-* \
| m68000-* | m680[01234]0-* | m68360-* | m683?2-* | m68k-* \
| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
| m88110-* | m88k-* | mcore-* \
| mips-* | mips16-* | mips64-* | mips64el-* | mips64orion-* \
| mips64orionel-* | mips64vr4100-* | mips64vr4100el-* \
| mips64vr4300-* | mips64vr4300el-* | mipsbe-* | mipseb-* \
| mipsle-* | mipsel-* | mipstx39-* | mipstx39el-* \
| none-* | np1-* | ns16k-* | ns32k-* \
| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
| mips16-* \
| mips64-* | mips64el-* \
| mips64vr-* | mips64vrel-* \
| mips64orion-* | mips64orionel-* \
| mips64vr4100-* | mips64vr4100el-* \
| mips64vr4300-* | mips64vr4300el-* \
| mips64vr5000-* | mips64vr5000el-* \
| mipsisa32-* | mipsisa32el-* \
| mipsisa32r2-* | mipsisa32r2el-* \
| mipsisa64-* | mipsisa64el-* \
| mipsisa64sb1-* | mipsisa64sb1el-* \
| mipsisa64sr71k-* | mipsisa64sr71kel-* \
| mipstx39-* | mipstx39el-* \
| msp430-* \
| none-* | np1-* | nv1-* | ns16k-* | ns32k-* \
| orion-* \
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
| pyramid-* \
| romp-* | rs6000-* \
| s390-* | s390x-* \
| sh-* | sh[34]-* | sh[34]eb-* | shbe-* | shle-* \
| sparc-* | sparc64-* | sparc86x-* | sparclite-* \
| sparcv9-* | sparcv9b-* | stormy16-* | strongarm-* | sv1-* \
| t3e-* | tahoe-* | thumb-* | tic30-* | tic54x-* | tic80-* | tron-* \
| v850-* | vax-* \
| sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
| sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
| sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
| tahoe-* | thumb-* \
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
| tron-* \
| v850-* | v850e-* | vax-* \
| we32k-* \
| x86-* | x86_64-* | xmp-* | xps100-* | xscale-* \
| x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \
| xtensa-* \
| ymp-* \
| z8k-*)
;;
......@@ -343,6 +373,9 @@ case $basic_machine in
basic_machine=a29k-none
os=-bsd
;;
amd64)
basic_machine=x86_64-pc
;;
amdahl)
basic_machine=580-amdahl
os=-sysv
......@@ -374,6 +407,10 @@ case $basic_machine in
basic_machine=ns32k-sequent
os=-dynix
;;
c90)
basic_machine=c90-cray
os=-unicos
;;
convex-c1)
basic_machine=c1-convex
os=-bsd
......@@ -394,16 +431,8 @@ case $basic_machine in
basic_machine=c38-convex
os=-bsd
;;
cray | ymp)
basic_machine=ymp-cray
os=-unicos
;;
cray2)
basic_machine=cray2-cray
os=-unicos
;;
[cjt]90)
basic_machine=${basic_machine}-cray
cray | j90)
basic_machine=j90-cray
os=-unicos
;;
crds | unos)
......@@ -418,6 +447,14 @@ case $basic_machine in
decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
basic_machine=mips-dec
;;
decsystem10* | dec10*)
basic_machine=pdp10-dec
os=-tops10
;;
decsystem20* | dec20*)
basic_machine=pdp10-dec
os=-tops20
;;
delta | 3300 | motorola-3300 | motorola-delta \
| 3300-motorola | delta-motorola)
basic_machine=m68k-motorola
......@@ -598,14 +635,6 @@ case $basic_machine in
basic_machine=m68k-atari
os=-mint
;;
mipsel*-linux*)
basic_machine=mipsel-unknown
os=-linux-gnu
;;
mips*-linux*)
basic_machine=mips-unknown
os=-linux-gnu
;;
mips3*-*)
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
;;
......@@ -620,6 +649,10 @@ case $basic_machine in
basic_machine=m68k-rom68k
os=-coff
;;
morphos)
basic_machine=powerpc-unknown
os=-morphos
;;
msdos)
basic_machine=i386-pc
os=-msdos
......@@ -692,6 +725,10 @@ case $basic_machine in
np1)
basic_machine=np1-gould
;;
nv1)
basic_machine=nv1-cray
os=-unicosmp
;;
nsr-tandem)
basic_machine=nsr-tandem
;;
......@@ -699,6 +736,10 @@ case $basic_machine in
basic_machine=hppa1.1-oki
os=-proelf
;;
or32 | or32-*)
basic_machine=or32-unknown
os=-coff
;;
OSE68000 | ose68000)
basic_machine=m68000-ericsson
os=-ose
......@@ -721,19 +762,19 @@ case $basic_machine in
pbb)
basic_machine=m68k-tti
;;
pc532 | pc532-*)
pc532 | pc532-*)
basic_machine=ns32k-pc532
;;
pentium | p5 | k5 | k6 | nexgen)
pentium | p5 | k5 | k6 | nexgen | viac3)
basic_machine=i586-pc
;;
pentiumpro | p6 | 6x86 | athlon)
pentiumpro | p6 | 6x86 | athlon | athlon_*)
basic_machine=i686-pc
;;
pentiumii | pentium2)
basic_machine=i686-pc
;;
pentium-* | p5-* | k5-* | k6-* | nexgen-*)
pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
pentiumpro-* | p6-* | 6x86-* | athlon-*)
......@@ -748,22 +789,22 @@ case $basic_machine in
power) basic_machine=power-ibm
;;
ppc) basic_machine=powerpc-unknown
;;
;;
ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppcle | powerpclittle | ppc-le | powerpc-little)
basic_machine=powerpcle-unknown
;;
;;
ppcle-* | powerpclittle-*)
basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppc64) basic_machine=powerpc64-unknown
;;
;;
ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppc64le | powerpc64little | ppc64-le | powerpc64-little)
basic_machine=powerpc64le-unknown
;;
;;
ppc64le-* | powerpc64little-*)
basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
......@@ -784,10 +825,22 @@ case $basic_machine in
rtpc | rtpc-*)
basic_machine=romp-ibm
;;
s390 | s390-*)
basic_machine=s390-ibm
;;
s390x | s390x-*)
basic_machine=s390x-ibm
;;
sa29200)
basic_machine=a29k-amd
os=-udi
;;
sb1)
basic_machine=mipsisa64sb1-unknown
;;
sb1el)
basic_machine=mipsisa64sb1el-unknown
;;
sequent)
basic_machine=i386-sequent
;;
......@@ -795,7 +848,7 @@ case $basic_machine in
basic_machine=sh-hitachi
os=-hms
;;
sparclite-wrs)
sparclite-wrs | simso-wrs)
basic_machine=sparclite-wrs
os=-vxworks
;;
......@@ -862,19 +915,39 @@ case $basic_machine in
os=-dynix
;;
t3e)
basic_machine=t3e-cray
basic_machine=alphaev5-cray
os=-unicos
;;
t90)
basic_machine=t90-cray
os=-unicos
;;
tic4x | c4x*)
basic_machine=tic4x-unknown
os=-coff
;;
tic54x | c54x*)
basic_machine=tic54x-unknown
os=-coff
;;
tic55x | c55x*)
basic_machine=tic55x-unknown
os=-coff
;;
tic6x | c6x*)
basic_machine=tic6x-unknown
os=-coff
;;
tx39)
basic_machine=mipstx39-unknown
;;
tx39el)
basic_machine=mipstx39el-unknown
;;
toad1)
basic_machine=pdp10-xkl
os=-tops20
;;
tower | tower-32)
basic_machine=m68k-ncr
;;
......@@ -899,8 +972,8 @@ case $basic_machine in
os=-vms
;;
vpp*|vx|vx-*)
basic_machine=f301-fujitsu
;;
basic_machine=f301-fujitsu
;;
vxworks960)
basic_machine=i960-wrs
os=-vxworks
......@@ -921,17 +994,13 @@ case $basic_machine in
basic_machine=hppa1.1-winbond
os=-proelf
;;
windows32)
basic_machine=i386-pc
os=-windows32-msvcrt
xps | xps100)
basic_machine=xps100-honeywell
;;
xmp)
basic_machine=xmp-cray
ymp)
basic_machine=ymp-cray
os=-unicos
;;
xps | xps100)
basic_machine=xps100-honeywell
;;
z8k-*-coff)
basic_machine=z8k-unknown
os=-sim
......@@ -952,13 +1021,6 @@ case $basic_machine in
op60c)
basic_machine=hppa1.1-oki
;;
mips)
if [ x$os = x-linux-gnu ]; then
basic_machine=mips-unknown
else
basic_machine=mips-mips
fi
;;
romp)
basic_machine=romp-ibm
;;
......@@ -978,13 +1040,16 @@ case $basic_machine in
we32k)
basic_machine=we32k-att
;;
sh3 | sh4 | sh3eb | sh4eb)
sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele)
basic_machine=sh-unknown
;;
sh64)
basic_machine=sh64-unknown
;;
sparc | sparcv9 | sparcv9b)
basic_machine=sparc-sun
;;
cydra)
cydra)
basic_machine=cydra-cydrome
;;
orion)
......@@ -999,10 +1064,6 @@ case $basic_machine in
pmac | pmac-mpw)
basic_machine=powerpc-apple
;;
c4x*)
basic_machine=c4x-none
os=-coff
;;
*-unknown)
# Make sure to match an already-canonicalized machine name.
;;
......@@ -1065,10 +1126,12 @@ case $os in
| -chorusos* | -chorusrdb* \
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
| -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
| -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \
| -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
| -os2* | -vos*)
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
| -powermax* | -dnix*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
......@@ -1080,8 +1143,10 @@ case $os in
;;
esac
;;
-nto-qnx*)
;;
-nto*)
os=-nto-qnx
os=`echo $os | sed -e 's|nto|nto-qnx|'`
;;
-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
| -windows* | -osx | -abug | -netware* | -os9* | -beos* \
......@@ -1120,14 +1185,20 @@ case $os in
-acis*)
os=-aos
;;
-atheos*)
os=-atheos
;;
-386bsd)
os=-bsd
;;
-ctix* | -uts*)
os=-sysv
;;
-nova*)
os=-rtmk-nova
;;
-ns2 )
os=-nextstep2
os=-nextstep2
;;
-nsk*)
os=-nsk
......@@ -1166,8 +1237,14 @@ case $os in
-xenix)
os=-xenix
;;
-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
os=-mint
-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
os=-mint
;;
-aros*)
os=-aros
;;
-kaos*)
os=-kaos
;;
-none)
;;
......@@ -1200,10 +1277,11 @@ case $basic_machine in
arm*-semi)
os=-aout
;;
# This must come before the *-dec entry.
pdp10-*)
os=-tops20
;;
pdp11-*)
pdp11-*)
os=-none
;;
*-dec | vax-*)
......@@ -1230,6 +1308,9 @@ case $basic_machine in
mips*-*)
os=-elf
;;
or32-*)
os=-coff
;;
*-tti) # must be before sparc entry or we get the wrong os.
os=-sysv3
;;
......@@ -1293,19 +1374,19 @@ case $basic_machine in
*-next)
os=-nextstep3
;;
*-gould)
*-gould)
os=-sysv
;;
*-highlevel)
*-highlevel)
os=-bsd
;;
*-encore)
os=-bsd
;;
*-sgi)
*-sgi)
os=-irix
;;
*-siemens)
*-siemens)
os=-sysv4
;;
*-masscomp)
......@@ -1377,7 +1458,7 @@ case $basic_machine in
-ptx*)
vendor=sequent
;;
-vxsim* | -vxworks*)
-vxsim* | -vxworks* | -windiss*)
vendor=wrs
;;
-aux*)
......
This source diff could not be displayed because it is too large. You can view the blob instead.
AC_INIT(main.c)
AM_INIT_AUTOMAKE(mpd, 0.8.0)
AC_CONFIG_SUBDIRS(libid3tag libmad)
AM_INIT_AUTOMAKE(mpd, 0.8.1)
AC_PROG_CC
AC_PROG_INSTALL
......@@ -9,15 +8,63 @@ AC_PROG_LIBTOOL
dnl MAD wants this stuff
AC_SUBST(CCAS)
AC_SUBST(CCASFLAGS)
AC_SUBST(MAD_SUBDIR)
AC_SUBST(MAD_LIB)
AC_SUBST(ID3_SUBDIR)
AC_SUBST(ID3_LIB)
set -- $CFLAGS
CFLAGS="-Wall $CFLAGS"
AC_ARG_ENABLE(ogg,[ --disable-ogg disable ogg support],,enable_ogg=yes)
AC_ARG_ENABLE(flac,[ --disable-flac disable flac support],,enable_flac=yes)
AC_ARG_ENABLE(flac,[ --disable-flac disable flac support],,enable_flac=yes)
AC_ARG_ENABLE(mp3,[ --disable-mp3 disable mp3 support],,enable_mp3=yes)
AC_ARG_ENABLE(mpd_mad,[ --enable-mpd-mad use mpd libmad],use_mpd_mad=yes,)
AC_ARG_ENABLE(id3,[ --disable-id3 disable id3 support],,enable_id3=yes)
AC_ARG_ENABLE(mpd_id3tag,[ --enable-mpd-id3tag use mpd libid3tag],use_mpd_id3tag=yes,)
XIPH_PATH_AO(LIBS="$LIBS $AO_LIBS" CFLAGS="$CFLAGS $AO_CFLAGS",AC_MSG_ERROR(Must have libao installed!!!))
AC_CHECK_HEADER(sys/soundcard.h,CFLAGS="$CFLAGS",[CFLAGS="$CFLAGS -DNO_LINUX_OSS_MIXER";AC_MSG_WARN(Soundcard headers not found -- disabling mixer)])
AC_CHECK_HEADER(sys/soundcard.h,CFLAGS="$CFLAGS",[CFLAGS="$CFLAGS -DNO_OSS_MIXER";AC_MSG_WARN(Soundcard headers not found -- disabling mixer)])
ID3_SUBDIR=""
if test x$enable_id3 = xyes; then
if test x$use_mpd_id3tag = xyes; then
ID3_SUBDIR="libid3tag"
else
oldcflags=$CFLAGS
CFLAGS="$CFLAGS -lz"
AC_CHECK_LIB(id3tag,id3_file_open,[ID3_LIB="-lid3tag -lz";
use_libid3tag=yes],
[use_libid3tag=no;use_mpd_id3tag=yes])
CFLAGS=$oldcflags
fi
if test x$use_mpd_id3tag = xyes; then
CFLAGS="$CFLAGS -DUSE_MPD_ID3TAG"
ID3_LIB="libid3tag/libid3tag.la"
ID3_SUBDIR="libid3tag"
AC_CONFIG_SUBDIRS(libid3tag)
fi
CFLAGS="$CFLAGS -DHAVE_ID3TAG"
fi
MAD_SUBDIR=""
if test x$enable_mp3 = xyes; then
if test x$use_mpd_mad = xyes; then
MAD_SUBDIR="libmad"
else
AC_CHECK_LIB(mad,mad_stream_init,[MAD_LIB=-lmad;use_libmad=yes],
[use_libmad=no;use_mpd_mad=yes])
fi
if test x$use_mpd_mad = xyes; then
CFLAGS="$CFLAGS -DUSE_MPD_MAD"
MAD_LIB="libmad/libmad.la"
MAD_SUBDIR="libmad"
AC_CONFIG_SUBDIRS(libmad)
fi
CFLAGS="$CFLAGS -DHAVE_MAD"
fi
if test x$enable_ogg = xyes; then
XIPH_PATH_OGG(LIBS="$LIBS $OGG_LIBS" CFLAGS="$CFLAGS $OGG_CFLAGS" enable_vorbistest=no,enable_ogg=no)
......
......@@ -358,7 +358,7 @@ void writeDirectoryInfo(FILE * fp, Directory * directory) {
while(node!=NULL) {
subDirectory = (Directory *)node->data;
fprintf(fp,"%s%s\n",DIRECTORY_DIR,node->key);
fprintf(fp,"%s%li\n",DIRECTORY_MTIME,subDirectory->mtime);
fprintf(fp,"%s%li\n",DIRECTORY_MTIME,(long)subDirectory->mtime);
writeDirectoryInfo(fp,subDirectory);
node = node->nextNode;
}
......@@ -468,11 +468,13 @@ int updateMp3Directory(FILE * fp) {
return 0;
}
void printAllSongFilenamesInSubDirectory(FILE * fp, Directory * directory) {
void printAllInSubDirectory(FILE * fp, Directory * directory) {
ListNode * node = directory->songs->firstNode;
Song * song;
Directory * dir;
myfprintf(fp,"directory: %s\n",directory->name);
while(node!=NULL) {
song = (Song *)node->data;
myfprintf(fp,"file: %s\n",song->file);
......@@ -483,20 +485,25 @@ void printAllSongFilenamesInSubDirectory(FILE * fp, Directory * directory) {
while(node!=NULL) {
dir = (Directory *)node->data;
printAllSongFilenamesInSubDirectory(fp,dir);
printAllInSubDirectory(fp,dir);
node = node->nextNode;
}
}
int printAllSongFilenamesInDirectory(FILE * fp, char * name) {
int printAllIn(FILE * fp, char * name) {
Directory * directory;
if((directory = getDirectory(name))==NULL) {
myfprintf(fp,"%s: directory not found\n",COMMAND_RESPOND_ERROR);
Song * song;
if((song = getSong(name))) {
myfprintf(fp,"file: %s\n",song->file);
return 0;
}
myfprintf(fp,"%s: directory or file not found\n",COMMAND_RESPOND_ERROR);
return -1;
}
printAllSongFilenamesInSubDirectory(fp,directory);
printAllInSubDirectory(fp,directory);
return 0;
}
......
......@@ -40,7 +40,7 @@ size_t getDirectoryLine(char ** buffer, int * size, FILE * fp);
int updateMp3Directory(FILE * fp);
int printAllSongFilenamesInDirectory(FILE * fp, char * dirname);
int printAllIn(FILE * fp, char * name);
Song * getSong(char * file);
......
......@@ -63,6 +63,8 @@ int flac_decode_pid = 0;
int flac_decode_done = 0;
ao_device * flac_device = NULL;
/* this code is based on flac123, from flac-tools */
void flacPlayfile(const char * file, Buffer * cb, ao_sample_format * format);
void flacError(const FLAC__FileDecoder *, FLAC__StreamDecoderErrorStatus, void *);
void flacMetadata(const FLAC__FileDecoder *, const FLAC__StreamMetadata *, void *);
......@@ -202,25 +204,24 @@ int flac_decode(char * file, FILE * in, FILE * out) {
sa.sa_flags = 0;
sigemptyset(&sa.sa_mask);
sa.sa_handler = SIG_IGN;
sigaction(SIGPIPE,&sa,NULL);
sa.sa_handler = flac_decode_parentSigHandler;
sigaction(SIGCHLD,&sa,NULL);
sigaction(SIGTERM,&sa,NULL);
cb = getBuffer();
cb->begin = 0;
cb->end = 0;
cb->wrap = 0;
cb->finished = 0;
if(flac_getAoDataAndTime(file,&format,&total_time)<0) {
fprintf(stderr,"%s \"%s\" doesn't seem to be a flac\n",COMMAND_RESPOND_ERROR,file);
return PLAYER_EXIT_ERROR_FILE;
}
sa.sa_handler = SIG_IGN;
sigaction(SIGPIPE,&sa,NULL);
sa.sa_handler = flac_decode_parentSigHandler;
sigaction(SIGCHLD,&sa,NULL);
sa.sa_handler = flac_decode_parentSigHandler;
sigaction(SIGTERM,&sa,NULL);
fflush(NULL);
flac_decode_pid = fork();
......@@ -232,13 +233,7 @@ int flac_decode(char * file, FILE * in, FILE * out) {
flacPlayFile(file,cb,&format);
while(cb->begin==cb->end && cb->wrap) usleep(100);
cb->times[cb->end] = -1;
cb->end++;
if(cb->end>=BUFFERED_CHUNKS) {
cb->end = 0;
cb->wrap = 1;
}
cb->finished = 1;
exit(0);
......@@ -281,19 +276,34 @@ int flac_decode(char * file, FILE * in, FILE * out) {
fprintf(out,"%s %f %f\n",PLAYER_TIME,last_tell,total_time);
fflush(out);
while(flac_decode_pid>0 && !cb->wrap && cb->end-cb->begin<buffered_before_play) {
while(flac_decode_pid>0 && !cb->wrap && cb->end-cb->begin<buffered_before_play && !cb->finished) {
usleep(1000);
}
while(!quit) {
if((cb->begin!=cb->end || cb->wrap) && !pause) {
if(pause || checkInput%CHECK_INPUT_FREQ==0) {
FD_ZERO(&fds);
FD_SET(fileno(in),&fds);
fflush(in);
if(select(fileno(in)+1,&fds,NULL,NULL,&tv)) {
myFgets(input,INPUT_BUFFER_SIZE,in);
if(strcasecmp(PLAYER_PAUSE,input)==0) {
fprintf(out,"%s\n",PLAYER_PAUSE_GOT);
fflush(out);
pause = !pause;
}
}
checkInput = 1;
}
checkInput++;
if(pause) usleep(100);
else if(cb->begin!=cb->end || cb->wrap) {
if(currentPlayChunk==0) elapsed = cb->times[cb->begin];
ao_play(flac_device,cb->chunks[cb->begin]+currentPlayChunk*PLAY_SIZE,PLAY_SIZE);
currentPlayChunk++;
if(currentPlayChunk>=playsPerChunk) {
currentPlayChunk=0;
cb->begin++;
if(cb->times[cb->begin]<0) quit = 1;
if(cb->begin>=BUFFERED_CHUNKS) {
cb->begin = 0;
cb->wrap = 0;
......@@ -305,25 +315,10 @@ int flac_decode(char * file, FILE * in, FILE * out) {
fflush(out);
}
}
else if(flac_decode_pid<=0 && (cb->begin==cb->end && !cb->wrap)) {
else if(flac_decode_pid<=0 || cb->finished) {
quit = 1;
}
else usleep(200);
if(pause || checkInput%CHECK_INPUT_FREQ==0) {
FD_ZERO(&fds);
FD_SET(fileno(in),&fds);
fflush(in);
if(select(fileno(in)+1,&fds,NULL,NULL,&tv)) {
myFgets(input,INPUT_BUFFER_SIZE,in);
if(strcasecmp(PLAYER_PAUSE,input)==0) {
fprintf(out,"%s\n",PLAYER_PAUSE_GOT);
fflush(out);
pause = !pause;
}
}
checkInput = 1;
}
checkInput++;
}
pid = flac_decode_pid;
......
#!/bin/sh
#
# install - install a program, script, or datafile
# This comes from X11R5 (mit/util/scripts/install.sh).
#
# Copyright 1991 by the Massachusetts Institute of Technology
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
# following copyright and license.
#
# Permission to use, copy, modify, distribute, and sell this software and its
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
# documentation, and that the name of M.I.T. not be used in advertising or
# publicity pertaining to distribution of the software without specific,
# written prior permission. M.I.T. makes no representations about the
# suitability of this software for any purpose. It is provided "as is"
# without express or implied warranty.
# Copyright (C) 1994 X Consortium
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to
# deal in the Software without restriction, including without limitation the
# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
# sell copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#
# Except as contained in this notice, the name of the X Consortium shall not
# be used in advertising or otherwise to promote the sale, use or other deal-
# ings in this Software without prior written authorization from the X Consor-
# tium.
#
#
# FSF changes to this file are in the public domain.
#
# Calling this script install-sh is preferred over install.sh, to prevent
# `make' implicit rules from creating a file called install from it
......
......@@ -64,7 +64,7 @@ void openInterface(Interface * interface, int fd) {
interface->bufferLength = 0;
interface->fd = fd;
fcntl(interface->fd,F_SETFL,O_NONBLOCK);
interface->fp = fdopen(fd,"w");
interface->fp = fdopen(fd,"rw");
interface->open = 1;
interface->lastTime = time(NULL);
interface->commandList = NULL;
......@@ -78,7 +78,7 @@ void closeInterface(Interface * interface) {
interface->open = 0;
if(fclose(interface->fp)) {
if(close(interface->fd)) {
fprintf(stderr,"Error closing file pointer\n");
}
......@@ -92,7 +92,7 @@ void openAInterface(int fd) {
for(i=0;i<interface_max_connections && interfaces[i].open;i++);
if(i==interface_max_connections) {
FILE * fp = fdopen(fd,"w");
FILE * fp = fdopen(fd,"rw");
myfprintf(fp,"%s Max Connections Reached!\n",COMMAND_RESPOND_ERROR);
fclose(fp);
close(fd);
......@@ -172,9 +172,7 @@ int interfaceReadInput(Interface * interface) {
}
return ret;
}
else {
closeInterface(interface);
}
else closeInterface(interface);
return 1;
}
......@@ -191,17 +189,42 @@ void addInterfacesToFdSet(fd_set * fds) {
}
}
void closeNextErroredInterface() {
fd_set fds;
struct timeval tv;
int i;
tv.tv_sec = 0;
tv.tv_usec = 1000;
for(i=0;i<interface_max_connections;i++) {
if(interfaces[i].open) {
FD_ZERO(&fds);
FD_SET(interfaces[i].fd,&fds);
if(select(FD_SETSIZE,&fds,NULL,NULL,&tv)<0) {
closeInterface(&interfaces[i]);
return;
}
}
}
}
int readInputFromInterfaces() {
fd_set fds;
struct timeval tv;
int i;
int selret;
tv.tv_sec = 0;
tv.tv_usec = 1000;
addInterfacesToFdSet(&fds);
while(select(FD_SETSIZE,&fds,NULL,NULL,&tv)) {
while((selret = select(FD_SETSIZE,&fds,NULL,NULL,&tv))) {
if(selret<0) {
closeNextErroredInterface();
continue;
}
for(i=0;i<interface_max_connections;i++) {
if(interfaces[i].open && FD_ISSET(interfaces[i].fd,&fds)) {
if(COMMAND_RETURN_KILL==interfaceReadInput(&(interfaces[i]))) {
......@@ -242,6 +265,8 @@ void initInterfaces() {
void closeAllInterfaces() {
int i;
fflush(NULL);
for(i=0;i<interface_max_connections;i++) {
if(interfaces[i].open) {
closeInterface(&(interfaces[i]));
......
......@@ -2,7 +2,7 @@
libid3tag - ID3 tag manipulation library
Copyright (C) 2000-2003 Underbit Technologies, Inc.
$Id: CHANGES,v 1.2 2003/07/05 05:18:51 shank Exp $
$Id: CHANGES,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
===============================================================================
......
......@@ -2,7 +2,7 @@
libid3tag - ID3 tag manipulation library
Copyright (C) 2000-2003 Underbit Technologies, Inc.
$Id: CREDITS,v 1.2 2003/07/05 05:18:51 shank Exp $
$Id: CREDITS,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
===============================================================================
......
......@@ -16,7 +16,7 @@
## along with this program; if not, write to the Free Software
## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##
## $Id: Makefile.am,v 1.3 2003/07/05 06:12:40 shank Exp $
## $Id: Makefile.am,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
##
## Process this file with automake to produce Makefile.in
......
......@@ -2,7 +2,7 @@
libid3tag - ID3 tag manipulation library
Copyright (C) 2000-2003 Underbit Technologies, Inc.
$Id: README,v 1.2 2003/07/05 05:18:51 shank Exp $
$Id: README,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
===============================================================================
......
......@@ -2,7 +2,7 @@
libid3tag - ID3 tag manipulation library
Copyright (C) 2000-2003 Underbit Technologies, Inc.
$Id: TODO,v 1.2 2003/07/05 05:18:51 shank Exp $
$Id: TODO,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
===============================================================================
......
......@@ -863,6 +863,8 @@ AC_REQUIRE([AC_PROG_CC])dnl
AC_REQUIRE([AC_PROG_LD])dnl
AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl
AC_REQUIRE([AC_PROG_NM])dnl
AC_REQUIRE([LT_AC_PROG_SED])dnl
AC_REQUIRE([AC_PROG_LN_S])dnl
AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
AC_REQUIRE([AC_OBJEXT])dnl
......@@ -1030,9 +1032,12 @@ hpux*) # Its linker distinguishes data from code symbols
lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
;;
irix*)
irix* | nonstopux*)
symcode='[[BCDEGRST]]'
;;
osf*)
symcode='[[BCDEGQRST]]'
;;
solaris* | sysv5*)
symcode='[[BDT]]'
;;
......@@ -1129,7 +1134,7 @@ EOF
save_CFLAGS="$CFLAGS"
LIBS="conftstm.$ac_objext"
CFLAGS="$CFLAGS$no_builtin_flag"
if AC_TRY_EVAL(ac_link) && test -s conftest; then
if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
pipe_works=yes
fi
LIBS="$save_LIBS"
......@@ -1673,7 +1678,7 @@ AC_CACHE_VAL(lt_cv_prog_cc_pic,
# like `-m68040'.
lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4'
;;
beos* | irix5* | irix6* | osf3* | osf4* | osf5*)
beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
# PIC is the default for these OSes.
;;
darwin* | rhapsody*)
......@@ -1716,7 +1721,7 @@ AC_CACHE_VAL(lt_cv_prog_cc_pic,
lt_cv_prog_cc_pic='+Z'
;;
irix5* | irix6*)
irix5* | irix6* | nonstopux*)
lt_cv_prog_cc_wl='-Wl,'
lt_cv_prog_cc_static='-non_shared'
# PIC (with -KPIC) is the default.
......@@ -1760,11 +1765,7 @@ AC_CACHE_VAL(lt_cv_prog_cc_pic,
sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
lt_cv_prog_cc_pic='-KPIC'
lt_cv_prog_cc_static='-Bstatic'
if test "x$host_vendor" = xsni; then
lt_cv_prog_cc_wl='-LD'
else
lt_cv_prog_cc_wl='-Wl,'
fi
lt_cv_prog_cc_wl='-Wl,'
;;
uts4*)
......@@ -2129,7 +2130,7 @@ EOF
# If the export-symbols file already is a .def file (1st line
# is EXPORTS), use it as is.
# If DATA tags from a recent dlltool are present, honour them!
archive_expsym_cmds='if test "x`head -1 $export_symbols`" = xEXPORTS; then
archive_expsym_cmds='if test "x`sed 1q $export_symbols`" = xEXPORTS; then
cp $export_symbols $output_objdir/$soname-def;
else
echo EXPORTS > $output_objdir/$soname-def;
......@@ -2138,6 +2139,7 @@ EOF
set dummy \$symbol;
case \[$]# in
2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;;
4) echo " \[$]2 \[$]3 \[$]4 ; " >> $output_objdir/$soname-def; _lt_hint=`expr \$_lt_hint - 1`;;
*) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;;
esac;
_lt_hint=`expr 1 + \$_lt_hint`;
......@@ -2250,10 +2252,12 @@ else
# need to do runtime linking.
case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
for ld_flag in $LDFLAGS; do
if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
case $ld_flag in
*-brtl*)
aix_use_runtimelinking=yes
break
fi
;;
esac
done
esac
......@@ -2325,7 +2329,7 @@ else
allow_undefined_flag='${wl}-berok'
# This is a bit strange, but is similar to how AIX traditionally builds
# it's shared libraries.
archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $objdir/$libname$release.a $objdir/$soname'
archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
;;
......@@ -2367,8 +2371,9 @@ else
esac
# FIXME: Relying on posixy $() will cause problems for
# cross-compilation, but unfortunately the echo tests do not
# yet detect zsh echo's removal of \ escapes.
archive_cmds='$nonopt $(test "x$module" = xyes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib $libobjs $deplibs$linker_flags -install_name $rpath/$soname $verstring'
# yet detect zsh echo's removal of \ escapes. Also zsh mangles
# `"' quotes if we put them in here... so don't!
archive_cmds='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs && $CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib ${lib}-master.o $deplibs$linker_flags $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)'
# We need to add '_' to the symbols in $export_symbols first
#archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols'
hardcode_direct=yes
......@@ -2420,13 +2425,14 @@ else
export_dynamic_flag_spec='${wl}-E'
;;
irix5* | irix6*)
irix5* | irix6* | nonstopux*)
if test "$GCC" = yes; then
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
else
archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
hardcode_libdir_flag_spec='-rpath $libdir'
fi
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
hardcode_libdir_separator=:
link_all_deplibs=yes
;;
......@@ -2454,7 +2460,7 @@ else
hardcode_direct=yes
hardcode_shlibpath_var=no
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
export_dynamic_flag_spec='${wl}-E'
else
......@@ -2464,7 +2470,7 @@ else
hardcode_libdir_flag_spec='-R$libdir'
;;
*)
archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
;;
esac
......@@ -2576,13 +2582,23 @@ EOF
;;
sysv4)
if test "x$host_vendor" = xsno; then
archive_cmds='$LD -G -Bsymbolic -h $soname -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct=yes # is this really true???
else
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct=no #Motorola manual says yes, but my tests say they lie
fi
case $host_vendor in
sni)
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct=yes # is this really true???
;;
siemens)
## LD is ld it makes a PLAMLIB
## CC just makes a GrossModule.
archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
reload_cmds='$CC -r -o $output$reload_objs'
hardcode_direct=no
;;
motorola)
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct=no #Motorola manual says yes, but my tests say they lie
;;
esac
runpath_var='LD_RUN_PATH'
hardcode_shlibpath_var=no
;;
......@@ -2723,6 +2739,9 @@ aix3*)
aix4* | aix5*)
version_type=linux
need_lib_prefix=no
need_version=no
hardcode_into_libs=yes
if test "$host_cpu" = ia64; then
# AIX 5 supports IA64
library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so'
......@@ -2761,6 +2780,7 @@ aix4* | aix5*)
fi
shlibpath_var=LIBPATH
fi
hardcode_into_libs=yes
;;
amigaos*)
......@@ -2808,7 +2828,7 @@ cygwin* | mingw* | pw32*)
;;
yes,mingw*)
library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g"`
sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g" -e "s,=/,/,g"`
;;
yes,pw32*)
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
......@@ -2840,6 +2860,18 @@ freebsd1*)
dynamic_linker=no
;;
freebsd*-gnu*)
version_type=linux
need_lib_prefix=no
need_version=no
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
soname_spec='${libname}${release}.so$major'
shlibpath_var=LD_LIBRARY_PATH
shlibpath_overrides_runpath=no
hardcode_into_libs=yes
dynamic_linker='GNU/FreeBSD ld.so'
;;
freebsd*)
objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
version_type=freebsd-$objformat
......@@ -2891,14 +2923,17 @@ hpux9* | hpux10* | hpux11*)
postinstall_cmds='chmod 555 $lib'
;;
irix5* | irix6*)
version_type=irix
irix5* | irix6* | nonstopux*)
case $host_os in
nonstopux*) version_type=nonstopux ;;
*) version_type=irix ;;
esac
need_lib_prefix=no
need_version=no
soname_spec='${libname}${release}.so$major'
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so'
case $host_os in
irix5*)
irix5* | nonstopux*)
libsuff= shlibsuff=
;;
*)
......@@ -3002,11 +3037,13 @@ os2*)
osf3* | osf4* | osf5*)
version_type=osf
need_version=no
soname_spec='${libname}${release}.so'
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
need_lib_prefix=no
soname_spec='${libname}${release}.so$major'
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
shlibpath_var=LD_LIBRARY_PATH
sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
hardcode_into_libs=yes
;;
sco3.2v5*)
......@@ -3049,6 +3086,12 @@ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
case $host_vendor in
sni)
shlibpath_overrides_runpath=no
need_lib_prefix=no
export_dynamic_flag_spec='${wl}-Blargedynsym'
runpath_var=LD_RUN_PATH
;;
siemens)
need_lib_prefix=no
;;
motorola)
need_lib_prefix=no
......@@ -3203,7 +3246,7 @@ if test -f "$ltmain"; then
# Now quote all the things that may contain metacharacters while being
# careful not to overquote the AC_SUBSTed values. We take copies of the
# variables and quote the copies for generation of the libtool script.
for var in echo old_CC old_CFLAGS \
for var in echo old_CC old_CFLAGS SED \
AR AR_FLAGS CC LD LN_S NM SHELL \
reload_flag reload_cmds wl \
pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
......@@ -3265,8 +3308,11 @@ if test -f "$ltmain"; then
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# A sed that does not truncate output.
SED=$lt_SED
# Sed that helps us avoid accidentally triggering echo(1) options like -n.
Xsed="sed -e s/^X//"
Xsed="${SED} -e s/^X//"
# The HP-UX ksh and POSIX shell print the target directory to stdout
# if CDPATH is set.
......@@ -4027,7 +4073,7 @@ test -n "$reload_flag" && reload_flag=" $reload_flag"
# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies
# -- PORTME fill in with the dynamic library characteristics
AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
[AC_CACHE_CHECK([how to recognise dependant libraries],
[AC_CACHE_CHECK([how to recognise dependent libraries],
lt_cv_deplibs_check_method,
[lt_cv_file_magic_cmd='$MAGIC_CMD'
lt_cv_file_magic_test_file=
......@@ -4102,9 +4148,9 @@ hpux10.20*|hpux11*)
lt_cv_file_magic_test_file=/usr/lib/libc.sl
;;
irix5* | irix6*)
irix5* | irix6* | nonstopux*)
case $host_os in
irix5*)
irix5* | nonstopux*)
# this will be overridden with pass_all, but let us keep it just in case
lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
;;
......@@ -4126,7 +4172,7 @@ irix5* | irix6*)
# This must be Linux ELF.
linux-gnu*)
case $host_cpu in
alpha* | hppa* | i*86 | powerpc* | sparc* | ia64* | s390* )
alpha* | hppa* | i*86 | mips | mipsel | powerpc* | sparc* | ia64* | arm* | m68k)
lt_cv_deplibs_check_method=pass_all ;;
*)
# glibc up to 2.1.1 does not perform some relocations on ARM
......@@ -4197,6 +4243,9 @@ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
lt_cv_file_magic_test_file=/lib/libc.so
;;
siemens)
lt_cv_deplibs_check_method=pass_all
;;
esac
;;
esac
......@@ -4262,12 +4311,12 @@ esac
])
# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
# the libltdl convenience library and INCLTDL to the include flags for
# the libltdl convenience library and LTDLINCL to the include flags for
# the libltdl header and adds --enable-ltdl-convenience to the
# configure arguments. Note that LIBLTDL and INCLTDL are not
# configure arguments. Note that LIBLTDL and LTDLINCL are not
# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not
# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed
# with '${top_builddir}/' and INCLTDL will be prefixed with
# with '${top_builddir}/' and LTDLINCL will be prefixed with
# '${top_srcdir}/' (note the single quotes!). If your package is not
# flat and you're not using automake, define top_builddir and
# top_srcdir appropriately in the Makefiles.
......@@ -4279,16 +4328,18 @@ AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
esac
LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
# For backwards non-gettext consistent compatibility...
INCLTDL="$LTDLINCL"
])
# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
# the libltdl installable library and INCLTDL to the include flags for
# the libltdl installable library and LTDLINCL to the include flags for
# the libltdl header and adds --enable-ltdl-install to the configure
# arguments. Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is
# arguments. Note that LIBLTDL and LTDLINCL are not AC_SUBSTed, nor is
# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed
# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will
# be prefixed with '${top_builddir}/' and INCLTDL will be prefixed
# be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed
# with '${top_srcdir}/' (note the single quotes!). If your package is
# not flat and you're not using automake, define top_builddir and
# top_srcdir appropriately in the Makefiles.
......@@ -4306,12 +4357,14 @@ AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
if test x"$enable_ltdl_install" = x"yes"; then
ac_configure_args="$ac_configure_args --enable-ltdl-install"
LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
else
ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
LIBLTDL="-lltdl"
INCLTDL=
LTDLINCL=
fi
# For backwards non-gettext consistent compatibility...
INCLTDL="$LTDLINCL"
])
# old names
......@@ -4326,3 +4379,92 @@ AC_DEFUN([AM_PROG_NM], [AC_PROG_NM])
# This is just to silence aclocal about the macro not being used
ifelse([AC_DISABLE_FAST_INSTALL])
# NOTE: This macro has been submitted for inclusion into #
# GNU Autoconf as AC_PROG_SED. When it is available in #
# a released version of Autoconf we should remove this #
# macro and use it instead. #
# LT_AC_PROG_SED
# --------------
# Check for a fully-functional sed program, that truncates
# as few characters as possible. Prefer GNU sed if found.
AC_DEFUN([LT_AC_PROG_SED],
[AC_MSG_CHECKING([for a sed that does not truncate output])
AC_CACHE_VAL(lt_cv_path_SED,
[# Loop through the user's path and test for sed and gsed.
# Then use that list of sed's as ones to test for truncation.
as_executable_p="test -f"
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_prog in sed gsed; do
for ac_exec_ext in '' $ac_executable_extensions; do
if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
_sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext"
fi
done
done
done
# Create a temporary directory, and hook for its removal unless debugging.
$debug ||
{
trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
trap '{ (exit 1); exit 1; }' 1 2 13 15
}
# Create a (secure) tmp directory for tmp files.
: ${TMPDIR=/tmp}
{
tmp=`(umask 077 && mktemp -d -q "$TMPDIR/sedXXXXXX") 2>/dev/null` &&
test -n "$tmp" && test -d "$tmp"
} ||
{
tmp=$TMPDIR/sed$$-$RANDOM
(umask 077 && mkdir $tmp)
} ||
{
echo "$me: cannot create a temporary directory in $TMPDIR" >&2
{ (exit 1); exit 1; }
}
_max=0
_count=0
# Add /usr/xpg4/bin/sed as it is typically found on Solaris
# along with /bin/sed that truncates output.
for _sed in $_sed_list /usr/xpg4/bin/sed; do
test ! -f ${_sed} && break
cat /dev/null > "$tmp/sed.in"
_count=0
echo ${ECHO_N-$ac_n} "0123456789${ECHO_C-$ac_c}" >"$tmp/sed.in"
# Check for GNU sed and select it if it is found.
if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then
lt_cv_path_SED=${_sed}
break
fi
while true; do
cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp"
mv "$tmp/sed.tmp" "$tmp/sed.in"
cp "$tmp/sed.in" "$tmp/sed.nl"
echo >>"$tmp/sed.nl"
${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break
cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break
# 40000 chars as input seems more than enough
test $_count -gt 10 && break
_count=`expr $_count + 1`
if test $_count -gt $_max; then
_max=$_count
lt_cv_path_SED=$_sed
fi
done
done
rm -rf "$tmp"
])
if test "X$SED" != "X"; then
lt_cv_path_SED=$SED
else
SED=$lt_cv_path_SED
fi
AC_MSG_RESULT([$SED])
])
/* C code produced by gperf version 2.7.2 */
/* C code produced by gperf version 3.0 */
/* Command-line: gperf -tCcTonD -K id -N id3_compat_lookup -s -3 -k '*' compat.gperf */
#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
&& ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
&& (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
&& ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
&& ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
&& ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
&& ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
&& ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
&& ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
&& ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
&& ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
&& ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
&& ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
&& ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
&& ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
&& ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
&& ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
&& ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
&& ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
&& ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
&& ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
&& ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
&& ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
/* The character set is not based on ISO-646. */
error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
#endif
#line 1 "compat.gperf"
/*
* libid3tag - ID3 tag manipulation library
* Copyright (C) 2000-2003 Underbit Technologies, Inc.
......@@ -18,7 +48,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* Id: compat.gperf,v 1.2 2003/07/05 05:18:51 shank Exp
* Id: compat.gperf,v 1.1.1.1 2003/07/15 15:51:33 shank Exp
*/
# ifdef HAVE_CONFIG_H
......@@ -50,9 +80,9 @@ static id3_compat_func_t translate_TCON;
#define TOTAL_KEYWORDS 73
#define MIN_WORD_LENGTH 3
#define MAX_WORD_LENGTH 4
#define MIN_HASH_VALUE 1
#define MAX_HASH_VALUE 84
/* maximum key range = 84, duplicates = 10 */
#define MIN_HASH_VALUE 6
#define MAX_HASH_VALUE 127
/* maximum key range = 122, duplicates = 0 */
#ifdef __GNUC__
__inline
......@@ -68,44 +98,46 @@ hash (str, len)
{
static const unsigned char asso_values[] =
{
85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 85, 85, 85, 85, 22,
21, 27, 26, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 9, 3, 0, 27, 16,
6, 30, 85, 15, 85, 22, 2, 15, 4, 1,
0, 30, 13, 17, 22, 0, 24, 5, 31, 25,
15, 85, 85, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 85, 85, 85, 85, 85,
85, 85, 85, 85, 85, 85
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128, 128, 64,
58, 20, 15, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 10, 18, 3, 6, 1,
47, 0, 128, 42, 62, 30, 31, 0, 19, 52,
10, 24, 8, 30, 5, 3, 30, 8, 25, 47,
3, 128, 128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128
};
register int hval = 0;
switch (len)
{
default:
case 4:
hval += asso_values[(unsigned char)str[3]];
/*FALLTHROUGH*/
case 3:
hval += asso_values[(unsigned char)str[2]];
/*FALLTHROUGH*/
case 2:
hval += asso_values[(unsigned char)str[1]];
hval += asso_values[(unsigned char)str[1]+1];
/*FALLTHROUGH*/
case 1:
hval += asso_values[(unsigned char)str[0]];
break;
......@@ -123,95 +155,166 @@ id3_compat_lookup (str, len)
{
static const struct id3_compat wordlist[] =
{
{"POP", EQ(POPM) /* Popularimeter */},
{"WCP", EQ(WCOP) /* Copyright/legal information */},
{"WPB", EQ(WPUB) /* Publishers official webpage */},
{"BUF", EQ(RBUF) /* Recommended buffer size */},
{"PIC", EQ(APIC) /* Attached picture */},
#line 97 "compat.gperf"
{"TLE", EQ(TLEN) /* Length */},
#line 68 "compat.gperf"
{"ETC", EQ(ETCO) /* Event timing codes */},
#line 126 "compat.gperf"
{"ULT", EQ(USLT) /* Unsynchronised lyric/text transcription */},
#line 123 "compat.gperf"
{"TYE", OBSOLETE /* Year [obsolete] */},
#line 92 "compat.gperf"
{"TFT", EQ(TFLT) /* File type */},
#line 84 "compat.gperf"
{"TCM", EQ(TCOM) /* Composer */},
#line 66 "compat.gperf"
{"EQU", OBSOLETE /* Equalization [obsolete] */},
#line 63 "compat.gperf"
{"COM", EQ(COMM) /* Comments */},
{"IPL", EQ(TIPL) /* Involved people list */},
{"MLL", EQ(MLLT) /* MPEG location lookup table */},
{"WAF", EQ(WOAF) /* Official audio file webpage */},
#line 130 "compat.gperf"
{"WCM", EQ(WCOM) /* Commercial information */},
{"UFI", EQ(UFID) /* Unique file identifier */},
{"CRA", EQ(AENC) /* Audio encryption */},
{"TCO", TX(TCON) /* Content type */},
{"ULT", EQ(USLT) /* Unsynchronised lyric/text transcription */},
{"TOL", EQ(TOLY) /* Original lyricist(s)/text writer(s) */},
{"TBP", EQ(TBPM) /* BPM (beats per minute) */},
{"TPB", EQ(TPUB) /* Publisher */},
{"CNT", EQ(PCNT) /* Play counter */},
{"TCON", TX(TCON) /* Content type */},
{"WAR", EQ(WOAR) /* Official artist/performer webpage */},
{"LNK", EQ(LINK) /* Linked information */},
{"CRM", OBSOLETE /* Encrypted meta frame [obsolete] */},
{"TOF", EQ(TOFN) /* Original filename */},
{"MCI", EQ(MCDI) /* Music CD identifier */},
{"TPA", EQ(TPOS) /* Part of a set */},
{"WAS", EQ(WOAS) /* Official audio source webpage */},
{"TOA", EQ(TOPE) /* Original artist(s)/performer(s) */},
{"TAL", EQ(TALB) /* Album/movie/show title */},
#line 96 "compat.gperf"
{"TLA", EQ(TLAN) /* Language(s) */},
{"IPLS", EQ(TIPL) /* Involved people list */},
#line 88 "compat.gperf"
{"TDA", OBSOLETE /* Date [obsolete] */},
#line 124 "compat.gperf"
{"TYER", OBSOLETE /* Year [obsolete] */},
#line 83 "compat.gperf"
{"TBP", EQ(TBPM) /* BPM (beats per minute) */},
#line 87 "compat.gperf"
{"TCR", EQ(TCOP) /* Copyright message */},
{"TRC", EQ(TSRC) /* ISRC (international standard recording code) */},
{"TOR", EQ(TDOR) /* Original release year [obsolete] */},
{"TCM", EQ(TCOM) /* Composer */},
{"ETC", EQ(ETCO) /* Event timing codes */},
{"STC", EQ(SYTC) /* Synchronised tempo codes */},
{"TLE", EQ(TLEN) /* Length */},
{"SLT", EQ(SYLT) /* Synchronised lyric/text */},
{"TEN", EQ(TENC) /* Encoded by */},
{"TP2", EQ(TPE2) /* Band/orchestra/accompaniment */},
{"TP1", EQ(TPE1) /* Lead performer(s)/soloist(s) */},
#line 104 "compat.gperf"
{"TOT", EQ(TOAL) /* Original album/movie/show title */},
{"EQU", OBSOLETE /* Equalization [obsolete] */},
#line 89 "compat.gperf"
{"TDAT", OBSOLETE /* Date [obsolete] */},
#line 67 "compat.gperf"
{"EQUA", OBSOLETE /* Equalization [obsolete] */},
#line 102 "compat.gperf"
{"TOR", EQ(TDOR) /* Original release year [obsolete] */},
#line 131 "compat.gperf"
{"WCP", EQ(WCOP) /* Copyright/legal information */},
#line 99 "compat.gperf"
{"TOA", EQ(TOPE) /* Original artist(s)/performer(s) */},
#line 78 "compat.gperf"
{"RVA", OBSOLETE /* Relative volume adjustment [obsolete] */},
{"GEO", EQ(GEOB) /* General encapsulated object */},
#line 120 "compat.gperf"
{"TT3", EQ(TIT3) /* Subtitle/description refinement */},
#line 98 "compat.gperf"
{"TMT", EQ(TMED) /* Media type */},
#line 76 "compat.gperf"
{"POP", EQ(POPM) /* Popularimeter */},
#line 74 "compat.gperf"
{"MLL", EQ(MLLT) /* MPEG location lookup table */},
#line 79 "compat.gperf"
{"RVAD", OBSOLETE /* Relative volume adjustment [obsolete] */},
#line 65 "compat.gperf"
{"CRM", OBSOLETE /* Encrypted meta frame [obsolete] */},
#line 128 "compat.gperf"
{"WAR", EQ(WOAR) /* Official artist/performer webpage */},
#line 80 "compat.gperf"
{"SLT", EQ(SYLT) /* Synchronised lyric/text */},
#line 81 "compat.gperf"
{"STC", EQ(SYTC) /* Synchronised tempo codes */},
#line 95 "compat.gperf"
{"TKE", EQ(TKEY) /* Initial key */},
#line 111 "compat.gperf"
{"TRC", EQ(TSRC) /* ISRC (international standard recording code) */},
#line 109 "compat.gperf"
{"TPA", EQ(TPOS) /* Part of a set */},
#line 117 "compat.gperf"
{"TSS", EQ(TSSE) /* Software/hardware and settings used for encoding */},
#line 112 "compat.gperf"
{"TRD", OBSOLETE /* Recording dates [obsolete] */},
#line 64 "compat.gperf"
{"CRA", EQ(AENC) /* Audio encryption */},
#line 108 "compat.gperf"
{"TP4", EQ(TPE4) /* Interpreted, remixed, or otherwise modified by */},
#line 125 "compat.gperf"
{"UFI", EQ(UFID) /* Unique file identifier */},
#line 101 "compat.gperf"
{"TOL", EQ(TOLY) /* Original lyricist(s)/text writer(s) */},
#line 110 "compat.gperf"
{"TPB", EQ(TPUB) /* Publisher */},
#line 73 "compat.gperf"
{"MCI", EQ(MCDI) /* Music CD identifier */},
#line 107 "compat.gperf"
{"TP3", EQ(TPE3) /* Conductor/performer refinement */},
{"TFT", EQ(TFLT) /* File type */},
{"TIM", OBSOLETE /* Time [obsolete] */},
{"REV", EQ(RVRB) /* Reverb */},
#line 132 "compat.gperf"
{"WPB", EQ(WPUB) /* Publishers official webpage */},
#line 113 "compat.gperf"
{"TRDA", OBSOLETE /* Recording dates [obsolete] */},
#line 115 "compat.gperf"
{"TSI", OBSOLETE /* Size [obsolete] */},
{"EQUA", OBSOLETE /* Equalization [obsolete] */},
{"TSS", EQ(TSSE) /* Software/hardware and settings used for encoding */},
#line 90 "compat.gperf"
{"TDY", EQ(TDLY) /* Playlist delay */},
#line 82 "compat.gperf"
{"TAL", EQ(TALB) /* Album/movie/show title */},
#line 116 "compat.gperf"
{"TSIZ", OBSOLETE /* Size [obsolete] */},
#line 129 "compat.gperf"
{"WAS", EQ(WOAS) /* Official audio source webpage */},
#line 121 "compat.gperf"
{"TXT", EQ(TEXT) /* Lyricist/text writer */},
#line 62 "compat.gperf"
{"CNT", EQ(PCNT) /* Play counter */},
#line 100 "compat.gperf"
{"TOF", EQ(TOFN) /* Original filename */},
#line 85 "compat.gperf"
{"TCO", TX(TCON) /* Content type */},
#line 114 "compat.gperf"
{"TRK", EQ(TRCK) /* Track number/position in set */},
{"TDA", OBSOLETE /* Date [obsolete] */},
{"TMT", EQ(TMED) /* Media type */},
{"TKE", EQ(TKEY) /* Initial key */},
{"TORY", EQ(TDOR) /* Original release year [obsolete] */},
{"TRD", OBSOLETE /* Recording dates [obsolete] */},
{"TYE", OBSOLETE /* Year [obsolete] */},
#line 119 "compat.gperf"
{"TT2", EQ(TIT2) /* Title/songname/content description */},
#line 93 "compat.gperf"
{"TIM", OBSOLETE /* Time [obsolete] */},
#line 94 "compat.gperf"
{"TIME", OBSOLETE /* Time [obsolete] */},
#line 103 "compat.gperf"
{"TORY", EQ(TDOR) /* Original release year [obsolete] */},
#line 91 "compat.gperf"
{"TEN", EQ(TENC) /* Encoded by */},
#line 118 "compat.gperf"
{"TT1", EQ(TIT1) /* Content group description */},
#line 127 "compat.gperf"
{"WAF", EQ(WOAF) /* Official audio file webpage */},
#line 75 "compat.gperf"
{"PIC", EQ(APIC) /* Attached picture */},
#line 122 "compat.gperf"
{"TXX", EQ(TXXX) /* User defined text information frame */},
#line 133 "compat.gperf"
{"WXX", EQ(WXXX) /* User defined URL link frame */},
{"TIME", OBSOLETE /* Time [obsolete] */},
{"TSIZ", OBSOLETE /* Size [obsolete] */},
{"TT3", EQ(TIT3) /* Subtitle/description refinement */},
{"TRDA", OBSOLETE /* Recording dates [obsolete] */},
{"RVAD", OBSOLETE /* Relative volume adjustment [obsolete] */},
{"TDY", EQ(TDLY) /* Playlist delay */},
{"TXT", EQ(TEXT) /* Lyricist/text writer */},
{"TYER", OBSOLETE /* Year [obsolete] */},
{"TDAT", OBSOLETE /* Date [obsolete] */},
{"TXX", EQ(TXXX) /* User defined text information frame */}
#line 86 "compat.gperf"
{"TCON", TX(TCON) /* Content type */},
#line 77 "compat.gperf"
{"REV", EQ(RVRB) /* Reverb */},
#line 106 "compat.gperf"
{"TP2", EQ(TPE2) /* Band/orchestra/accompaniment */},
#line 105 "compat.gperf"
{"TP1", EQ(TPE1) /* Lead performer(s)/soloist(s) */},
#line 61 "compat.gperf"
{"BUF", EQ(RBUF) /* Recommended buffer size */},
#line 70 "compat.gperf"
{"IPL", EQ(TIPL) /* Involved people list */},
#line 69 "compat.gperf"
{"GEO", EQ(GEOB) /* General encapsulated object */},
#line 72 "compat.gperf"
{"LNK", EQ(LINK) /* Linked information */},
#line 71 "compat.gperf"
{"IPLS", EQ(TIPL) /* Involved people list */}
};
static const short lookup[] =
{
-1, 0, -1, -53, -2, 1, -49, -2,
2, 3, -1, -46, -2, -43, -2, 4,
5, 6, -1, 7, -163, 10, 11, 12,
13, -161, 17, -159, -77, 22, 23, -80,
26, -85, 29, -87, 32, 33, 34, 35,
36, 37, 38, 39, 40, 41, -155, 44,
45, 46, 47, -1, 48, 49, 50, 51,
52, 53, 54, 55, 56, 57, 58, 59,
-1, 60, 61, 62, 63, 64, -1, -151,
-1, 67, 68, 69, 70, -8, -2, -1,
71, -31, -2, -1, 72, -55, -2, -59,
-3, -65, -2
-1, -1, -1, -1, -1, -1, 0, 1, 2, 3, 4, 5, 6, 7,
8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, -1,
21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
-1, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
48, 49, -1, -1, 50, -1, 51, 52, -1, 53, 54, 55, 56, -1,
57, 58, 59, 60, -1, 61, -1, 62, -1, -1, 63, -1, 64, -1,
-1, 65, -1, 66, -1, -1, -1, -1, -1, 67, -1, 68, -1, 69,
-1, 70, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 71, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 72
};
if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
......@@ -229,25 +332,12 @@ id3_compat_lookup (str, len)
if (*str == *s && !strncmp (str + 1, s + 1, len - 1) && s[len] == '\0')
return &wordlist[index];
}
else if (index < -TOTAL_KEYWORDS)
{
register int offset = - 1 - TOTAL_KEYWORDS - index;
register const struct id3_compat *wordptr = &wordlist[TOTAL_KEYWORDS + lookup[offset]];
register const struct id3_compat *wordendptr = wordptr + -lookup[offset + 1];
while (wordptr < wordendptr)
{
register const char *s = wordptr->id;
if (*str == *s && !strncmp (str + 1, s + 1, len - 1) && s[len] == '\0')
return wordptr;
wordptr++;
}
}
}
}
return 0;
}
#line 134 "compat.gperf"
static
int translate_TCON(struct id3_frame *frame, char const *oldid,
......
......@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: compat.gperf,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: compat.gperf,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: compat.h,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: compat.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBID3TAG_COMPAT_H
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -17,7 +17,7 @@ dnl You should have received a copy of the GNU General Public License
dnl along with this program; if not, write to the Free Software
dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
dnl
AC_REVISION([$Id: configure.ac,v 1.3 2003/07/05 05:39:48 shank Exp $])dnl
AC_REVISION([$Id: configure.ac,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $])dnl
dnl Process this file with autoconf to produce a configure script.
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: crc.c,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: crc.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: crc.h,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: crc.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBID3TAG_CRC_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: debug.c,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: debug.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: debug.h,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: debug.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBID3TAG_DEBUG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: field.c,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: field.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: field.h,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: field.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBID3TAG_FIELD_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: file.c,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: file.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: file.h,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: file.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBID3TAG_FILE_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: frame.c,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: frame.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: frame.h,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: frame.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBID3TAG_FRAME_H
......
/* C code produced by gperf version 2.7.2 */
/* C code produced by gperf version 3.0 */
/* Command-line: gperf -tCcTonD -K id -N id3_frametype_lookup -s -3 -k '*' frametype.gperf */
#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
&& ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
&& (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
&& ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
&& ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
&& ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
&& ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
&& ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
&& ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
&& ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
&& ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
&& ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
&& ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
&& ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
&& ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
&& ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
&& ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
&& ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
&& ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
&& ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
&& ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
&& ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
&& ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
/* The character set is not based on ISO-646. */
error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
#endif
#line 1 "frametype.gperf"
/*
* libid3tag - ID3 tag manipulation library
* Copyright (C) 2000-2003 Underbit Technologies, Inc.
......@@ -18,7 +48,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* Id: frametype.gperf,v 1.2 2003/07/05 05:18:51 shank Exp
* Id: frametype.gperf,v 1.1.1.1 2003/07/15 15:51:33 shank Exp
*/
# ifdef HAVE_CONFIG_H
......@@ -273,9 +303,9 @@ FRAMETYPE(obsolete, unknown, OBSOLETE, "Obsolete frame");
#define TOTAL_KEYWORDS 84
#define MIN_WORD_LENGTH 4
#define MAX_WORD_LENGTH 4
#define MIN_HASH_VALUE 0
#define MAX_HASH_VALUE 111
/* maximum key range = 112, duplicates = 12 */
#define MIN_HASH_VALUE 7
#define MAX_HASH_VALUE 155
/* maximum key range = 149, duplicates = 0 */
#ifdef __GNUC__
__inline
......@@ -291,49 +321,34 @@ hash (str, len)
{
static const unsigned char asso_values[] =
{
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 20,
18, 2, 25, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 19, 26, 1, 28, 15,
9, 31, 112, 0, 112, 29, 3, 0, 10, 0,
30, 0, 8, 5, 0, 29, 31, 24, 29, 24,
30, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
112, 112, 112, 112, 112, 112
156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
43, 4, 47, 49, 156, 156, 156, 156, 156, 156,
156, 156, 156, 156, 156, 31, 53, 3, 15, 3,
24, 25, 10, 52, 69, 34, 23, 30, 1, 5,
10, 62, 20, 0, 28, 28, 22, 19, 47, 3,
10, 156, 156, 156, 156, 156, 156, 156, 156, 156,
156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
156, 156, 156, 156, 156, 156, 156, 156, 156, 156,
156, 156, 156, 156, 156, 156, 156
};
register int hval = 0;
switch (len)
{
default:
case 4:
hval += asso_values[(unsigned char)str[3]];
case 3:
hval += asso_values[(unsigned char)str[2]];
case 2:
hval += asso_values[(unsigned char)str[1]];
case 1:
hval += asso_values[(unsigned char)str[0]];
break;
}
return hval;
return asso_values[(unsigned char)str[3]+1] + asso_values[(unsigned char)str[2]] + asso_values[(unsigned char)str[1]] + asso_values[(unsigned char)str[0]];
}
#ifdef __GNUC__
......@@ -346,108 +361,190 @@ id3_frametype_lookup (str, len)
{
static const struct id3_frametype wordlist[] =
{
{"TMOO", FRAME(text), PRESERVE, "Mood"},
#line 282 "frametype.gperf"
{"ENCR", FRAME(ENCR), PRESERVE, "Encryption method registration"},
#line 292 "frametype.gperf"
{"POPM", FRAME(POPM), PRESERVE, "Popularimeter"},
#line 351 "frametype.gperf"
{"WCOM", FRAME(url), PRESERVE, "Commercial information"},
#line 298 "frametype.gperf"
{"SEEK", FRAME(SEEK), DISCARD, "Seek frame"},
#line 349 "frametype.gperf"
{"USER", FRAME(USER), PRESERVE, "Terms of use"},
#line 285 "frametype.gperf"
{"GEOB", FRAME(GEOB), PRESERVE, "General encapsulated object"},
#line 304 "frametype.gperf"
{"TCOM", FRAME(text), PRESERVE, "Composer"},
{"COMM", FRAME(COMM), PRESERVE, "Comments"},
{"TIT3", FRAME(text), PRESERVE, "Subtitle/description refinement"},
{"TMCL", FRAME(text), PRESERVE, "Musician credits list"},
{"TSOT", FRAME(text), PRESERVE, "Title sort order"},
{"MLLT", FRAME(MLLT), DISCARD, "MPEG location lookup table"},
#line 281 "frametype.gperf"
{"COMR", FRAME(COMR), PRESERVE, "Commercial frame"},
{"TSST", FRAME(text), PRESERVE, "Set subtitle"},
#line 280 "frametype.gperf"
{"COMM", FRAME(COMM), PRESERVE, "Comments"},
#line 305 "frametype.gperf"
{"TCON", FRAME(text), PRESERVE, "Content type"},
{"TFLT", FRAME(text), PRESERVE, "File type"},
{"TRSO", FRAME(text), PRESERVE, "Internet radio station owner"},
{"TSRC", FRAME(text), PRESERVE, "ISRC (international standard recording code)"},
#line 291 "frametype.gperf"
{"PCNT", FRAME(PCNT), PRESERVE, "Play counter"},
#line 293 "frametype.gperf"
{"POSS", FRAME(POSS), DISCARD, "Position synchronisation frame"},
#line 284 "frametype.gperf"
{"ETCO", FRAME(ETCO), DISCARD, "Event timing codes"},
{"TIT2", FRAME(text), PRESERVE, "Title/songname/content description"},
{"TOFN", FRAME(text), PRESERVE, "Original filename"},
{"TIT1", FRAME(text), PRESERVE, "Content group description"},
{"TOAL", FRAME(text), PRESERVE, "Original album/movie/show title"},
{"TRSN", FRAME(text), PRESERVE, "Internet radio station name"},
{"TSOA", FRAME(text), PRESERVE, "Album sort order"},
{"TSSE", FRAME(text), PRESERVE, "Software/hardware and settings used for encoding"},
{"WCOM", FRAME(url), PRESERVE, "Commercial information"},
{"TENC", FRAME(text), DISCARD, "Encoded by"},
{"TOLY", FRAME(text), PRESERVE, "Original lyricist(s)/text writer(s)"},
{"TLEN", FRAME(text), DISCARD, "Length"},
{"MCDI", FRAME(MCDI), PRESERVE, "Music CD identifier"},
#line 332 "frametype.gperf"
{"TPE2", FRAME(text), PRESERVE, "Band/orchestra/accompaniment"},
#line 301 "frametype.gperf"
{"SYTC", FRAME(SYTC), DISCARD, "Synchronised tempo codes"},
{"TCOP", FRAME(text), PRESERVE, "Copyright message"},
#line 313 "frametype.gperf"
{"TENC", FRAME(text), DISCARD, "Encoded by"},
#line 309 "frametype.gperf"
{"TDOR", FRAME(text), PRESERVE, "Original release time"},
#line 290 "frametype.gperf"
{"OWNE", FRAME(OWNE), PRESERVE, "Ownership frame"},
#line 277 "frametype.gperf"
{"AENC", FRAME(AENC), DISCARD, "Audio encryption"},
#line 307 "frametype.gperf"
{"TDEN", FRAME(text), PRESERVE, "Encoding time"},
#line 345 "frametype.gperf"
{"TSSE", FRAME(text), PRESERVE, "Software/hardware and settings used for encoding"},
#line 339 "frametype.gperf"
{"TRSN", FRAME(text), PRESERVE, "Internet radio station name"},
#line 300 "frametype.gperf"
{"SYLT", FRAME(SYLT), DISCARD, "Synchronised lyric/text"},
{"TLAN", FRAME(text), PRESERVE, "Language(s)"},
{"TIPL", FRAME(text), PRESERVE, "Involved people list"},
{"ENCR", FRAME(ENCR), PRESERVE, "Encryption method registration"},
#line 354 "frametype.gperf"
{"WOAR", FRAME(url), PRESERVE, "Official artist/performer webpage"},
#line 346 "frametype.gperf"
{"TSST", FRAME(text), PRESERVE, "Set subtitle"},
#line 330 "frametype.gperf"
{"TOWN", FRAME(text), PRESERVE, "File owner/licensee"},
#line 340 "frametype.gperf"
{"TRSO", FRAME(text), PRESERVE, "Internet radio station owner"},
#line 322 "frametype.gperf"
{"TLEN", FRAME(text), DISCARD, "Length"},
#line 358 "frametype.gperf"
{"WPUB", FRAME(url), PRESERVE, "Publishers official webpage"},
#line 343 "frametype.gperf"
{"TSOT", FRAME(text), PRESERVE, "Title sort order"},
#line 327 "frametype.gperf"
{"TOFN", FRAME(text), PRESERVE, "Original filename"},
#line 344 "frametype.gperf"
{"TSRC", FRAME(text), PRESERVE, "ISRC (international standard recording code)"},
#line 324 "frametype.gperf"
{"TMED", FRAME(text), PRESERVE, "Media type"},
#line 297 "frametype.gperf"
{"RVRB", FRAME(RVRB), PRESERVE, "Reverb"},
#line 328 "frametype.gperf"
{"TOLY", FRAME(text), PRESERVE, "Original lyricist(s)/text writer(s)"},
#line 329 "frametype.gperf"
{"TOPE", FRAME(text), PRESERVE, "Original artist(s)/performer(s)"},
#line 336 "frametype.gperf"
{"TPRO", FRAME(text), PRESERVE, "Produced notice"},
#line 337 "frametype.gperf"
{"TPUB", FRAME(text), PRESERVE, "Publisher"},
#line 357 "frametype.gperf"
{"WPAY", FRAME(url), PRESERVE, "Payment"},
#line 335 "frametype.gperf"
{"TPOS", FRAME(text), PRESERVE, "Part of a set"},
{"TSOP", FRAME(text), PRESERVE, "Performer sort order"},
{"TDOR", FRAME(text), PRESERVE, "Original release time"},
{"TDRC", FRAME(text), PRESERVE, "Recording time"},
#line 356 "frametype.gperf"
{"WORS", FRAME(url), PRESERVE, "Official Internet radio station homepage"},
{"USLT", FRAME(USLT), PRESERVE, "Unsynchronised lyric/text transcription"},
#line 325 "frametype.gperf"
{"TMOO", FRAME(text), PRESERVE, "Mood"},
#line 338 "frametype.gperf"
{"TRCK", FRAME(text), PRESERVE, "Track number/position in set"},
{"TPRO", FRAME(text), PRESERVE, "Produced notice"},
{"TDRL", FRAME(text), PRESERVE, "Release time"},
{"POSS", FRAME(POSS), DISCARD, "Position synchronisation frame"},
{"PCNT", FRAME(PCNT), PRESERVE, "Play counter"},
{"LINK", FRAME(LINK), PRESERVE, "Linked information"},
{"TMED", FRAME(text), PRESERVE, "Media type"},
{"TEXT", FRAME(text), PRESERVE, "Lyricist/text writer"},
{"TOPE", FRAME(text), PRESERVE, "Original artist(s)/performer(s)"},
{"AENC", FRAME(AENC), DISCARD, "Audio encryption"},
#line 320 "frametype.gperf"
{"TKEY", FRAME(text), PRESERVE, "Initial key"},
#line 308 "frametype.gperf"
{"TDLY", FRAME(text), PRESERVE, "Playlist delay"},
#line 296 "frametype.gperf"
{"RVA2", FRAME(RVA2), DISCARD, "Relative volume adjustment (2)"},
#line 310 "frametype.gperf"
{"TDRC", FRAME(text), PRESERVE, "Recording time"},
#line 350 "frametype.gperf"
{"USLT", FRAME(USLT), PRESERVE, "Unsynchronised lyric/text transcription"},
#line 353 "frametype.gperf"
{"WOAF", FRAME(url), PRESERVE, "Official audio file webpage"},
#line 312 "frametype.gperf"
{"TDTG", FRAME(text), PRESERVE, "Tagging time"},
#line 299 "frametype.gperf"
{"SIGN", FRAME(SIGN), PRESERVE, "Signature frame"},
{"TPE3", FRAME(text), PRESERVE, "Conductor/performer refinement"},
#line 355 "frametype.gperf"
{"WOAS", FRAME(url), PRESERVE, "Official audio source webpage"},
#line 331 "frametype.gperf"
{"TPE1", FRAME(text), PRESERVE, "Lead performer(s)/soloist(s)"},
#line 302 "frametype.gperf"
{"TALB", FRAME(text), PRESERVE, "Album/movie/show title"},
{"OWNE", FRAME(OWNE), PRESERVE, "Ownership frame"},
{"APIC", FRAME(APIC), PRESERVE, "Attached picture"},
{"WOAR", FRAME(url), PRESERVE, "Official artist/performer webpage"},
{"WOAF", FRAME(url), PRESERVE, "Official audio file webpage"},
{"TDEN", FRAME(text), PRESERVE, "Encoding time"},
{"ASPI", FRAME(ASPI), DISCARD, "Audio seek point index"},
#line 341 "frametype.gperf"
{"TSOA", FRAME(text), PRESERVE, "Album sort order"},
#line 321 "frametype.gperf"
{"TLAN", FRAME(text), PRESERVE, "Language(s)"},
#line 333 "frametype.gperf"
{"TPE3", FRAME(text), PRESERVE, "Conductor/performer refinement"},
#line 352 "frametype.gperf"
{"WCOP", FRAME(url), PRESERVE, "Copyright/legal information"},
{"TDLY", FRAME(text), PRESERVE, "Playlist delay"},
#line 334 "frametype.gperf"
{"TPE4", FRAME(text), PRESERVE, "Interpreted, remixed, or otherwise modified by"},
#line 323 "frametype.gperf"
{"TMCL", FRAME(text), PRESERVE, "Musician credits list"},
#line 303 "frametype.gperf"
{"TBPM", FRAME(text), PRESERVE, "BPM (beats per minute)"},
{"USER", FRAME(USER), PRESERVE, "Terms of use"},
{"TDTG", FRAME(text), PRESERVE, "Tagging time"},
{"POPM", FRAME(POPM), PRESERVE, "Popularimeter"},
#line 311 "frametype.gperf"
{"TDRL", FRAME(text), PRESERVE, "Release time"},
#line 326 "frametype.gperf"
{"TOAL", FRAME(text), PRESERVE, "Original album/movie/show title"},
#line 342 "frametype.gperf"
{"TSOP", FRAME(text), PRESERVE, "Performer sort order"},
#line 363 "frametype.gperf"
{"ZOBS", FRAME(ZOBS), OBSOLETE, "Obsolete frame"},
#line 283 "frametype.gperf"
{"EQU2", FRAME(EQU2), DISCARD, "Equalisation (2)"},
{"TPE2", FRAME(text), PRESERVE, "Band/orchestra/accompaniment"},
{"SEEK", FRAME(SEEK), DISCARD, "Seek frame"},
{"TPE1", FRAME(text), PRESERVE, "Lead performer(s)/soloist(s)"},
{"UFID", FRAME(UFID), PRESERVE, "Unique file identifier"},
#line 306 "frametype.gperf"
{"TCOP", FRAME(text), PRESERVE, "Copyright message"},
#line 287 "frametype.gperf"
{"LINK", FRAME(LINK), PRESERVE, "Linked information"},
#line 286 "frametype.gperf"
{"GRID", FRAME(GRID), PRESERVE, "Group identification registration"},
{"TKEY", FRAME(text), PRESERVE, "Initial key"},
#line 294 "frametype.gperf"
{"PRIV", FRAME(PRIV), PRESERVE, "Private frame"},
{"TPE4", FRAME(text), PRESERVE, "Interpreted, remixed, or otherwise modified by"},
{"GEOB", FRAME(GEOB), PRESERVE, "General encapsulated object"},
{"RBUF", FRAME(RBUF), PRESERVE, "Recommended buffer size"},
{"RVRB", FRAME(RVRB), PRESERVE, "Reverb"},
{"RVA2", FRAME(RVA2), DISCARD, "Relative volume adjustment (2)"},
{"TPUB", FRAME(text), PRESERVE, "Publisher"},
#line 315 "frametype.gperf"
{"TFLT", FRAME(text), PRESERVE, "File type"},
#line 289 "frametype.gperf"
{"MLLT", FRAME(MLLT), DISCARD, "MPEG location lookup table"},
#line 314 "frametype.gperf"
{"TEXT", FRAME(text), PRESERVE, "Lyricist/text writer"},
#line 348 "frametype.gperf"
{"UFID", FRAME(UFID), PRESERVE, "Unique file identifier"},
#line 278 "frametype.gperf"
{"APIC", FRAME(APIC), PRESERVE, "Attached picture"},
#line 279 "frametype.gperf"
{"ASPI", FRAME(ASPI), DISCARD, "Audio seek point index"},
#line 318 "frametype.gperf"
{"TIT2", FRAME(text), PRESERVE, "Title/songname/content description"},
#line 359 "frametype.gperf"
{"WXXX", FRAME(WXXX), PRESERVE, "User defined URL link frame"},
#line 288 "frametype.gperf"
{"MCDI", FRAME(MCDI), PRESERVE, "Music CD identifier"},
#line 316 "frametype.gperf"
{"TIPL", FRAME(text), PRESERVE, "Involved people list"},
#line 347 "frametype.gperf"
{"TXXX", FRAME(TXXX), PRESERVE, "User defined text information frame"},
{"WPAY", FRAME(url), PRESERVE, "Payment"},
{"WPUB", FRAME(url), PRESERVE, "Publishers official webpage"},
{"WXXX", FRAME(WXXX), PRESERVE, "User defined URL link frame"}
#line 295 "frametype.gperf"
{"RBUF", FRAME(RBUF), PRESERVE, "Recommended buffer size"},
#line 317 "frametype.gperf"
{"TIT1", FRAME(text), PRESERVE, "Content group description"},
#line 319 "frametype.gperf"
{"TIT3", FRAME(text), PRESERVE, "Subtitle/description refinement"}
};
static const short lookup[] =
{
0, -92, 3, -1, 4, 5, 6, -83,
-2, 7, 8, 9, 10, 11, 12, -1,
13, -1, 14, 15, 16, -1, 17, 18,
19, -183, 22, 23, 24, 25, 26, 27,
-179, 30, -177, -175, 35, -173, -168, 41,
42, 43, 44, 45, 46, -166, 49, 50,
-164, 53, 54, 55, 56, 57, 58, -162,
61, 62, -1, 63, 64, 65, 66, 67,
68, 69, 70, 71, 72, 73, 74, -1,
-159, 77, -9, -2, 78, -25, -2, -33,
-2, -37, -2, -45, -2, 79, -1, 80,
-48, -3, -51, -2, -53, -2, -56, -2,
-1, 81, -64, -2, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 82, -1, 83
-1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1,
2, 3, -1, 4, -1, -1, -1, -1, 5, 6, 7, 8, -1, 9,
10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
66, 67, 68, 69, -1, 70, 71, -1, 72, 73, 74, -1, 75, -1,
76, -1, -1, -1, 77, 78, -1, -1, 79, -1, -1, -1, -1, 80,
81, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 82, -1, -1,
-1, 83
};
if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
......@@ -465,21 +562,6 @@ id3_frametype_lookup (str, len)
if (*str == *s && !strncmp (str + 1, s + 1, len - 1) && s[len] == '\0')
return &wordlist[index];
}
else if (index < -TOTAL_KEYWORDS)
{
register int offset = - 1 - TOTAL_KEYWORDS - index;
register const struct id3_frametype *wordptr = &wordlist[TOTAL_KEYWORDS + lookup[offset]];
register const struct id3_frametype *wordendptr = wordptr + -lookup[offset + 1];
while (wordptr < wordendptr)
{
register const char *s = wordptr->id;
if (*str == *s && !strncmp (str + 1, s + 1, len - 1) && s[len] == '\0')
return wordptr;
wordptr++;
}
}
}
}
return 0;
......
......@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: frametype.gperf,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: frametype.gperf,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: frametype.h,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: frametype.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBID3TAG_FRAMETYPE_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: genre.c,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: genre.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* Id: genre.dat.in,v 1.2 2003/07/05 05:18:51 shank Exp
* Id: genre.dat.in,v 1.1.1.1 2003/07/15 15:51:33 shank Exp
*/
/*
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: genre.dat.in,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: genre.dat.in,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
/*
......
......@@ -16,7 +16,7 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# $Id: genre.dat.sed,v 1.2 2003/07/05 05:18:51 shank Exp $
# $Id: genre.dat.sed,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
#
1i\
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: genre.h,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: genre.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBID3TAG_GENRE_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: global.h,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: global.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBID3TAG_GLOBAL_H
......
......@@ -19,7 +19,7 @@
* If you would like to negotiate alternate licensing terms, you may do
* so by contacting: Underbit Technologies, Inc. <info@underbit.com>
*
* $Id: id3tag.h,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: id3tag.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBID3TAG_ID3TAG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: latin1.c,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: latin1.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: latin1.h,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: latin1.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBID3TAG_LATIN1_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: parse.c,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: parse.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: parse.h,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: parse.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBID3TAG_PARSE_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: render.c,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: render.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: render.h,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: render.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBID3TAG_RENDER_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: tag.c,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: tag.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: tag.h,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: tag.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBID3TAG_TAG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: ucs4.c,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: ucs4.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: ucs4.h,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: ucs4.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBID3TAG_UCS4_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: utf16.c,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: utf16.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: utf16.h,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: utf16.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBID3TAG_UTF16_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: utf8.c,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: utf8.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: utf8.h,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: utf8.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBID3TAG_UTF8_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: util.c,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: util.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: util.h,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: util.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBID3TAG_UTIL_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: version.c,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: version.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: version.h,v 1.2 2003/07/05 05:18:51 shank Exp $
* $Id: version.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBID3TAG_VERSION_H
......
......@@ -2,7 +2,7 @@
libmad - MPEG audio decoder library
Copyright (C) 2000-2003 Underbit Technologies, Inc.
$Id: CHANGES,v 1.1 2003/07/05 06:20:49 shank Exp $
$Id: CHANGES,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
===============================================================================
......
......@@ -2,7 +2,7 @@
libmad - MPEG audio decoder library
Copyright (C) 2000-2003 Underbit Technologies, Inc.
$Id: CREDITS,v 1.1 2003/07/05 06:20:50 shank Exp $
$Id: CREDITS,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
===============================================================================
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: D.dat,v 1.2 2003/07/05 06:20:50 shank Exp $
* $Id: D.dat,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
/*
......
......@@ -16,7 +16,7 @@
## along with this program; if not, write to the Free Software
## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##
## $Id: Makefile.am,v 1.3 2003/07/05 06:20:50 shank Exp $
## $Id: Makefile.am,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
##
## Process this file with automake to produce Makefile.in
......
......@@ -2,7 +2,7 @@
libmad - MPEG audio decoder library
Copyright (C) 2000-2003 Underbit Technologies, Inc.
$Id: README,v 1.1 2003/07/05 06:20:50 shank Exp $
$Id: README,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
===============================================================================
......
......@@ -2,7 +2,7 @@
libmad - MPEG audio decoder library
Copyright (C) 2000-2003 Underbit Technologies, Inc.
$Id: TODO,v 1.1 2003/07/05 06:20:50 shank Exp $
$Id: TODO,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
===============================================================================
......
......@@ -895,6 +895,8 @@ AC_REQUIRE([AC_PROG_CC])dnl
AC_REQUIRE([AC_PROG_LD])dnl
AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl
AC_REQUIRE([AC_PROG_NM])dnl
AC_REQUIRE([LT_AC_PROG_SED])dnl
AC_REQUIRE([AC_PROG_LN_S])dnl
AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
AC_REQUIRE([AC_OBJEXT])dnl
......@@ -1062,9 +1064,12 @@ hpux*) # Its linker distinguishes data from code symbols
lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
;;
irix*)
irix* | nonstopux*)
symcode='[[BCDEGRST]]'
;;
osf*)
symcode='[[BCDEGQRST]]'
;;
solaris* | sysv5*)
symcode='[[BDT]]'
;;
......@@ -1161,7 +1166,7 @@ EOF
save_CFLAGS="$CFLAGS"
LIBS="conftstm.$ac_objext"
CFLAGS="$CFLAGS$no_builtin_flag"
if AC_TRY_EVAL(ac_link) && test -s conftest; then
if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
pipe_works=yes
fi
LIBS="$save_LIBS"
......@@ -1705,7 +1710,7 @@ AC_CACHE_VAL(lt_cv_prog_cc_pic,
# like `-m68040'.
lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4'
;;
beos* | irix5* | irix6* | osf3* | osf4* | osf5*)
beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
# PIC is the default for these OSes.
;;
darwin* | rhapsody*)
......@@ -1748,7 +1753,7 @@ AC_CACHE_VAL(lt_cv_prog_cc_pic,
lt_cv_prog_cc_pic='+Z'
;;
irix5* | irix6*)
irix5* | irix6* | nonstopux*)
lt_cv_prog_cc_wl='-Wl,'
lt_cv_prog_cc_static='-non_shared'
# PIC (with -KPIC) is the default.
......@@ -1792,11 +1797,7 @@ AC_CACHE_VAL(lt_cv_prog_cc_pic,
sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
lt_cv_prog_cc_pic='-KPIC'
lt_cv_prog_cc_static='-Bstatic'
if test "x$host_vendor" = xsni; then
lt_cv_prog_cc_wl='-LD'
else
lt_cv_prog_cc_wl='-Wl,'
fi
lt_cv_prog_cc_wl='-Wl,'
;;
uts4*)
......@@ -2161,7 +2162,7 @@ EOF
# If the export-symbols file already is a .def file (1st line
# is EXPORTS), use it as is.
# If DATA tags from a recent dlltool are present, honour them!
archive_expsym_cmds='if test "x`head -1 $export_symbols`" = xEXPORTS; then
archive_expsym_cmds='if test "x`sed 1q $export_symbols`" = xEXPORTS; then
cp $export_symbols $output_objdir/$soname-def;
else
echo EXPORTS > $output_objdir/$soname-def;
......@@ -2170,6 +2171,7 @@ EOF
set dummy \$symbol;
case \[$]# in
2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;;
4) echo " \[$]2 \[$]3 \[$]4 ; " >> $output_objdir/$soname-def; _lt_hint=`expr \$_lt_hint - 1`;;
*) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;;
esac;
_lt_hint=`expr 1 + \$_lt_hint`;
......@@ -2282,10 +2284,12 @@ else
# need to do runtime linking.
case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
for ld_flag in $LDFLAGS; do
if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
case $ld_flag in
*-brtl*)
aix_use_runtimelinking=yes
break
fi
;;
esac
done
esac
......@@ -2357,7 +2361,7 @@ else
allow_undefined_flag='${wl}-berok'
# This is a bit strange, but is similar to how AIX traditionally builds
# it's shared libraries.
archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $objdir/$libname$release.a $objdir/$soname'
archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
;;
......@@ -2399,8 +2403,9 @@ else
esac
# FIXME: Relying on posixy $() will cause problems for
# cross-compilation, but unfortunately the echo tests do not
# yet detect zsh echo's removal of \ escapes.
archive_cmds='$nonopt $(test "x$module" = xyes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib $libobjs $deplibs$linker_flags -install_name $rpath/$soname $verstring'
# yet detect zsh echo's removal of \ escapes. Also zsh mangles
# `"' quotes if we put them in here... so don't!
archive_cmds='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs && $CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib ${lib}-master.o $deplibs$linker_flags $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)'
# We need to add '_' to the symbols in $export_symbols first
#archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols'
hardcode_direct=yes
......@@ -2452,13 +2457,14 @@ else
export_dynamic_flag_spec='${wl}-E'
;;
irix5* | irix6*)
irix5* | irix6* | nonstopux*)
if test "$GCC" = yes; then
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
else
archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
hardcode_libdir_flag_spec='-rpath $libdir'
fi
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
hardcode_libdir_separator=:
link_all_deplibs=yes
;;
......@@ -2486,7 +2492,7 @@ else
hardcode_direct=yes
hardcode_shlibpath_var=no
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
export_dynamic_flag_spec='${wl}-E'
else
......@@ -2496,7 +2502,7 @@ else
hardcode_libdir_flag_spec='-R$libdir'
;;
*)
archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
;;
esac
......@@ -2608,13 +2614,23 @@ EOF
;;
sysv4)
if test "x$host_vendor" = xsno; then
archive_cmds='$LD -G -Bsymbolic -h $soname -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct=yes # is this really true???
else
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct=no #Motorola manual says yes, but my tests say they lie
fi
case $host_vendor in
sni)
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct=yes # is this really true???
;;
siemens)
## LD is ld it makes a PLAMLIB
## CC just makes a GrossModule.
archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
reload_cmds='$CC -r -o $output$reload_objs'
hardcode_direct=no
;;
motorola)
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct=no #Motorola manual says yes, but my tests say they lie
;;
esac
runpath_var='LD_RUN_PATH'
hardcode_shlibpath_var=no
;;
......@@ -2755,6 +2771,9 @@ aix3*)
aix4* | aix5*)
version_type=linux
need_lib_prefix=no
need_version=no
hardcode_into_libs=yes
if test "$host_cpu" = ia64; then
# AIX 5 supports IA64
library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so'
......@@ -2793,6 +2812,7 @@ aix4* | aix5*)
fi
shlibpath_var=LIBPATH
fi
hardcode_into_libs=yes
;;
amigaos*)
......@@ -2840,7 +2860,7 @@ cygwin* | mingw* | pw32*)
;;
yes,mingw*)
library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g"`
sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g" -e "s,=/,/,g"`
;;
yes,pw32*)
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
......@@ -2872,6 +2892,18 @@ freebsd1*)
dynamic_linker=no
;;
freebsd*-gnu*)
version_type=linux
need_lib_prefix=no
need_version=no
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
soname_spec='${libname}${release}.so$major'
shlibpath_var=LD_LIBRARY_PATH
shlibpath_overrides_runpath=no
hardcode_into_libs=yes
dynamic_linker='GNU/FreeBSD ld.so'
;;
freebsd*)
objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
version_type=freebsd-$objformat
......@@ -2923,14 +2955,17 @@ hpux9* | hpux10* | hpux11*)
postinstall_cmds='chmod 555 $lib'
;;
irix5* | irix6*)
version_type=irix
irix5* | irix6* | nonstopux*)
case $host_os in
nonstopux*) version_type=nonstopux ;;
*) version_type=irix ;;
esac
need_lib_prefix=no
need_version=no
soname_spec='${libname}${release}.so$major'
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so'
case $host_os in
irix5*)
irix5* | nonstopux*)
libsuff= shlibsuff=
;;
*)
......@@ -3034,11 +3069,13 @@ os2*)
osf3* | osf4* | osf5*)
version_type=osf
need_version=no
soname_spec='${libname}${release}.so'
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
need_lib_prefix=no
soname_spec='${libname}${release}.so$major'
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
shlibpath_var=LD_LIBRARY_PATH
sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
hardcode_into_libs=yes
;;
sco3.2v5*)
......@@ -3081,6 +3118,12 @@ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
case $host_vendor in
sni)
shlibpath_overrides_runpath=no
need_lib_prefix=no
export_dynamic_flag_spec='${wl}-Blargedynsym'
runpath_var=LD_RUN_PATH
;;
siemens)
need_lib_prefix=no
;;
motorola)
need_lib_prefix=no
......@@ -3235,7 +3278,7 @@ if test -f "$ltmain"; then
# Now quote all the things that may contain metacharacters while being
# careful not to overquote the AC_SUBSTed values. We take copies of the
# variables and quote the copies for generation of the libtool script.
for var in echo old_CC old_CFLAGS \
for var in echo old_CC old_CFLAGS SED \
AR AR_FLAGS CC LD LN_S NM SHELL \
reload_flag reload_cmds wl \
pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
......@@ -3297,8 +3340,11 @@ if test -f "$ltmain"; then
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# A sed that does not truncate output.
SED=$lt_SED
# Sed that helps us avoid accidentally triggering echo(1) options like -n.
Xsed="sed -e s/^X//"
Xsed="${SED} -e s/^X//"
# The HP-UX ksh and POSIX shell print the target directory to stdout
# if CDPATH is set.
......@@ -4059,7 +4105,7 @@ test -n "$reload_flag" && reload_flag=" $reload_flag"
# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies
# -- PORTME fill in with the dynamic library characteristics
AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
[AC_CACHE_CHECK([how to recognise dependant libraries],
[AC_CACHE_CHECK([how to recognise dependent libraries],
lt_cv_deplibs_check_method,
[lt_cv_file_magic_cmd='$MAGIC_CMD'
lt_cv_file_magic_test_file=
......@@ -4134,9 +4180,9 @@ hpux10.20*|hpux11*)
lt_cv_file_magic_test_file=/usr/lib/libc.sl
;;
irix5* | irix6*)
irix5* | irix6* | nonstopux*)
case $host_os in
irix5*)
irix5* | nonstopux*)
# this will be overridden with pass_all, but let us keep it just in case
lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
;;
......@@ -4158,7 +4204,7 @@ irix5* | irix6*)
# This must be Linux ELF.
linux-gnu*)
case $host_cpu in
alpha* | hppa* | i*86 | powerpc* | sparc* | ia64* | s390* )
alpha* | hppa* | i*86 | mips | mipsel | powerpc* | sparc* | ia64* | arm* | m68k)
lt_cv_deplibs_check_method=pass_all ;;
*)
# glibc up to 2.1.1 does not perform some relocations on ARM
......@@ -4229,6 +4275,9 @@ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
lt_cv_file_magic_test_file=/lib/libc.so
;;
siemens)
lt_cv_deplibs_check_method=pass_all
;;
esac
;;
esac
......@@ -4294,12 +4343,12 @@ esac
])
# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
# the libltdl convenience library and INCLTDL to the include flags for
# the libltdl convenience library and LTDLINCL to the include flags for
# the libltdl header and adds --enable-ltdl-convenience to the
# configure arguments. Note that LIBLTDL and INCLTDL are not
# configure arguments. Note that LIBLTDL and LTDLINCL are not
# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not
# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed
# with '${top_builddir}/' and INCLTDL will be prefixed with
# with '${top_builddir}/' and LTDLINCL will be prefixed with
# '${top_srcdir}/' (note the single quotes!). If your package is not
# flat and you're not using automake, define top_builddir and
# top_srcdir appropriately in the Makefiles.
......@@ -4311,16 +4360,18 @@ AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
esac
LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
# For backwards non-gettext consistent compatibility...
INCLTDL="$LTDLINCL"
])
# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
# the libltdl installable library and INCLTDL to the include flags for
# the libltdl installable library and LTDLINCL to the include flags for
# the libltdl header and adds --enable-ltdl-install to the configure
# arguments. Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is
# arguments. Note that LIBLTDL and LTDLINCL are not AC_SUBSTed, nor is
# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed
# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will
# be prefixed with '${top_builddir}/' and INCLTDL will be prefixed
# be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed
# with '${top_srcdir}/' (note the single quotes!). If your package is
# not flat and you're not using automake, define top_builddir and
# top_srcdir appropriately in the Makefiles.
......@@ -4338,12 +4389,14 @@ AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
if test x"$enable_ltdl_install" = x"yes"; then
ac_configure_args="$ac_configure_args --enable-ltdl-install"
LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
else
ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
LIBLTDL="-lltdl"
INCLTDL=
LTDLINCL=
fi
# For backwards non-gettext consistent compatibility...
INCLTDL="$LTDLINCL"
])
# old names
......@@ -4358,3 +4411,92 @@ AC_DEFUN([AM_PROG_NM], [AC_PROG_NM])
# This is just to silence aclocal about the macro not being used
ifelse([AC_DISABLE_FAST_INSTALL])
# NOTE: This macro has been submitted for inclusion into #
# GNU Autoconf as AC_PROG_SED. When it is available in #
# a released version of Autoconf we should remove this #
# macro and use it instead. #
# LT_AC_PROG_SED
# --------------
# Check for a fully-functional sed program, that truncates
# as few characters as possible. Prefer GNU sed if found.
AC_DEFUN([LT_AC_PROG_SED],
[AC_MSG_CHECKING([for a sed that does not truncate output])
AC_CACHE_VAL(lt_cv_path_SED,
[# Loop through the user's path and test for sed and gsed.
# Then use that list of sed's as ones to test for truncation.
as_executable_p="test -f"
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_prog in sed gsed; do
for ac_exec_ext in '' $ac_executable_extensions; do
if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
_sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext"
fi
done
done
done
# Create a temporary directory, and hook for its removal unless debugging.
$debug ||
{
trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
trap '{ (exit 1); exit 1; }' 1 2 13 15
}
# Create a (secure) tmp directory for tmp files.
: ${TMPDIR=/tmp}
{
tmp=`(umask 077 && mktemp -d -q "$TMPDIR/sedXXXXXX") 2>/dev/null` &&
test -n "$tmp" && test -d "$tmp"
} ||
{
tmp=$TMPDIR/sed$$-$RANDOM
(umask 077 && mkdir $tmp)
} ||
{
echo "$me: cannot create a temporary directory in $TMPDIR" >&2
{ (exit 1); exit 1; }
}
_max=0
_count=0
# Add /usr/xpg4/bin/sed as it is typically found on Solaris
# along with /bin/sed that truncates output.
for _sed in $_sed_list /usr/xpg4/bin/sed; do
test ! -f ${_sed} && break
cat /dev/null > "$tmp/sed.in"
_count=0
echo ${ECHO_N-$ac_n} "0123456789${ECHO_C-$ac_c}" >"$tmp/sed.in"
# Check for GNU sed and select it if it is found.
if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then
lt_cv_path_SED=${_sed}
break
fi
while true; do
cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp"
mv "$tmp/sed.tmp" "$tmp/sed.in"
cp "$tmp/sed.in" "$tmp/sed.nl"
echo >>"$tmp/sed.nl"
${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break
cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break
# 40000 chars as input seems more than enough
test $_count -gt 10 && break
_count=`expr $_count + 1`
if test $_count -gt $_max; then
_max=$_count
lt_cv_path_SED=$_sed
fi
done
done
rm -rf "$tmp"
])
if test "X$SED" != "X"; then
lt_cv_path_SED=$SED
else
SED=$lt_cv_path_SED
fi
AC_MSG_RESULT([$SED])
])
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: bit.c,v 1.2 2003/07/05 06:20:50 shank Exp $
* $Id: bit.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: bit.h,v 1.2 2003/07/05 06:20:50 shank Exp $
* $Id: bit.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBMAD_BIT_H
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -17,7 +17,7 @@ dnl You should have received a copy of the GNU General Public License
dnl along with this program; if not, write to the Free Software
dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
dnl
AC_REVISION([$Id: configure.ac,v 1.1 2003/07/05 06:20:51 shank Exp $])dnl
AC_REVISION([$Id: configure.ac,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $])dnl
dnl Process this file with autoconf to produce a configure script.
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: decoder.c,v 1.2 2003/07/05 06:20:51 shank Exp $
* $Id: decoder.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: decoder.h,v 1.2 2003/07/05 06:20:51 shank Exp $
* $Id: decoder.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBMAD_DECODER_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: fixed.c,v 1.2 2003/07/05 06:20:51 shank Exp $
* $Id: fixed.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: fixed.h,v 1.2 2003/07/05 06:20:52 shank Exp $
* $Id: fixed.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBMAD_FIXED_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: frame.c,v 1.2 2003/07/05 06:20:52 shank Exp $
* $Id: frame.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: frame.h,v 1.2 2003/07/05 06:20:52 shank Exp $
* $Id: frame.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBMAD_FRAME_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: global.h,v 1.2 2003/07/05 06:20:52 shank Exp $
* $Id: global.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBMAD_GLOBAL_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: huffman.c,v 1.2 2003/07/05 06:20:52 shank Exp $
* $Id: huffman.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: huffman.h,v 1.2 2003/07/05 06:20:52 shank Exp $
* $Id: huffman.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBMAD_HUFFMAN_H
......
......@@ -22,7 +22,7 @@
*
*****************************************************************************
*
* $Id: imdct_l_arm.S,v 1.2 2003/07/05 06:20:52 shank Exp $
* $Id: imdct_l_arm.S,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*
* 2001/03/24: Andre McCurdy <armccurdy@yahoo.co.uk>
* - Corrected PIC unsafe loading of address of 'imdct36_long_karray'
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: imdct_s.dat,v 1.2 2003/07/05 06:20:52 shank Exp $
* $Id: imdct_s.dat,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
/* 0 */ { MAD_F(0x09bd7ca0) /* 0.608761429 */,
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: layer12.c,v 1.2 2003/07/05 06:20:52 shank Exp $
* $Id: layer12.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: layer12.h,v 1.2 2003/07/05 06:20:52 shank Exp $
* $Id: layer12.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBMAD_LAYER12_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: layer3.c,v 1.2 2003/07/05 06:20:52 shank Exp $
* $Id: layer3.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: layer3.h,v 1.2 2003/07/05 06:20:53 shank Exp $
* $Id: layer3.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBMAD_LAYER3_H
......
......@@ -33,7 +33,7 @@ extern "C" {
# define SIZEOF_LONG_LONG 8
/* Id: version.h,v 1.2 2003/07/05 06:20:55 shank Exp */
/* Id: version.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp */
# ifndef LIBMAD_VERSION_H
# define LIBMAD_VERSION_H
......@@ -62,7 +62,7 @@ extern char const mad_build[];
# endif
/* Id: fixed.h,v 1.2 2003/07/05 06:20:52 shank Exp */
/* Id: fixed.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp */
# ifndef LIBMAD_FIXED_H
# define LIBMAD_FIXED_H
......@@ -528,7 +528,7 @@ mad_fixed_t mad_f_div(mad_fixed_t, mad_fixed_t);
# endif
/* Id: bit.h,v 1.2 2003/07/05 06:20:50 shank Exp */
/* Id: bit.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp */
# ifndef LIBMAD_BIT_H
# define LIBMAD_BIT_H
......@@ -557,7 +557,7 @@ unsigned short mad_bit_crc(struct mad_bitptr, unsigned int, unsigned short);
# endif
/* Id: timer.h,v 1.2 2003/07/05 06:20:55 shank Exp */
/* Id: timer.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp */
# ifndef LIBMAD_TIMER_H
# define LIBMAD_TIMER_H
......@@ -639,7 +639,7 @@ void mad_timer_string(mad_timer_t, char *, char const *,
# endif
/* Id: stream.h,v 1.2 2003/07/05 06:20:55 shank Exp */
/* Id: stream.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp */
# ifndef LIBMAD_STREAM_H
# define LIBMAD_STREAM_H
......@@ -727,7 +727,7 @@ char const *mad_stream_errorstr(struct mad_stream const *);
# endif
/* Id: frame.h,v 1.2 2003/07/05 06:20:52 shank Exp */
/* Id: frame.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp */
# ifndef LIBMAD_FRAME_H
# define LIBMAD_FRAME_H
......@@ -824,7 +824,7 @@ void mad_frame_mute(struct mad_frame *);
# endif
/* Id: synth.h,v 1.2 2003/07/05 06:20:55 shank Exp */
/* Id: synth.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp */
# ifndef LIBMAD_SYNTH_H
# define LIBMAD_SYNTH_H
......@@ -873,7 +873,7 @@ void mad_synth_frame(struct mad_synth *, struct mad_frame const *);
# endif
/* Id: decoder.h,v 1.2 2003/07/05 06:20:51 shank Exp */
/* Id: decoder.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp */
# ifndef LIBMAD_DECODER_H
# define LIBMAD_DECODER_H
......
......@@ -16,7 +16,7 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# $Id: mad.h.sed,v 1.2 2003/07/05 06:20:53 shank Exp $
# $Id: mad.h.sed,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
#
/^\/\*$/{
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: minimad.c,v 1.1 2003/07/05 06:20:53 shank Exp $
* $Id: minimad.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# include <stdio.h>
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: qc_table.dat,v 1.2 2003/07/05 06:20:53 shank Exp $
* $Id: qc_table.dat,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
/*
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: rq_table.dat,v 1.2 2003/07/05 06:20:53 shank Exp $
* $Id: rq_table.dat,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
/*
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: sf_table.dat,v 1.2 2003/07/05 06:20:55 shank Exp $
* $Id: sf_table.dat,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
/*
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: stream.c,v 1.2 2003/07/05 06:20:55 shank Exp $
* $Id: stream.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: stream.h,v 1.2 2003/07/05 06:20:55 shank Exp $
* $Id: stream.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBMAD_STREAM_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: synth.c,v 1.2 2003/07/05 06:20:55 shank Exp $
* $Id: synth.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: synth.h,v 1.2 2003/07/05 06:20:55 shank Exp $
* $Id: synth.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBMAD_SYNTH_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: timer.c,v 1.2 2003/07/05 06:20:55 shank Exp $
* $Id: timer.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: timer.h,v 1.2 2003/07/05 06:20:55 shank Exp $
* $Id: timer.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBMAD_TIMER_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: version.c,v 1.2 2003/07/05 06:20:55 shank Exp $
* $Id: version.c,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifdef HAVE_CONFIG_H
......
......@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* $Id: version.h,v 1.2 2003/07/05 06:20:55 shank Exp $
* $Id: version.h,v 1.1.1.1 2003/07/15 15:51:33 shank Exp $
*/
# ifndef LIBMAD_VERSION_H
......
......@@ -155,10 +155,12 @@ int findInList(List * list,char * key,void ** data) {
}
cur = high;
tmpNode = list->nodesArray[cur];
if(strcmp(tmpNode->key,key)==0) {
(*data) = tmpNode->data;
return 1;
if(cur>=0) {
tmpNode = list->nodesArray[cur];
if(strcmp(tmpNode->key,key)==0) {
(*data) = tmpNode->data;
return 1;
}
}
}
else {
......
......@@ -105,17 +105,17 @@ int lsPlaylists(FILE * fp) {
}
time_t isMusic(char * file) {
time_t ret;
time_t ret = 0;
#ifdef HAVE_OGG
if((ret = isOgg(file))>0) return ret;
else
#endif
#ifdef HAVE_FLAC
if((ret = isFlac(file))>0) return ret;
else
#endif
ret = isMp3(file);
#ifdef HAVE_MAD
if((ret = isMp3(file)>0)) return ret;
#endif
return ret;
}
......
......@@ -49,14 +49,14 @@ EOF
fi
# The name of this program.
progname=`$echo "$0" | sed 's%^.*/%%'`
progname=`$echo "$0" | ${SED} 's%^.*/%%'`
modename="$progname"
# Constants.
PROGRAM=ltmain.sh
PACKAGE=libtool
VERSION=1.4.2
TIMESTAMP=" (1.922.2.54 2001/09/11 03:33:37)"
VERSION=1.4.3
TIMESTAMP=" (1.922.2.111 2002/10/23 02:54:36)"
default_mode=
help="Try \`$progname --help' for more information."
......@@ -67,10 +67,19 @@ rm="rm -f"
# Sed substitution that helps us do robust quoting. It backslashifies
# metacharacters that are still active within double-quoted strings.
Xsed='sed -e 1s/^X//'
Xsed="${SED}"' -e 1s/^X//'
sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g'
SP2NL='tr \040 \012'
NL2SP='tr \015\012 \040\040'
# test EBCDIC or ASCII
case `echo A|od -x` in
*[Cc]1*) # EBCDIC based system
SP2NL="tr '\100' '\n'"
NL2SP="tr '\r\n' '\100\100'"
;;
*) # Assume ASCII based system
SP2NL="tr '\040' '\012'"
NL2SP="tr '\015\012' '\040\040'"
;;
esac
# NLS nuisances.
# Only set LANG and LC_ALL to C if already set.
......@@ -144,7 +153,7 @@ do
;;
--config)
sed -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $0
${SED} -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $0
exit 0
;;
......@@ -217,7 +226,7 @@ if test -z "$show_help"; then
# Infer the operation mode.
if test -z "$mode"; then
case $nonopt in
*cc | *++ | gcc* | *-gcc*)
*cc | *++ | gcc* | *-gcc* | g++* | xlc*)
mode=link
for arg
do
......@@ -890,7 +899,7 @@ compiler."
prev=
continue
;;
inst_prefix)
inst_prefix)
inst_prefix_dir="$arg"
prev=
continue
......@@ -997,15 +1006,15 @@ compiler."
;;
-inst-prefix-dir)
prev=inst_prefix
continue
;;
prev=inst_prefix
continue
;;
# The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*
# so, if we see these flags be careful not to treat them like -L
-L[A-Z][A-Z]*:*)
case $with_gcc/$host in
no/*-*-irix*)
no/*-*-irix* | no/*-*-nonstopux*)
compile_command="$compile_command $arg"
finalize_command="$finalize_command $arg"
;;
......@@ -1056,14 +1065,14 @@ compiler."
# These systems don't actually have a C library (as such)
test "X$arg" = "X-lc" && continue
;;
*-*-openbsd*)
*-*-openbsd* | *-*-freebsd*)
# Do not include libc due to us having libc/libc_r.
test "X$arg" = "X-lc" && continue
;;
esac
elif test "X$arg" = "X-lc_r"; then
case $host in
*-*-openbsd*)
*-*-openbsd* | *-*-freebsd*)
# Do not include libc_r directly, use -pthread flag.
continue
;;
......@@ -1202,6 +1211,11 @@ compiler."
continue
;;
-Kthread | -mthreads | -mt | -pthread | -pthreads | -threads | -qthreaded | -kthread )
compiler_flags="$compiler_flags $arg"
continue
;;
# Some other compiler flag.
-* | +*)
# Unknown arguments in both finalize_command and compile_command need
......@@ -1316,11 +1330,11 @@ compiler."
output_objdir="$output_objdir/$objdir"
fi
# Create the object directory.
if test ! -d "$output_objdir"; then
if test ! -d $output_objdir; then
$show "$mkdir $output_objdir"
$run $mkdir $output_objdir
status=$?
if test "$status" -ne 0 && test ! -d "$output_objdir"; then
if test $status -ne 0 && test ! -d $output_objdir; then
exit $status
fi
fi
......@@ -1350,25 +1364,6 @@ compiler."
fi
libs="$libs $deplib"
done
if test "$linkmode" = lib; then
libs="$predeps $libs $compiler_lib_search_path $postdeps"
# Compute libraries that are listed more than once in $predeps
# $postdeps and mark them as special (i.e., whose duplicates are
# not to be eliminated).
pre_post_deps=
if test "X$duplicate_deps" = "Xyes" ; then
for pre_post_dep in $predeps $postdeps; do
case "$pre_post_deps " in
*" $pre_post_dep "*) specialdeplibs="$specialdeplibs $pre_post_deps" ;;
esac
pre_post_deps="$pre_post_deps $pre_post_dep"
done
fi
pre_post_deps=
fi
deplibs=
newdependency_libs=
newlib_search_path=
......@@ -1400,7 +1395,7 @@ compiler."
;;
esac
for pass in $passes; do
if test "$linkmode" = prog; then
if test $linkmode = prog; then
# Determine which files to process
case $pass in
dlopen)
......@@ -1417,11 +1412,11 @@ compiler."
found=no
case $deplib in
-l*)
if test "$linkmode" = oldlib && test "$linkmode" = obj; then
if test $linkmode = oldlib && test $linkmode = obj; then
$echo "$modename: warning: \`-l' is ignored for archives/objects: $deplib" 1>&2
continue
fi
if test "$pass" = conv; then
if test $pass = conv; then
deplibs="$deplib $deplibs"
continue
fi
......@@ -1441,7 +1436,7 @@ compiler."
finalize_deplibs="$deplib $finalize_deplibs"
else
deplibs="$deplib $deplibs"
test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
test $linkmode = lib && newdependency_libs="$deplib $newdependency_libs"
fi
continue
fi
......@@ -1450,16 +1445,16 @@ compiler."
case $linkmode in
lib)
deplibs="$deplib $deplibs"
test "$pass" = conv && continue
test $pass = conv && continue
newdependency_libs="$deplib $newdependency_libs"
newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
;;
prog)
if test "$pass" = conv; then
if test $pass = conv; then
deplibs="$deplib $deplibs"
continue
fi
if test "$pass" = scan; then
if test $pass = scan; then
deplibs="$deplib $deplibs"
newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
else
......@@ -1474,7 +1469,7 @@ compiler."
continue
;; # -L
-R*)
if test "$pass" = link; then
if test $pass = link; then
dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'`
# Make sure the xrpath contains only unique directories.
case "$xrpath " in
......@@ -1487,7 +1482,7 @@ compiler."
;;
*.la) lib="$deplib" ;;
*.$libext)
if test "$pass" = conv; then
if test $pass = conv; then
deplibs="$deplib $deplibs"
continue
fi
......@@ -1495,10 +1490,12 @@ compiler."
lib)
if test "$deplibs_check_method" != pass_all; then
echo
echo "*** Warning: This library needs some functionality provided by $deplib."
echo "*** Warning: Trying to link with static lib archive $deplib."
echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a"
echo "*** shared version of the library, which you do not appear to have."
echo "*** shared version of the library, which you do not appear to have"
echo "*** because the file extensions .$libext of this argument makes me believe"
echo "*** that it is just a static archive that I should not used here."
else
echo
echo "*** Warning: Linking the shared library $output against the"
......@@ -1508,7 +1505,7 @@ compiler."
continue
;;
prog)
if test "$pass" != link; then
if test $pass != link; then
deplibs="$deplib $deplibs"
else
compile_deplibs="$deplib $compile_deplibs"
......@@ -1519,7 +1516,7 @@ compiler."
esac # linkmode
;; # *.$libext
*.lo | *.$objext)
if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
if test $pass = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
# If there is no dlopen support or we're linking statically,
# we need to preload.
newdlprefiles="$newdlprefiles $deplib"
......@@ -1535,14 +1532,14 @@ compiler."
continue
;;
esac # case $deplib
if test "$found" = yes || test -f "$lib"; then :
if test $found = yes || test -f "$lib"; then :
else
$echo "$modename: cannot find the library \`$lib'" 1>&2
exit 1
fi
# Check to see that this really is a libtool archive.
if (sed -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
if (${SED} -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
else
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
exit 1
......@@ -1569,13 +1566,13 @@ compiler."
if test "$linkmode,$pass" = "lib,link" ||
test "$linkmode,$pass" = "prog,scan" ||
{ test "$linkmode" = oldlib && test "$linkmode" = obj; }; then
{ test $linkmode = oldlib && test $linkmode = obj; }; then
# Add dl[pre]opened files of deplib
test -n "$dlopen" && dlfiles="$dlfiles $dlopen"
test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen"
fi
if test "$pass" = conv; then
if test $pass = conv; then
# Only check for convenience libraries
deplibs="$lib $deplibs"
if test -z "$libdir"; then
......@@ -1596,7 +1593,7 @@ compiler."
fi
tmp_libs="$tmp_libs $deplib"
done
elif test "$linkmode" != prog && test "$linkmode" != lib; then
elif test $linkmode != prog && test $linkmode != lib; then
$echo "$modename: \`$lib' is not a convenience library" 1>&2
exit 1
fi
......@@ -1614,7 +1611,7 @@ compiler."
fi
# This library was specified with -dlopen.
if test "$pass" = dlopen; then
if test $pass = dlopen; then
if test -z "$libdir"; then
$echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2
exit 1
......@@ -1663,7 +1660,7 @@ compiler."
name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
# This library was specified with -dlpreopen.
if test "$pass" = dlpreopen; then
if test $pass = dlpreopen; then
if test -z "$libdir"; then
$echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2
exit 1
......@@ -1682,7 +1679,7 @@ compiler."
if test -z "$libdir"; then
# Link the convenience library
if test "$linkmode" = lib; then
if test $linkmode = lib; then
deplibs="$dir/$old_library $deplibs"
elif test "$linkmode,$pass" = "prog,link"; then
compile_deplibs="$dir/$old_library $compile_deplibs"
......@@ -1693,7 +1690,7 @@ compiler."
continue
fi
if test "$linkmode" = prog && test "$pass" != link; then
if test $linkmode = prog && test $pass != link; then
newlib_search_path="$newlib_search_path $ladir"
deplibs="$lib $deplibs"
......@@ -1709,7 +1706,7 @@ compiler."
-L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test
esac
# Need to link against all dependency_libs?
if test "$linkalldeplibs" = yes; then
if test $linkalldeplibs = yes; then
deplibs="$deplib $deplibs"
else
# Need to hardcode shared library paths
......@@ -1732,7 +1729,7 @@ compiler."
# Link against this shared library
if test "$linkmode,$pass" = "prog,link" ||
{ test "$linkmode" = lib && test "$hardcode_into_libs" = yes; }; then
{ test $linkmode = lib && test $hardcode_into_libs = yes; }; then
# Hardcode the library path.
# Skip directories that are in the system default run-time
# search path.
......@@ -1754,7 +1751,7 @@ compiler."
esac
;;
esac
if test "$linkmode" = prog; then
if test $linkmode = prog; then
# We need to hardcode the library path
if test -n "$shlibpath_var"; then
# Make sure the rpath contains only unique directories.
......@@ -1804,8 +1801,8 @@ compiler."
# Make a new name for the extract_expsyms_cmds to use
soroot="$soname"
soname=`echo $soroot | sed -e 's/^.*\///'`
newlib="libimp-`echo $soname | sed 's/^lib//;s/\.dll$//'`.a"
soname=`echo $soroot | ${SED} -e 's/^.*\///'`
newlib="libimp-`echo $soname | ${SED} 's/^lib//;s/\.dll$//'`.a"
# If the library has no export list, then create one now
if test -f "$output_objdir/$soname-def"; then :
......@@ -1836,9 +1833,9 @@ compiler."
# make sure the library variables are pointing to the new library
dir=$output_objdir
linklib=$newlib
fi # test -n "$old_archive_from_expsyms_cmds"
fi # test -n $old_archive_from_expsyms_cmds
if test "$linkmode" = prog || test "$mode" != relink; then
if test $linkmode = prog || test "$mode" != relink; then
add_shlibpath=
add_dir=
add=
......@@ -1865,6 +1862,14 @@ compiler."
add="$dir/$linklib"
elif test "$hardcode_minus_L" = yes; then
add_dir="-L$dir"
# Try looking first in the location we're being installed to.
if test -n "$inst_prefix_dir"; then
case "$libdir" in
[\/]*)
add_dir="-L$inst_prefix_dir$libdir $add_dir"
;;
esac
fi
add="-l$name"
elif test "$hardcode_shlibpath_var" = yes; then
add_shlibpath="$dir"
......@@ -1887,7 +1892,7 @@ compiler."
*) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;;
esac
fi
if test "$linkmode" = prog; then
if test $linkmode = prog; then
test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs"
test -n "$add" && compile_deplibs="$add $compile_deplibs"
else
......@@ -1904,7 +1909,7 @@ compiler."
fi
fi
if test "$linkmode" = prog || test "$mode" = relink; then
if test $linkmode = prog || test "$mode" = relink; then
add_shlibpath=
add_dir=
add=
......@@ -1912,16 +1917,7 @@ compiler."
if test "$hardcode_direct" = yes; then
add="$libdir/$linklib"
elif test "$hardcode_minus_L" = yes; then
# Try looking first in the location we're being installed to.
add_dir=
if test -n "$inst_prefix_dir"; then
case "$libdir" in
[\\/]*)
add_dir="-L$inst_prefix_dir$libdir"
;;
esac
fi
add_dir="$add_dir -L$libdir"
add_dir="-L$libdir"
add="-l$name"
elif test "$hardcode_shlibpath_var" = yes; then
case :$finalize_shlibpath: in
......@@ -1931,20 +1927,19 @@ compiler."
add="-l$name"
else
# We cannot seem to hardcode it, guess we'll fake it.
add_dir="-L$libdir"
# Try looking first in the location we're being installed to.
add_dir=
if test -n "$inst_prefix_dir"; then
case "$libdir" in
[\\/]*)
add_dir="-L$inst_prefix_dir$libdir"
[\/]*)
add_dir="-L$inst_prefix_dir$libdir $add_dir"
;;
esac
fi
add_dir="$add_dir -L$libdir"
add="-l$name"
fi
if test "$linkmode" = prog; then
if test $linkmode = prog; then
test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
else
......@@ -1952,7 +1947,7 @@ compiler."
test -n "$add" && deplibs="$add $deplibs"
fi
fi
elif test "$linkmode" = prog; then
elif test $linkmode = prog; then
if test "$alldeplibs" = yes &&
{ test "$deplibs_check_method" = pass_all ||
{ test "$build_libtool_libs" = yes &&
......@@ -1982,13 +1977,14 @@ compiler."
# Just print a warning and add the library to dependency_libs so
# that the program can be linked against the static library.
echo
echo "*** Warning: This library needs some functionality provided by $lib."
echo "*** Warning: This system can not link to static lib archive $lib."
echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a"
echo "*** shared version of the library, which you do not appear to have."
if test "$module" = yes; then
echo "*** Therefore, libtool will create a static module, that should work "
echo "*** as long as the dlopening application is linked with the -dlopen flag."
echo "*** But as you try to build a module library, libtool will still create "
echo "*** a static module, that should work as long as the dlopening application"
echo "*** is linked with the -dlopen flag to resolve symbols at runtime."
if test -z "$global_symbol_pipe"; then
echo
echo "*** However, this would only work if libtool was able to extract symbol"
......@@ -2011,10 +2007,10 @@ compiler."
fi
fi # link shared/static library?
if test "$linkmode" = lib; then
if test $linkmode = lib; then
if test -n "$dependency_libs" &&
{ test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes ||
test "$link_static" = yes; }; then
{ test $hardcode_into_libs != yes || test $build_old_libs = yes ||
test $link_static = yes; }; then
# Extract -R from dependency_libs
temp_deplibs=
for libdir in $dependency_libs; do
......@@ -2045,7 +2041,7 @@ compiler."
tmp_libs="$tmp_libs $deplib"
done
if test "$link_all_deplibs" != no; then
if test $link_all_deplibs != no; then
# Add the search paths of all dependency libraries
for deplib in $dependency_libs; do
case $deplib in
......@@ -2067,7 +2063,7 @@ compiler."
if grep "^installed=no" $deplib > /dev/null; then
path="-L$absdir/$objdir"
else
eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
if test -z "$libdir"; then
$echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
exit 1
......@@ -2088,15 +2084,15 @@ compiler."
fi # link_all_deplibs != no
fi # linkmode = lib
done # for deplib in $libs
if test "$pass" = dlpreopen; then
if test $pass = dlpreopen; then
# Link the dlpreopened libraries before other libraries
for deplib in $save_deplibs; do
deplibs="$deplib $deplibs"
done
fi
if test "$pass" != dlopen; then
test "$pass" != scan && dependency_libs="$newdependency_libs"
if test "$pass" != conv; then
if test $pass != dlopen; then
test $pass != scan && dependency_libs="$newdependency_libs"
if test $pass != conv; then
# Make sure lib_search_path contains only unique directories.
lib_search_path=
for dir in $newlib_search_path; do
......@@ -2154,7 +2150,7 @@ compiler."
deplibs=
fi
done # for pass
if test "$linkmode" = prog; then
if test $linkmode = prog; then
dlfiles="$newdlfiles"
dlprefiles="$newdlprefiles"
fi
......@@ -2231,7 +2227,7 @@ compiler."
fi
set dummy $rpath
if test "$#" -gt 2; then
if test $# -gt 2; then
$echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2
fi
install_libdir="$2"
......@@ -2272,7 +2268,7 @@ compiler."
# Check that each of the things are valid numbers.
case $current in
[0-9]*) ;;
0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;;
*)
$echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2
$echo "$modename: \`$vinfo' is not valid version information" 1>&2
......@@ -2281,7 +2277,7 @@ compiler."
esac
case $revision in
[0-9]*) ;;
0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;;
*)
$echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2
$echo "$modename: \`$vinfo' is not valid version information" 1>&2
......@@ -2290,7 +2286,7 @@ compiler."
esac
case $age in
[0-9]*) ;;
0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;;
*)
$echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2
$echo "$modename: \`$vinfo' is not valid version information" 1>&2
......@@ -2298,7 +2294,7 @@ compiler."
;;
esac
if test "$age" -gt "$current"; then
if test $age -gt $current; then
$echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2
$echo "$modename: \`$vinfo' is not valid version information" 1>&2
exit 1
......@@ -2331,16 +2327,21 @@ compiler."
versuffix=".$current";
;;
irix)
irix | nonstopux)
major=`expr $current - $age + 1`
verstring="sgi$major.$revision"
case $version_type in
nonstopux) verstring_prefix=nonstopux ;;
*) verstring_prefix=sgi ;;
esac
verstring="$verstring_prefix$major.$revision"
# Add in all the interfaces that we are compatible with.
loop=$revision
while test "$loop" -ne 0; do
while test $loop != 0; do
iface=`expr $revision - $loop`
loop=`expr $loop - 1`
verstring="sgi$major.$iface:$verstring"
verstring="$verstring_prefix$major.$iface:$verstring"
done
# Before this point, $major must not contain `.'.
......@@ -2354,13 +2355,13 @@ compiler."
;;
osf)
major=`expr $current - $age`
major=.`expr $current - $age`
versuffix=".$current.$age.$revision"
verstring="$current.$age.$revision"
# Add in all the interfaces that we are compatible with.
loop=$age
while test "$loop" -ne 0; do
while test $loop != 0; do
iface=`expr $current - $loop`
loop=`expr $loop - 1`
verstring="$verstring:${iface}.0"
......@@ -2446,9 +2447,9 @@ compiler."
# Eliminate all temporary directories.
for path in $notinst_path; do
lib_search_path=`echo "$lib_search_path " | sed -e 's% $path % %g'`
deplibs=`echo "$deplibs " | sed -e 's% -L$path % %g'`
dependency_libs=`echo "$dependency_libs " | sed -e 's% -L$path % %g'`
lib_search_path=`echo "$lib_search_path " | ${SED} -e 's% $path % %g'`
deplibs=`echo "$deplibs " | ${SED} -e 's% -L$path % %g'`
dependency_libs=`echo "$dependency_libs " | ${SED} -e 's% -L$path % %g'`
done
if test -n "$xrpath"; then
......@@ -2461,7 +2462,7 @@ compiler."
*) finalize_rpath="$finalize_rpath $libdir" ;;
esac
done
if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then
if test $hardcode_into_libs != yes || test $build_old_libs = yes; then
dependency_libs="$temp_xrpath $dependency_libs"
fi
fi
......@@ -2499,12 +2500,12 @@ compiler."
*-*-netbsd*)
# Don't link with libc until the a.out ld.so is fixed.
;;
*-*-openbsd*)
*-*-openbsd* | *-*-freebsd*)
# Do not include libc due to us having libc/libc_r.
;;
*)
# Add libc to deplibs on all other systems if necessary.
if test "$build_libtool_need_lc" = "yes"; then
if test $build_libtool_need_lc = "yes"; then
deplibs="$deplibs -lc"
fi
;;
......@@ -2545,7 +2546,7 @@ compiler."
EOF
$rm conftest
$CC -o conftest conftest.c $deplibs
if test "$?" -eq 0 ; then
if test $? -eq 0 ; then
ldd_output=`ldd conftest`
for i in $deplibs; do
name="`expr $i : '-l\(.*\)'`"
......@@ -2560,18 +2561,20 @@ EOF
else
droppeddeps=yes
echo
echo "*** Warning: This library needs some functionality provided by $i."
echo "*** Warning: dynamic linker does not accept needed library $i."
echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a"
echo "*** shared version of the library, which you do not appear to have."
echo "*** shared version of the library, which I believe you do not have"
echo "*** because a test_compile did reveal that the linker did not use it for"
echo "*** its dynamic dependency list that programs get resolved with at runtime."
fi
else
newdeplibs="$newdeplibs $i"
fi
done
else
# Error occured in the first compile. Let's try to salvage the situation:
# Compile a seperate program for each library.
# Error occured in the first compile. Let's try to salvage
# the situation: Compile a separate program for each library.
for i in $deplibs; do
name="`expr $i : '-l\(.*\)'`"
# If $name is empty we are operating on a -L argument.
......@@ -2579,7 +2582,7 @@ EOF
$rm conftest
$CC -o conftest conftest.c $i
# Did it work?
if test "$?" -eq 0 ; then
if test $? -eq 0 ; then
ldd_output=`ldd conftest`
libname=`eval \\$echo \"$libname_spec\"`
deplib_matches=`eval \\$echo \"$library_names_spec\"`
......@@ -2590,10 +2593,12 @@ EOF
else
droppeddeps=yes
echo
echo "*** Warning: This library needs some functionality provided by $i."
echo "*** Warning: dynamic linker does not accept needed library $i."
echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a"
echo "*** shared version of the library, which you do not appear to have."
echo "*** shared version of the library, which you do not appear to have"
echo "*** because a test_compile did reveal that the linker did not use this one"
echo "*** as a dynamic dependency that programs can get resolved with at runtime."
fi
else
droppeddeps=yes
......@@ -2632,14 +2637,14 @@ EOF
# but so what?
potlib="$potent_lib"
while test -h "$potlib" 2>/dev/null; do
potliblink=`ls -ld $potlib | sed 's/.* -> //'`
potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'`
case $potliblink in
[\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;
*) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";;
esac
done
if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \
| sed 10q \
| ${SED} 10q \
| egrep "$file_magic_regex" > /dev/null; then
newdeplibs="$newdeplibs $a_deplib"
a_deplib=""
......@@ -2650,10 +2655,17 @@ EOF
if test -n "$a_deplib" ; then
droppeddeps=yes
echo
echo "*** Warning: This library needs some functionality provided by $a_deplib."
echo "*** Warning: linker path does not have real file for library $a_deplib."
echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a"
echo "*** shared version of the library, which you do not appear to have."
echo "*** shared version of the library, which you do not appear to have"
echo "*** because I did check the linker path looking for a file starting"
if test -z "$potlib" ; then
echo "*** with $libname but no candidates were found. (...for file magic test)"
else
echo "*** with $libname and none of the candidates passed a file format test"
echo "*** using a file magic. Last file checked: $potlib"
fi
fi
else
# Add a -L argument.
......@@ -2672,8 +2684,9 @@ EOF
for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
for potent_lib in $potential_libs; do
potlib="$potent_lib" # see symlink-check below in file_magic test
if eval echo \"$potent_lib\" 2>/dev/null \
| sed 10q \
| ${SED} 10q \
| egrep "$match_pattern_regex" > /dev/null; then
newdeplibs="$newdeplibs $a_deplib"
a_deplib=""
......@@ -2684,10 +2697,17 @@ EOF
if test -n "$a_deplib" ; then
droppeddeps=yes
echo
echo "*** Warning: This library needs some functionality provided by $a_deplib."
echo "*** Warning: linker path does not have real file for library $a_deplib."
echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a"
echo "*** shared version of the library, which you do not appear to have."
echo "*** shared version of the library, which you do not appear to have"
echo "*** because I did check the linker path looking for a file starting"
if test -z "$potlib" ; then
echo "*** with $libname but no candidates were found. (...for regex pattern test)"
else
echo "*** with $libname and none of the candidates passed a file format test"
echo "*** using a regex pattern. Last file checked: $potlib"
fi
fi
else
# Add a -L argument.
......@@ -2750,7 +2770,7 @@ EOF
echo "*** automatically added whenever a program is linked with this library"
echo "*** or is declared to -dlopen it."
if test "$allow_undefined" = no; then
if test $allow_undefined = no; then
echo
echo "*** Since this library must not contain undefined symbols,"
echo "*** because either the platform does not support them or"
......@@ -2777,7 +2797,7 @@ EOF
# Test again, we may have decided not to build it any more
if test "$build_libtool_libs" = yes; then
if test "$hardcode_into_libs" = yes; then
if test $hardcode_into_libs = yes; then
# Hardcode the library paths
hardcode_libdirs=
dep_rpath=
......@@ -2908,7 +2928,7 @@ EOF
$show "mkdir $gentop"
$run mkdir "$gentop"
status=$?
if test "$status" -ne 0 && test ! -d "$gentop"; then
if test $status -ne 0 && test ! -d "$gentop"; then
exit $status
fi
generated="$generated $gentop"
......@@ -2927,7 +2947,7 @@ EOF
$show "mkdir $xdir"
$run mkdir "$xdir"
status=$?
if test "$status" -ne 0 && test ! -d "$xdir"; then
if test $status -ne 0 && test ! -d "$xdir"; then
exit $status
fi
$show "(cd $xdir && $AR x $xabs)"
......@@ -2952,7 +2972,18 @@ EOF
if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
eval cmds=\"$archive_expsym_cmds\"
else
save_deplibs="$deplibs"
for conv in $convenience; do
tmp_deplibs=
for test_deplib in $deplibs; do
if test "$test_deplib" != "$conv"; then
tmp_deplibs="$tmp_deplibs $test_deplib"
fi
done
deplibs="$tmp_deplibs"
done
eval cmds=\"$archive_cmds\"
deplibs="$save_deplibs"
fi
save_ifs="$IFS"; IFS='~'
for cmd in $cmds; do
......@@ -3047,7 +3078,7 @@ EOF
$show "mkdir $gentop"
$run mkdir "$gentop"
status=$?
if test "$status" -ne 0 && test ! -d "$gentop"; then
if test $status -ne 0 && test ! -d "$gentop"; then
exit $status
fi
generated="$generated $gentop"
......@@ -3066,7 +3097,7 @@ EOF
$show "mkdir $xdir"
$run mkdir "$xdir"
status=$?
if test "$status" -ne 0 && test ! -d "$xdir"; then
if test $status -ne 0 && test ! -d "$xdir"; then
exit $status
fi
$show "(cd $xdir && $AR x $xabs)"
......@@ -3151,7 +3182,7 @@ EOF
prog)
case $host in
*cygwin*) output=`echo $output | sed -e 's,.exe$,,;s,$,.exe,'` ;;
*cygwin*) output=`echo $output | ${SED} -e 's,.exe$,,;s,$,.exe,'` ;;
esac
if test -n "$vinfo"; then
$echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2
......@@ -3173,6 +3204,13 @@ EOF
# On Rhapsody replace the C library is the System framework
compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
case $host in
*darwin*)
# Don't allow lazy linking, it breaks C++ global constructors
compile_command="$compile_command ${wl}-bind_at_load"
finalize_command="$finalize_command ${wl}-bind_at_load"
;;
esac
;;
esac
......@@ -3339,9 +3377,9 @@ extern \"C\" {
if test -z "$export_symbols"; then
export_symbols="$output_objdir/$output.exp"
$run $rm $export_symbols
$run eval "sed -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
$run eval "${SED} -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
else
$run eval "sed -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"'
$run eval "${SED} -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"'
$run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T'
$run eval 'mv "$nlist"T "$nlist"'
fi
......@@ -3349,7 +3387,7 @@ extern \"C\" {
for arg in $dlprefiles; do
$show "extracting global C symbols from \`$arg'"
name=`echo "$arg" | sed -e 's%^.*/%%'`
name=`echo "$arg" | ${SED} -e 's%^.*/%%'`
$run eval 'echo ": $name " >> "$nlist"'
$run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
done
......@@ -3364,7 +3402,13 @@ extern \"C\" {
fi
# Try sorting and uniquifying the output.
if grep -v "^: " < "$nlist" | sort +2 | uniq > "$nlist"S; then
if grep -v "^: " < "$nlist" |
if sort -k 3 </dev/null >/dev/null 2>&1; then
sort -k 3
else
sort +2
fi |
uniq > "$nlist"S; then
:
else
grep -v "^: " < "$nlist" > "$nlist"S
......@@ -3461,7 +3505,7 @@ static const void *lt_preloaded_setup() {
finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`
fi
if test "$need_relink" = no || test "$build_libtool_libs" != yes; then
if test $need_relink = no || test "$build_libtool_libs" != yes; then
# Replace the output file specification.
compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
link_command="$compile_command$compile_rpath"
......@@ -3606,7 +3650,7 @@ static const void *lt_preloaded_setup() {
# win32 will think the script is a binary if it has
# a .exe suffix, so we strip it off here.
case $output in
*.exe) output=`echo $output|sed 's,.exe$,,'` ;;
*.exe) output=`echo $output|${SED} 's,.exe$,,'` ;;
esac
# test for cygwin because mv fails w/o .exe extensions
case $host in
......@@ -3630,7 +3674,7 @@ static const void *lt_preloaded_setup() {
# Sed substitution that helps us do robust quoting. It backslashifies
# metacharacters that are still active within double-quoted strings.
Xsed='sed -e 1s/^X//'
Xsed="${SED}"' -e 1s/^X//'
sed_quote_subst='$sed_quote_subst'
# The HP-UX ksh and POSIX shell print the target directory to stdout
......@@ -3668,7 +3712,7 @@ else
test \"x\$thisdir\" = \"x\$file\" && thisdir=.
# Follow symbolic links until we get to the real thisdir.
file=\`ls -ld \"\$file\" | sed -n 's/.*-> //p'\`
file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\`
while test -n \"\$file\"; do
destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\`
......@@ -3681,7 +3725,7 @@ else
fi
file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\`
file=\`ls -ld \"\$thisdir/\$file\" | sed -n 's/.*-> //p'\`
file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\`
done
# Try to get the absolute directory name.
......@@ -3695,7 +3739,7 @@ else
progdir=\"\$thisdir/$objdir\"
if test ! -f \"\$progdir/\$program\" || \\
{ file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | sed 1q\`; \\
{ file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\
test \"X\$file\" != \"X\$progdir/\$program\"; }; then
file=\"\$\$-\$program\"
......@@ -3741,7 +3785,7 @@ else
$shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
# Some systems cannot cope with colon-terminated $shlibpath_var
# The second colon is a workaround for a bug in BeOS R4 sed
# The second colon is a workaround for a bug in BeOS R4 ${SED}
$shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\`
export $shlibpath_var
......@@ -3829,7 +3873,7 @@ fi\
$show "mkdir $gentop"
$run mkdir "$gentop"
status=$?
if test "$status" -ne 0 && test ! -d "$gentop"; then
if test $status -ne 0 && test ! -d "$gentop"; then
exit $status
fi
generated="$generated $gentop"
......@@ -3849,7 +3893,7 @@ fi\
$show "mkdir $xdir"
$run mkdir "$xdir"
status=$?
if test "$status" -ne 0 && test ! -d "$xdir"; then
if test $status -ne 0 && test ! -d "$xdir"; then
exit $status
fi
$show "(cd $xdir && $AR x $xabs)"
......@@ -3933,7 +3977,7 @@ fi\
case $deplib in
*.la)
name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
if test -z "$libdir"; then
$echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
exit 1
......@@ -3947,7 +3991,7 @@ fi\
newdlfiles=
for lib in $dlfiles; do
name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
if test -z "$libdir"; then
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
exit 1
......@@ -3958,7 +4002,7 @@ fi\
newdlprefiles=
for lib in $dlprefiles; do
name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
if test -z "$libdir"; then
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
exit 1
......@@ -4006,7 +4050,7 @@ dlpreopen='$dlprefiles'
# Directory that this library needs to be installed in:
libdir='$install_libdir'"
if test "$installed" = no && test "$need_relink" = yes; then
if test "$installed" = no && test $need_relink = yes; then
$echo >> $output "\
relink_command=\"$relink_command\""
fi
......@@ -4142,7 +4186,7 @@ relink_command=\"$relink_command\""
# Not a directory, so check to see that there is only one file specified.
set dummy $files
if test "$#" -gt 2; then
if test $# -gt 2; then
$echo "$modename: \`$dest' is not a directory" 1>&2
$echo "$help" 1>&2
exit 1
......@@ -4182,7 +4226,7 @@ relink_command=\"$relink_command\""
*.la)
# Check to see that this really is a libtool archive.
if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
else
$echo "$modename: \`$file' is not a valid libtool archive" 1>&2
$echo "$help" 1>&2
......@@ -4217,23 +4261,23 @@ relink_command=\"$relink_command\""
dir="$dir$objdir"
if test -n "$relink_command"; then
# Determine the prefix the user has applied to our future dir.
inst_prefix_dir=`$echo "$destdir" | sed "s%$libdir\$%%"`
# Don't allow the user to place us outside of our expected
# location b/c this prevents finding dependent libraries that
# are installed to the same prefix.
if test "$inst_prefix_dir" = "$destdir"; then
$echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
exit 1
fi
if test -n "$inst_prefix_dir"; then
# Stick the inst_prefix_dir data into the link command.
relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
else
relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%%"`
fi
# Determine the prefix the user has applied to our future dir.
inst_prefix_dir=`$echo "$destdir" | sed "s%$libdir\$%%"`
# Don't allow the user to place us outside of our expected
# location b/c this prevents finding dependent libraries that
# are installed to the same prefix.
if test "$inst_prefix_dir" = "$destdir"; then
$echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2
exit 1
fi
if test -n "$inst_prefix_dir"; then
# Stick the inst_prefix_dir data into the link command.
relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
else
relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%%"`
fi
$echo "$modename: warning: relinking \`$file'" 1>&2
$show "$relink_command"
......@@ -4262,7 +4306,7 @@ relink_command=\"$relink_command\""
$run eval "$striplib $destdir/$realname" || exit $?
fi
if test "$#" -gt 0; then
if test $# -gt 0; then
# Delete the old symlinks, and create new ones.
for linkname
do
......@@ -4349,19 +4393,27 @@ relink_command=\"$relink_command\""
fi
# Do a test to see if this is really a libtool program.
if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
case $host in
*cygwin*|*mingw*)
wrapper=`echo $file | ${SED} -e 's,.exe$,,'`
;;
*)
wrapper=$file
;;
esac
if (${SED} -e '4q' $wrapper | egrep "^# Generated by .*$PACKAGE")>/dev/null 2>&1; then
notinst_deplibs=
relink_command=
# If there is no directory component, then add one.
case $file in
*/* | *\\*) . $file ;;
*) . ./$file ;;
*/* | *\\*) . $wrapper ;;
*) . ./$wrapper ;;
esac
# Check the variables that should have been set.
if test -z "$notinst_deplibs"; then
$echo "$modename: invalid libtool wrapper script \`$file'" 1>&2
$echo "$modename: invalid libtool wrapper script \`$wrapper'" 1>&2
exit 1
fi
......@@ -4386,8 +4438,8 @@ relink_command=\"$relink_command\""
relink_command=
# If there is no directory component, then add one.
case $file in
*/* | *\\*) . $file ;;
*) . ./$file ;;
*/* | *\\*) . $wrapper ;;
*) . ./$wrapper ;;
esac
outputname=
......@@ -4395,11 +4447,7 @@ relink_command=\"$relink_command\""
if test "$finalize" = yes && test -z "$run"; then
tmpdir="/tmp"
test -n "$TMPDIR" && tmpdir="$TMPDIR"
tmpdir=`mktemp -d $tmpdir/libtool-XXXXXX 2> /dev/null`
if test $? = 0 ; then :
else
tmpdir="$tmpdir/libtool-$$"
fi
tmpdir="$tmpdir/libtool-$$"
if $mkdir -p "$tmpdir" && chmod 700 "$tmpdir"; then :
else
$echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2
......@@ -4439,7 +4487,7 @@ relink_command=\"$relink_command\""
destfile=$destfile.exe
;;
*:*.exe)
destfile=`echo $destfile | sed -e 's,.exe$,,'`
destfile=`echo $destfile | ${SED} -e 's,.exe$,,'`
;;
esac
;;
......@@ -4524,7 +4572,7 @@ relink_command=\"$relink_command\""
fi
# Exit here if they wanted silent mode.
test "$show" = : && exit 0
test "$show" = ":" && exit 0
echo "----------------------------------------------------------------------"
echo "Libraries have been installed in:"
......@@ -4587,7 +4635,7 @@ relink_command=\"$relink_command\""
case $file in
*.la)
# Check to see that this really is a libtool archive.
if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
else
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
$echo "$help" 1>&2
......@@ -4658,7 +4706,7 @@ relink_command=\"$relink_command\""
-*) ;;
*)
# Do a test to see if this is really a libtool program.
if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
if (${SED} -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
# If there is no directory component, then add one.
case $file in
*/* | *\\*) . $file ;;
......@@ -4740,10 +4788,10 @@ relink_command=\"$relink_command\""
objdir="$dir/$objdir"
fi
name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
test "$mode" = uninstall && objdir="$dir"
test $mode = uninstall && objdir="$dir"
# Remember objdir for removal later, being careful to avoid duplicates
if test "$mode" = clean; then
if test $mode = clean; then
case " $rmdirs " in
*" $objdir "*) ;;
*) rmdirs="$rmdirs $objdir" ;;
......@@ -4767,7 +4815,7 @@ relink_command=\"$relink_command\""
case $name in
*.la)
# Possibly a libtool archive, so verify it.
if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
. $dir/$name
# Delete the libtool libraries and symlinks.
......@@ -4775,9 +4823,9 @@ relink_command=\"$relink_command\""
rmfiles="$rmfiles $objdir/$n"
done
test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library"
test "$mode" = clean && rmfiles="$rmfiles $objdir/$name $objdir/${name}i"
test $mode = clean && rmfiles="$rmfiles $objdir/$name $objdir/${name}i"
if test "$mode" = uninstall; then
if test $mode = uninstall; then
if test -n "$library_names"; then
# Do each command in the postuninstall commands.
eval cmds=\"$postuninstall_cmds\"
......@@ -4786,7 +4834,7 @@ relink_command=\"$relink_command\""
IFS="$save_ifs"
$show "$cmd"
$run eval "$cmd"
if test "$?" -ne 0 && test "$rmforce" != yes; then
if test $? != 0 && test "$rmforce" != yes; then
exit_status=1
fi
done
......@@ -4801,7 +4849,7 @@ relink_command=\"$relink_command\""
IFS="$save_ifs"
$show "$cmd"
$run eval "$cmd"
if test "$?" -ne 0 && test "$rmforce" != yes; then
if test $? != 0 && test "$rmforce" != yes; then
exit_status=1
fi
done
......@@ -4821,8 +4869,8 @@ relink_command=\"$relink_command\""
*)
# Do a test to see if this is a libtool program.
if test "$mode" = clean &&
(sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
if test $mode = clean &&
(${SED} -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
relink_command=
. $dir/$file
......
......@@ -16,12 +16,18 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifdef HAVE_MAD
#include "mp3_decode.h"
#include "player.h"
#include "command.h"
#include "utils.h"
#include "audio.h"
#ifdef USE_MPD_MAD
#include "libmad/mad.h"
#else
#include <mad.h>
#endif
#include "buffer.h"
#include <stdio.h>
......@@ -311,12 +317,12 @@ int mp3_decode(char * file, FILE * in, FILE * out) {
cb->begin = 0;
cb->end = 0;
cb->wrap = 0;
cb->finished = 0;
sa.sa_handler = SIG_IGN;
sigaction(SIGPIPE,&sa,NULL);
sa.sa_handler = mp3_decode_parentSigHandler;
sigaction(SIGCHLD,&sa,NULL);
sa.sa_handler = mp3_decode_parentSigHandler;
sigaction(SIGTERM,&sa,NULL);
fflush(NULL);
......@@ -330,14 +336,8 @@ int mp3_decode(char * file, FILE * in, FILE * out) {
while(mp3Read(&data,cb)!=DECODE_BREAK);
while(cb->begin==cb->end && cb->wrap) usleep(100);
cb->times[cb->end] = -1;
cb->end++;
if(cb->end>=BUFFERED_CHUNKS) {
cb->end = 0;
cb->wrap = 1;
}
cb->finished = 1;
mp3DecodeDataFinalize(&data);
exit(0);
......@@ -383,19 +383,34 @@ int mp3_decode(char * file, FILE * in, FILE * out) {
fprintf(out,"%s %f %f\n",PLAYER_TIME,last_tell,time_total);
fflush(out);
while(mp3_decode_pid>0 && !cb->wrap && cb->end-cb->begin<buffered_before_play) {
while(mp3_decode_pid>0 && !cb->wrap && cb->end-cb->begin<buffered_before_play && !cb->finished) {
usleep(1000);
}
while(!quit) {
if((cb->begin!=cb->end || cb->wrap) && !pause) {
if(pause || checkInput%CHECK_INPUT_FREQ==0) {
FD_ZERO(&fds);
FD_SET(fileno(in),&fds);
fflush(in);
if(select(fileno(in)+1,&fds,NULL,NULL,&tv)) {
myFgets(input,INPUT_BUFFER_SIZE,in);
if(strcasecmp(PLAYER_PAUSE,input)==0) {
fprintf(out,"%s\n",PLAYER_PAUSE_GOT);
fflush(out);
pause = !pause;
}
}
checkInput = 1;
}
checkInput++;
if(pause) usleep(100);
else if(cb->begin!=cb->end || cb->wrap) {
if(currentPlayChunk==0) elapsed = cb->times[cb->begin];
ao_play(mp3_device,cb->chunks[cb->begin]+currentPlayChunk*PLAY_SIZE,PLAY_SIZE);
currentPlayChunk++;
if(currentPlayChunk>=playsPerChunk) {
currentPlayChunk=0;
cb->begin++;
if(cb->times[cb->begin]<0) quit = 1;
if(cb->begin>=BUFFERED_CHUNKS) {
cb->begin = 0;
cb->wrap = 0;
......@@ -407,25 +422,10 @@ int mp3_decode(char * file, FILE * in, FILE * out) {
fflush(out);
}
}
else if(mp3_decode_pid<=0 && (cb->begin==cb->end && !cb->wrap)) {
else if(mp3_decode_pid<=0 || cb->finished) {
quit = 1;
}
else usleep(200);
if(pause || checkInput%CHECK_INPUT_FREQ==0) {
FD_ZERO(&fds);
FD_SET(fileno(in),&fds);
fflush(in);
if(select(fileno(in)+1,&fds,NULL,NULL,&tv)) {
myFgets(input,INPUT_BUFFER_SIZE,in);
if(strcasecmp(PLAYER_PAUSE,input)==0) {
fprintf(out,"%s\n",PLAYER_PAUSE_GOT);
fflush(out);
pause = !pause;
}
}
checkInput = 1;
}
checkInput++;
}
pid = mp3_decode_pid;
......@@ -438,3 +438,5 @@ int mp3_decode(char * file, FILE * in, FILE * out) {
return 0;
}
#endif
......@@ -4,6 +4,8 @@ playlist_directory "/home/shank/playlists"
log_file "/home/shank/mpd.log"
error_file "/home/shank/mpd.error"
connection_timeout "60"
mixer_device "/dev/mixer"
max_connections "5"
max_playlist_length "4096"
buffer_before_play "25%"
stop_on_error "yes"
......@@ -99,12 +99,12 @@ int ogg_decode(char * file, FILE * in, FILE * out) {
cb->begin = 0;
cb->end = 0;
cb->wrap = 0;
cb->finished = 0;
sa.sa_handler = SIG_IGN;
sigaction(SIGPIPE,&sa,NULL);
sa.sa_handler = ogg_decode_parentSigHandler;
sigaction(SIGCHLD,&sa,NULL);
sa.sa_handler = ogg_decode_parentSigHandler;
sigaction(SIGTERM,&sa,NULL);
......@@ -139,16 +139,10 @@ int ogg_decode(char * file, FILE * in, FILE * out) {
else usleep(100);
}
while(cb->begin==cb->end && cb->wrap) usleep(100);
cb->times[cb->end] = -1;
cb->end++;
if(cb->end>=BUFFERED_CHUNKS) {
cb->end = 0;
cb->wrap = 1;
}
ov_clear(&vf);
cb->finished = 1;
exit(0);
/* END OF CHILD */
......@@ -192,19 +186,34 @@ int ogg_decode(char * file, FILE * in, FILE * out) {
fprintf(out,"%s %f %f\n",PLAYER_TIME,last_tell,time_total);
fflush(out);
while(ogg_decode_pid>0 && !cb->wrap && cb->end-cb->begin<buffered_before_play) {
while(ogg_decode_pid>0 && !cb->wrap && cb->end-cb->begin<buffered_before_play && !cb->finished) {
usleep(1000);
}
while(!quit) {
if((cb->begin!=cb->end || cb->wrap) && !pause) {
if(pause || checkInput%CHECK_INPUT_FREQ==0) {
FD_ZERO(&fds);
FD_SET(fileno(in),&fds);
fflush(in);
if(select(fileno(in)+1,&fds,NULL,NULL,&tv)) {
myFgets(input,INPUT_BUFFER_SIZE,in);
if(strcasecmp(PLAYER_PAUSE,input)==0) {
fprintf(out,"%s\n",PLAYER_PAUSE_GOT);
fflush(out);
pause = !pause;
}
}
checkInput = 1;
}
checkInput++;
if(pause) usleep(100);
else if(cb->begin!=cb->end || cb->wrap) {
if(currentPlayChunk==0) elapsed = cb->times[cb->begin];
ao_play(ogg_device,cb->chunks[cb->begin]+currentPlayChunk*PLAY_SIZE,PLAY_SIZE);
currentPlayChunk++;
if(currentPlayChunk>=playsPerChunk) {
currentPlayChunk=0;
cb->begin++;
if(cb->times[cb->begin]<0) quit = 1;
if(cb->begin>=BUFFERED_CHUNKS) {
cb->begin = 0;
cb->wrap = 0;
......@@ -216,25 +225,10 @@ int ogg_decode(char * file, FILE * in, FILE * out) {
fflush(out);
}
}
else if(ogg_decode_pid<=0 && (cb->begin==cb->end && !cb->wrap)) {
else if(ogg_decode_pid<=0 || cb->finished) {
quit = 1;
}
else usleep(200);
if(pause || checkInput%CHECK_INPUT_FREQ==0) {
FD_ZERO(&fds);
FD_SET(fileno(in),&fds);
fflush(in);
if(select(fileno(in)+1,&fds,NULL,NULL,&tv)) {
myFgets(input,INPUT_BUFFER_SIZE,in);
if(strcasecmp(PLAYER_PAUSE,input)==0) {
fprintf(out,"%s\n",PLAYER_PAUSE_GOT);
fflush(out);
pause = !pause;
}
}
checkInput = 1;
}
checkInput++;
}
pid = ogg_decode_pid;
......
......@@ -17,7 +17,9 @@
*/
#include "player.h"
#ifdef HAVE_MAD
#include "mp3_decode.h"
#endif
#ifdef HAVE_OGG
#include "ogg_decode.h"
#endif
......@@ -127,7 +129,7 @@ int playerInit(char * file, int playerType) {
if(player_pid==0) {
FILE * in;
FILE * out;
int ret;
int ret = 0;
close(listenSocket);
freeAllInterfaces();
......@@ -137,11 +139,13 @@ int playerInit(char * file, int playerType) {
in = fdopen(fd_send[1],"r");
out = fdopen(fd_recv[1],"w");
#ifdef HAVE_MAD
if(playerType==PLAYER_TYPE_MP3 && (ret=mp3_decode(rmp2amp(file),in,out))!=0) {
fclose(in);
fclose(out);
exit(ret);
}
#endif
#ifdef HAVE_OGG
if(playerType==PLAYER_TYPE_OGG && (ret=ogg_decode(rmp2amp(file),in,out))!=0) {
fclose(in);
......@@ -150,7 +154,7 @@ int playerInit(char * file, int playerType) {
}
#endif
#ifdef HAVE_FLAC
if(playerType==PLAYER_TYPE_FLAC && (ret=flac_decode(rmp2amp(file),in,out)==0)) {
if(playerType==PLAYER_TYPE_FLAC && (ret=flac_decode(rmp2amp(file),in,out)!=0)) {
fclose(in);
fclose(out);
exit(ret);
......
......@@ -36,10 +36,6 @@
#define PLAYER_EXIT_ERROR_AUDIO 2
#define PLAYER_EXIT_ERROR_SYSTEM 3
extern int player_totalTime;
extern int player_elapsedTime;
extern int player_state;
int playerPlay(FILE * fp, char * file);
int playerPause(FILE * fp);
......
......@@ -46,6 +46,7 @@
Playlist playlist;
int playlist_state = PLAYLIST_STATE_STOP;
int playlist_max_length;
int playlist_stopOnError;
void incrPlaylistVersion() {
static unsigned long max = ((unsigned long)1<<BITS_FOR_VERSION)-1;
......@@ -66,6 +67,17 @@ void initPlaylist() {
exit(-1);
}
if(strcmp("yes",(getConf())[CONF_STOP_ON_ERROR])==0) {
playlist_stopOnError = 1;
}
else if(strcmp("no",(getConf())[CONF_STOP_ON_ERROR])==0) {
playlist_stopOnError = 0;
}
else {
fprintf(stderr,"stop_on_error \"%s\" is not yes or no\n",(getConf())[CONF_STOP_ON_ERROR]);
exit(-1);
}
playlist.songs = malloc(sizeof(Song *)*playlist_max_length);
memset(playlist.songs,(int)NULL,sizeof(char *)*playlist_max_length);
......@@ -214,7 +226,9 @@ int playPlaylist(FILE * fp, int song) {
void nextSongInPlaylistIfPlayerStopped() {
if(playlist_state==PLAYLIST_STATE_PLAY && getPlayerState()==PLAYER_STATE_STOP) {
if(strlen(getPlayerError())) stopPlaylist(stderr);
if(playlist_stopOnError && strlen(getPlayerError())) {
stopPlaylist(stderr);
}
else nextSongInPlaylist(stderr);
}
}
......
......@@ -44,21 +44,23 @@ Song * newSong(char * file) {
#ifdef HAVE_OGG
if((song->mtime = isOgg(file))) {
song->tag = oggCommentDup(file);
return song;
}
else
#endif
#ifdef HAVE_FLAC
if((song->mtime = isFlac(file))) {
if(!(song->tag = flacVorbisCommentDup(file))) {
song->tag = id3Dup(file);
}
return song;
}
else
#endif
{
song->mtime = isMp3(file);
#ifdef HAVE_MAD
if(song->mtime = isMp3(file)) {
song->tag = id3Dup(file);
return song;
}
#endif
return song;
}
......@@ -119,7 +121,7 @@ void writeSongInfoFromList(FILE * fp, SongList * list) {
while(tempNode!=NULL) {
fprintf(fp,"%s%s\n",SONG_KEY,tempNode->key);
printSongInfo(fp,(Song *)tempNode->data);
fprintf(fp,"%s%li\n",SONG_MTIME,((Song *)tempNode->data)->mtime);
fprintf(fp,"%s%li\n",SONG_MTIME,(long)((Song *)tempNode->data)->mtime);
tempNode = tempNode->nextNode;
}
......@@ -185,22 +187,27 @@ void readSongInfoIntoList(FILE * fp, SongList * list) {
int updateSongInfo(Song * song) {
if(song->tag) freeMpdTag(song->tag);
if((song->mtime = isMp3(song->file))) song->tag = id3Dup(song->file);
#ifdef HAVE_MAD
if((song->mtime = isMp3(song->file))) {
song->tag = id3Dup(song->file);
return 0;
}
#endif
#ifdef HAVE_OGG
else if((song->mtime = isOgg(song->file))) {
if((song->mtime = isOgg(song->file))) {
song->tag = oggCommentDup(song->file);
return 0;
}
#endif
#ifdef HAVE_FLAC
else if((song->mtime = isFlac(song->file))) {
if((song->mtime = isFlac(song->file))) {
if(!(song->tag = flacVorbisCommentDup(song->file))) {
song->tag = id3Dup(song->file);
}
return 0;
}
#endif
else return -1;
return 0;
return -1;
}
Song * songDup(Song * song) {
......
......@@ -32,8 +32,13 @@
#include <FLAC/file_decoder.h>
#include <FLAC/metadata.h>
#endif
#ifdef HAVE_ID3TAG
#ifdef USE_MPD_ID3TAG
#include "libid3tag/id3tag.h"
#else
#include <id3tag.h>
#endif
#endif
void printMpdTag(FILE * fp, MpdTag * tag) {
if(tag->artist) myfprintf(fp,"Artist: %s\n",tag->artist);
......@@ -42,6 +47,7 @@ void printMpdTag(FILE * fp, MpdTag * tag) {
if(tag->title) myfprintf(fp,"Title: %s\n",tag->title);
}
#ifdef HAVE_ID3TAG
char * getID3Info(struct id3_tag * tag, char * id) {
struct id3_frame const * frame;
id3_ucs4_t const * ucs4;
......@@ -64,9 +70,11 @@ char * getID3Info(struct id3_tag * tag, char * id) {
return latin1;
}
#endif
MpdTag * id3Dup(char * filename) {
MpdTag * ret = NULL;
#ifdef HAVE_ID3TAG
struct id3_file * file;
struct id3_tag * tag;
char * str;
......@@ -109,7 +117,7 @@ MpdTag * id3Dup(char * filename) {
if(!ret->title) ret->title = strdup("");
if(!ret->track) ret->track = strdup("");
}
#endif
return ret;
}
......
......@@ -24,12 +24,12 @@
#include <unistd.h>
#include <sys/ioctl.h>
#include <fcntl.h>
#ifndef NO_LINUX_OSS_MIXER
#include <linux/soundcard.h>
#ifndef NO_OSS_MIXER
#include <sys/soundcard.h>
#endif
int getVolumeLevel() {
#ifndef NO_LINUX_OSS_MIXER
#ifndef NO_OSS_MIXER
char * device = (getConf())[CONF_MIXER_DEVICE];
int fd;
int left, right, level;
......@@ -61,7 +61,7 @@ int getVolumeLevel() {
}
int changeVolumeLevel(FILE * fp, int change) {
#ifndef NO_LINUX_OSS_MIXER
#ifndef NO_OSS_MIXER
int current;
int new;
int level;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment