diff -Nru em8300-0.16.4/aclocal.m4 em8300-0.18.0/aclocal.m4 --- em8300-0.16.4/aclocal.m4 2008-02-04 22:52:16.000000000 +0000 +++ em8300-0.18.0/aclocal.m4 2010-06-28 18:16:34.000000000 +0100 @@ -1,7 +1,7 @@ -# generated automatically by aclocal 1.9.6 -*- Autoconf -*- +# generated automatically by aclocal 1.11.1 -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, -# 2005 Free Software Foundation, Inc. +# 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -11,6 +11,14 @@ # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. +m4_ifndef([AC_AUTOCONF_VERSION], + [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl +m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.65],, +[m4_warning([this file was generated for autoconf 2.65. +You have another version of autoconf. It may work, but is not guaranteed to. +If you have problems, you may need to regenerate the build system entirely. +To do so, use the procedure documented by the package, typically `autoreconf'.])]) + # Configure paths for GTK+ # Owen Taylor 1997-2001 @@ -98,7 +106,7 @@ int major, minor, micro; char *tmp_version; - system ("touch conf.gtktest"); + fclose (fopen ("conf.gtktest", "w")); /* HP/UX 9 (%@#!) writes to sscanf strings */ tmp_version = g_strdup("$min_gtk_version"); @@ -208,7 +216,7 @@ rm -f conf.gtktest ]) -# Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc. +# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -218,14 +226,31 @@ # ---------------------------- # Automake X.Y traces this macro to ensure aclocal.m4 has been # generated from the m4 files accompanying Automake X.Y. -AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version="1.9"]) +# (This private macro should not be called outside this file.) +AC_DEFUN([AM_AUTOMAKE_VERSION], +[am__api_version='1.11' +dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to +dnl require some minimum version. Point them to the right macro. +m4_if([$1], [1.11.1], [], + [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl +]) + +# _AM_AUTOCONF_VERSION(VERSION) +# ----------------------------- +# aclocal traces this macro to find the Autoconf version. +# This is a private macro too. Using m4_define simplifies +# the logic in aclocal, which can simply ignore this definition. +m4_define([_AM_AUTOCONF_VERSION], []) # AM_SET_CURRENT_AUTOMAKE_VERSION # ------------------------------- -# Call AM_AUTOMAKE_VERSION so it can be traced. -# This function is AC_REQUIREd by AC_INIT_AUTOMAKE. +# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. +# This function is AC_REQUIREd by AM_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], - [AM_AUTOMAKE_VERSION([1.9.6])]) +[AM_AUTOMAKE_VERSION([1.11.1])dnl +m4_ifndef([AC_AUTOCONF_VERSION], + [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl +_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- @@ -282,14 +307,14 @@ # AM_CONDITIONAL -*- Autoconf -*- -# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005 +# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 7 +# serial 9 # AM_CONDITIONAL(NAME, SHELL-CONDITION) # ------------------------------------- @@ -298,8 +323,11 @@ [AC_PREREQ(2.52)dnl ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl -AC_SUBST([$1_TRUE]) -AC_SUBST([$1_FALSE]) +AC_SUBST([$1_TRUE])dnl +AC_SUBST([$1_FALSE])dnl +_AM_SUBST_NOTMAKE([$1_TRUE])dnl +_AM_SUBST_NOTMAKE([$1_FALSE])dnl +m4_define([_AM_COND_VALUE_$1], [$2])dnl if $2; then $1_TRUE= $1_FALSE='#' @@ -313,15 +341,14 @@ Usually this means the macro was only invoked conditionally.]]) fi])]) - -# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 8 +# serial 10 # There are a few dirty hacks below to avoid letting `AC_PROG_CC' be # written in clear, in which case automake, when reading aclocal.m4, @@ -349,6 +376,7 @@ ifelse([$1], CC, [depcc="$CC" am_compiler_list=], [$1], CXX, [depcc="$CXX" am_compiler_list=], [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'], + [$1], UPC, [depcc="$UPC" am_compiler_list=], [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'], [depcc="$$1" am_compiler_list=]) @@ -377,6 +405,16 @@ if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` fi + am__universal=false + m4_case([$1], [CC], + [case " $depcc " in #( + *\ -arch\ *\ -arch\ *) am__universal=true ;; + esac], + [CXX], + [case " $depcc " in #( + *\ -arch\ *\ -arch\ *) am__universal=true ;; + esac]) + for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and @@ -394,7 +432,17 @@ done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf + # We check with `-c' and `-o' for the sake of the "dashmstdout" + # mode. It turns out that the SunPro C++ compiler does not properly + # handle `-M -o', and we need to detect this. Also, some Intel + # versions had trouble with output in subdirs + am__obj=sub/conftest.${OBJEXT-o} + am__minus_obj="-o $am__obj" case $depmode in + gcc) + # This depmode causes a compiler race in universal mode. + test "$am__universal" = false || continue + ;; nosideeffect) # after this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested @@ -404,18 +452,23 @@ break fi ;; + msvisualcpp | msvcmsys) + # This compiler won't grok `-c -o', but also, the minuso test has + # not run yet. These depmodes are late enough in the game, and + # so weak that their functioning should not be impacted. + am__obj=conftest.${OBJEXT-o} + am__minus_obj= + ;; none) break ;; esac - # We check with `-c' and `-o' for the sake of the "dashmstdout" - # mode. It turns out that the SunPro C++ compiler does not properly - # handle `-M -o', and we need to detect this. if depmode=$depmode \ - source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \ + source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ - $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ + $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && + grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && - grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && + grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message @@ -466,61 +519,74 @@ AMDEPBACKSLASH='\' fi AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) -AC_SUBST([AMDEPBACKSLASH]) +AC_SUBST([AMDEPBACKSLASH])dnl +_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl ]) # Generate code to set up dependency tracking. -*- Autoconf -*- -# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -#serial 3 +#serial 5 # _AM_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], -[for mf in $CONFIG_FILES; do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named `Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # So let's grep whole file. - if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then - dirpart=`AS_DIRNAME("$mf")` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running `make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n 's/^U = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`AS_DIRNAME(["$file"])` - AS_MKDIR_P([$dirpart/$fdir]) - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" +[{ + # Autoconf 2.62 quotes --file arguments for eval, but not when files + # are listed without --file. Let's play safe and only enable the eval + # if we detect the quoting. + case $CONFIG_FILES in + *\'*) eval set x "$CONFIG_FILES" ;; + *) set x $CONFIG_FILES ;; + esac + shift + for mf + do + # Strip MF so we end up with the name of the file. + mf=`echo "$mf" | sed -e 's/:.*$//'` + # Check whether this is an Automake generated Makefile or not. + # We used to match only the files named `Makefile.in', but + # some people rename them; so instead we look at the file content. + # Grep'ing the first line is not enough: some people post-process + # each Makefile.in and add a new line on top of each file to say so. + # Grep'ing the whole file is not good either: AIX grep has a line + # limit of 2048, but all sed's we know have understand at least 4000. + if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then + dirpart=`AS_DIRNAME("$mf")` + else + continue + fi + # Extract the definition of DEPDIR, am__include, and am__quote + # from the Makefile without running `make'. + DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` + test -z "$DEPDIR" && continue + am__include=`sed -n 's/^am__include = //p' < "$mf"` + test -z "am__include" && continue + am__quote=`sed -n 's/^am__quote = //p' < "$mf"` + # When using ansi2knr, U may be empty or an underscore; expand it + U=`sed -n 's/^U = //p' < "$mf"` + # Find all dependency output files, they are included files with + # $(DEPDIR) in their names. We invoke sed twice because it is the + # simplest approach to changing $(DEPDIR) to its actual value in the + # expansion. + for file in `sed -n " + s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do + # Make sure the directory exists. + test -f "$dirpart/$file" && continue + fdir=`AS_DIRNAME(["$file"])` + AS_MKDIR_P([$dirpart/$fdir]) + # echo "creating $dirpart/$file" + echo '# dummy' > "$dirpart/$file" + done done -done +} ])# _AM_OUTPUT_DEPENDENCY_COMMANDS @@ -537,28 +603,16 @@ [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) ]) -# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005 -# Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# serial 8 - -# AM_CONFIG_HEADER is obsolete. It has been replaced by AC_CONFIG_HEADERS. -AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)]) - # Do all the work for Automake. -*- Autoconf -*- -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 -# Free Software Foundation, Inc. +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, +# 2005, 2006, 2008, 2009 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 12 +# serial 16 # This macro actually does too much. Some checks are only needed if # your package does certain things. But this isn't really a big deal. @@ -575,16 +629,20 @@ # arguments mandatory, and then we can depend on a new Autoconf # release and drop the old call support. AC_DEFUN([AM_INIT_AUTOMAKE], -[AC_PREREQ([2.58])dnl +[AC_PREREQ([2.62])dnl dnl Autoconf wants to disallow AM_ names. We explicitly allow dnl the ones we care about. m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl AC_REQUIRE([AC_PROG_INSTALL])dnl -# test to see if srcdir already configured -if test "`cd $srcdir && pwd`" != "`pwd`" && - test -f $srcdir/config.status; then - AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) +if test "`cd $srcdir && pwd`" != "`pwd`"; then + # Use -I$(srcdir) only when $(srcdir) != ., so that make's output + # is not polluted with repeated "-I." + AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl + # test to see if srcdir already configured + if test -f $srcdir/config.status; then + AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) + fi fi # test whether we have cygpath @@ -604,6 +662,9 @@ AC_SUBST([PACKAGE], [$1])dnl AC_SUBST([VERSION], [$2])], [_AM_SET_OPTIONS([$1])dnl +dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. +m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,, + [m4_fatal([AC_INIT should be called with package and version arguments])])dnl AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl @@ -619,8 +680,8 @@ AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}) AM_MISSING_PROG(AUTOHEADER, autoheader) AM_MISSING_PROG(MAKEINFO, makeinfo) -AM_PROG_INSTALL_SH -AM_PROG_INSTALL_STRIP +AC_REQUIRE([AM_PROG_INSTALL_SH])dnl +AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl AC_REQUIRE([AM_PROG_MKDIR_P])dnl # We need awk for the "check" target. The system "awk" is bad on # some platforms. @@ -628,20 +689,37 @@ AC_REQUIRE([AC_PROG_MAKE_SET])dnl AC_REQUIRE([AM_SET_LEADING_DOT])dnl _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], - [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], - [_AM_PROG_TAR([v7])])]) + [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], + [_AM_PROG_TAR([v7])])]) _AM_IF_OPTION([no-dependencies],, [AC_PROVIDE_IFELSE([AC_PROG_CC], - [_AM_DEPENDENCIES(CC)], - [define([AC_PROG_CC], - defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl + [_AM_DEPENDENCIES(CC)], + [define([AC_PROG_CC], + defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl AC_PROVIDE_IFELSE([AC_PROG_CXX], - [_AM_DEPENDENCIES(CXX)], - [define([AC_PROG_CXX], - defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl + [_AM_DEPENDENCIES(CXX)], + [define([AC_PROG_CXX], + defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl +AC_PROVIDE_IFELSE([AC_PROG_OBJC], + [_AM_DEPENDENCIES(OBJC)], + [define([AC_PROG_OBJC], + defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl ]) +_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl +dnl The `parallel-tests' driver may need to know about EXEEXT, so add the +dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro +dnl is hooked onto _AC_COMPILER_EXEEXT early, see below. +AC_CONFIG_COMMANDS_PRE(dnl +[m4_provide_if([_AM_COMPILER_EXEEXT], + [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl ]) +dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion. Do not +dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further +dnl mangled by Autoconf and run in a shell conditional statement. +m4_define([_AC_COMPILER_EXEEXT], +m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])]) + # When config.status generates a header, we must update the stamp-h file. # This file resides in the same directory as the config header @@ -652,18 +730,19 @@ # our stamp files there. AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], [# Compute $1's index in $config_headers. +_am_arg=$1 _am_stamp_count=1 for _am_header in $config_headers :; do case $_am_header in - $1 | $1:* ) + $_am_arg | $_am_arg:* ) break ;; * ) _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done -echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count]) +echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) -# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. +# Copyright (C) 2001, 2003, 2005, 2008 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -674,7 +753,14 @@ # Define $install_sh. AC_DEFUN([AM_PROG_INSTALL_SH], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl -install_sh=${install_sh-"$am_aux_dir/install-sh"} +if test x"${install_sh}" != xset; then + case $am_aux_dir in + *\ * | *\ *) + install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; + *) + install_sh="\${SHELL} $am_aux_dir/install-sh" + esac +fi AC_SUBST(install_sh)]) # Copyright (C) 2003, 2005 Free Software Foundation, Inc. @@ -698,15 +784,55 @@ rmdir .tst 2>/dev/null AC_SUBST([am__leading_dot])]) +# Add --enable-maintainer-mode option to configure. -*- Autoconf -*- +# From Jim Meyering + +# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008 +# Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# serial 5 + +# AM_MAINTAINER_MODE([DEFAULT-MODE]) +# ---------------------------------- +# Control maintainer-specific portions of Makefiles. +# Default is to disable them, unless `enable' is passed literally. +# For symmetry, `disable' may be passed as well. Anyway, the user +# can override the default with the --enable/--disable switch. +AC_DEFUN([AM_MAINTAINER_MODE], +[m4_case(m4_default([$1], [disable]), + [enable], [m4_define([am_maintainer_other], [disable])], + [disable], [m4_define([am_maintainer_other], [enable])], + [m4_define([am_maintainer_other], [enable]) + m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])]) +AC_MSG_CHECKING([whether to am_maintainer_other maintainer-specific portions of Makefiles]) + dnl maintainer-mode's default is 'disable' unless 'enable' is passed + AC_ARG_ENABLE([maintainer-mode], +[ --][am_maintainer_other][-maintainer-mode am_maintainer_other make rules and dependencies not useful + (and sometimes confusing) to the casual installer], + [USE_MAINTAINER_MODE=$enableval], + [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes])) + AC_MSG_RESULT([$USE_MAINTAINER_MODE]) + AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes]) + MAINT=$MAINTAINER_MODE_TRUE + AC_SUBST([MAINT])dnl +] +) + +AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE]) + # Check to see how 'make' treats includes. -*- Autoconf -*- -# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc. +# Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 3 +# serial 4 # AM_MAKE_INCLUDE() # ----------------- @@ -715,7 +841,7 @@ [am_make=${MAKE-make} cat > confinc << 'END' am__doit: - @echo done + @echo this is the am__doit target .PHONY: am__doit END # If we don't find an include directive, just comment out the code. @@ -725,24 +851,24 @@ _am_result=none # First try GNU make style include. echo "include confinc" > confmf -# We grep out `Entering directory' and `Leaving directory' -# messages which can occur if `w' ends up in MAKEFLAGS. -# In particular we don't look at `^make:' because GNU make might -# be invoked under some other name (usually "gmake"), in which -# case it prints its new name instead of `make'. -if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then - am__include=include - am__quote= - _am_result=GNU -fi +# Ignore all kinds of additional output from `make'. +case `$am_make -s -f confmf 2> /dev/null` in #( +*the\ am__doit\ target*) + am__include=include + am__quote= + _am_result=GNU + ;; +esac # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf - if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then - am__include=.include - am__quote="\"" - _am_result=BSD - fi + case `$am_make -s -f confmf 2> /dev/null` in #( + *the\ am__doit\ target*) + am__include=.include + am__quote="\"" + _am_result=BSD + ;; + esac fi AC_SUBST([am__include]) AC_SUBST([am__quote]) @@ -752,14 +878,14 @@ # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- -# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2005 +# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 4 +# serial 6 # AM_MISSING_PROG(NAME, PROGRAM) # ------------------------------ @@ -775,7 +901,15 @@ # If it does, set am_missing_run to use it, otherwise, to nothing. AC_DEFUN([AM_MISSING_HAS_RUN], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl -test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing" +AC_REQUIRE_AUX_FILE([missing])dnl +if test x"${MISSING+set}" != xset; then + case $am_aux_dir in + *\ * | *\ *) + MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; + *) + MISSING="\${SHELL} $am_aux_dir/missing" ;; + esac +fi # Use eval to expand $SHELL if eval "$MISSING --run true"; then am_missing_run="$MISSING --run " @@ -785,7 +919,7 @@ fi ]) -# Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. +# Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -793,70 +927,33 @@ # AM_PROG_MKDIR_P # --------------- -# Check whether `mkdir -p' is supported, fallback to mkinstalldirs otherwise. -# -# Automake 1.8 used `mkdir -m 0755 -p --' to ensure that directories -# created by `make install' are always world readable, even if the -# installer happens to have an overly restrictive umask (e.g. 077). -# This was a mistake. There are at least two reasons why we must not -# use `-m 0755': -# - it causes special bits like SGID to be ignored, -# - it may be too restrictive (some setups expect 775 directories). -# -# Do not use -m 0755 and let people choose whatever they expect by -# setting umask. -# -# We cannot accept any implementation of `mkdir' that recognizes `-p'. -# Some implementations (such as Solaris 8's) are not thread-safe: if a -# parallel make tries to run `mkdir -p a/b' and `mkdir -p a/c' -# concurrently, both version can detect that a/ is missing, but only -# one can create it and the other will error out. Consequently we -# restrict ourselves to GNU make (using the --version option ensures -# this.) +# Check for `mkdir -p'. AC_DEFUN([AM_PROG_MKDIR_P], -[if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then - # We used to keeping the `.' as first argument, in order to - # allow $(mkdir_p) to be used without argument. As in - # $(mkdir_p) $(somedir) - # where $(somedir) is conditionally defined. However this is wrong - # for two reasons: - # 1. if the package is installed by a user who cannot write `.' - # make install will fail, - # 2. the above comment should most certainly read - # $(mkdir_p) $(DESTDIR)$(somedir) - # so it does not work when $(somedir) is undefined and - # $(DESTDIR) is not. - # To support the latter case, we have to write - # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir), - # so the `.' trick is pointless. - mkdir_p='mkdir -p --' -else - # On NextStep and OpenStep, the `mkdir' command does not - # recognize any option. It will interpret all options as - # directories to create, and then abort because `.' already - # exists. - for d in ./-p ./--version; - do - test -d $d && rmdir $d - done - # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists. - if test -f "$ac_aux_dir/mkinstalldirs"; then - mkdir_p='$(mkinstalldirs)' - else - mkdir_p='$(install_sh) -d' - fi -fi -AC_SUBST([mkdir_p])]) +[AC_PREREQ([2.60])dnl +AC_REQUIRE([AC_PROG_MKDIR_P])dnl +dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P, +dnl while keeping a definition of mkdir_p for backward compatibility. +dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile. +dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of +dnl Makefile.ins that do not define MKDIR_P, so we do our own +dnl adjustment using top_builddir (which is defined more often than +dnl MKDIR_P). +AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl +case $mkdir_p in + [[\\/$]]* | ?:[[\\/]]*) ;; + */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;; +esac +]) # Helper functions for option handling. -*- Autoconf -*- -# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc. +# Copyright (C) 2001, 2002, 2003, 2005, 2008 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 3 +# serial 4 # _AM_MANGLE_OPTION(NAME) # ----------------------- @@ -873,7 +970,7 @@ # ---------------------------------- # OPTIONS is a space-separated list of Automake options. AC_DEFUN([_AM_SET_OPTIONS], -[AC_FOREACH([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) +[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) # ------------------------------------------- @@ -883,14 +980,14 @@ # Check to make sure that the build environment is sane. -*- Autoconf -*- -# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005 +# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 4 +# serial 5 # AM_SANITY_CHECK # --------------- @@ -899,16 +996,29 @@ # Just in case sleep 1 echo timestamp > conftest.file +# Reject unsafe characters in $srcdir or the absolute working directory +# name. Accept space and tab only in the latter. +am_lf=' +' +case `pwd` in + *[[\\\"\#\$\&\'\`$am_lf]]*) + AC_MSG_ERROR([unsafe absolute working directory name]);; +esac +case $srcdir in + *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) + AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);; +esac + # Do `set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( - set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null` + set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` if test "$[*]" = "X"; then # -L didn't work. - set X `ls -t $srcdir/configure conftest.file` + set X `ls -t "$srcdir/configure" conftest.file` fi rm -f conftest.file if test "$[*]" != "X $srcdir/configure conftest.file" \ @@ -958,9 +1068,28 @@ if test "$cross_compiling" != no; then AC_CHECK_TOOL([STRIP], [strip], :) fi -INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s" +INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) +# Copyright (C) 2006, 2008 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# serial 2 + +# _AM_SUBST_NOTMAKE(VARIABLE) +# --------------------------- +# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. +# This macro is traced by Automake. +AC_DEFUN([_AM_SUBST_NOTMAKE]) + +# AM_SUBST_NOTMAKE(VARIABLE) +# --------------------------- +# Public sister of _AM_SUBST_NOTMAKE. +AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) + # Check how to create a tarball. -*- Autoconf -*- # Copyright (C) 2004, 2005 Free Software Foundation, Inc. diff -Nru em8300-0.16.4/autotools/config.guess em8300-0.18.0/autotools/config.guess --- em8300-0.16.4/autotools/config.guess 2008-02-04 22:52:21.000000000 +0000 +++ em8300-0.18.0/autotools/config.guess 2010-06-28 18:16:35.000000000 +0100 @@ -1,10 +1,10 @@ #! /bin/sh # Attempt to guess a canonical system name. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, -# Inc. +# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 +# Free Software Foundation, Inc. -timestamp='2006-07-02' +timestamp='2009-06-10' # 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 @@ -56,8 +56,8 @@ GNU config.guess ($timestamp) Originally written by Per Bothner. -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 -Free Software Foundation, Inc. +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, +2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -161,6 +161,7 @@ arm*) machine=arm-unknown ;; sh3el) machine=shl-unknown ;; sh3eb) machine=sh-unknown ;; + sh5el) machine=sh5le-unknown ;; *) machine=${UNAME_MACHINE_ARCH}-unknown ;; esac # The Operating System including object format, if it has switched @@ -169,7 +170,7 @@ 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 + | grep -q __ELF__ then # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). # Return netbsd for either. FIX? @@ -323,14 +324,30 @@ case `/usr/bin/uname -p` in sparc) echo sparc-icl-nx7; exit ;; esac ;; + s390x:SunOS:*:*) + echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; sun4H:SunOS:5.*:*) echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; - i86pc:SunOS:5.*:*) - echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) + eval $set_cc_for_build + SUN_ARCH="i386" + # If there is a compiler, see if it is configured for 64-bit objects. + # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. + # This test works for both compilers. + if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then + if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ + (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_64BIT_ARCH >/dev/null + then + SUN_ARCH="x86_64" + fi + fi + echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; sun4*:SunOS:6*:*) # According to config.sub, this is the proper way to canonicalize @@ -531,7 +548,7 @@ echo rs6000-ibm-aix3.2 fi exit ;; - *:AIX:*:[45]) + *:AIX:*:[456]) 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 @@ -639,7 +656,7 @@ # => hppa64-hp-hpux11.23 if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | - grep __LP64__ >/dev/null + grep -q __LP64__ then HP_ARCH="hppa2.0w" else @@ -780,7 +797,7 @@ i*:CYGWIN*:*) echo ${UNAME_MACHINE}-pc-cygwin exit ;; - i*:MINGW*:*) + *:MINGW*:*) echo ${UNAME_MACHINE}-pc-mingw32 exit ;; i*:windows32*:*) @@ -790,15 +807,24 @@ i*:PW*:*) echo ${UNAME_MACHINE}-pc-pw32 exit ;; - x86:Interix*:[3456]*) - echo i586-pc-interix${UNAME_RELEASE} - exit ;; - EM64T:Interix*:[3456]*) - echo x86_64-unknown-interix${UNAME_RELEASE} - exit ;; + *:Interix*:[3456]*) + case ${UNAME_MACHINE} in + x86) + echo i586-pc-interix${UNAME_RELEASE} + exit ;; + EM64T | authenticamd | genuineintel) + echo x86_64-unknown-interix${UNAME_RELEASE} + exit ;; + IA64) + echo ia64-unknown-interix${UNAME_RELEASE} + exit ;; + esac ;; [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) echo i${UNAME_MACHINE}-pc-mks exit ;; + 8664:Windows_NT:*) + echo x86_64-pc-mks + exit ;; 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 @@ -829,7 +855,14 @@ echo ${UNAME_MACHINE}-pc-minix exit ;; arm*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + eval $set_cc_for_build + if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep -q __ARM_EABI__ + then + echo ${UNAME_MACHINE}-unknown-linux-gnu + else + echo ${UNAME_MACHINE}-unknown-linux-gnueabi + fi exit ;; avr32*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu @@ -852,40 +885,17 @@ m68*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; - mips:Linux:*:*) + mips:Linux:*:* | mips64:Linux:*:*) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #undef CPU - #undef mips - #undef mipsel + #undef ${UNAME_MACHINE} + #undef ${UNAME_MACHINE}el #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) - CPU=mipsel + CPU=${UNAME_MACHINE}el #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 | sed -n ' - /^CPU/{ - s: ::g - p - }'`" - test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } - ;; - 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 + CPU=${UNAME_MACHINE} #else CPU= #endif @@ -917,10 +927,13 @@ EV67) UNAME_MACHINE=alphaev67 ;; EV68*) UNAME_MACHINE=alphaev68 ;; esac - objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null + objdump --private-headers /bin/sh | grep -q ld.so.1 if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} exit ;; + padre:Linux:*:*) + echo sparc-unknown-linux-gnu + exit ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in @@ -950,6 +963,9 @@ x86_64:Linux:*:*) echo x86_64-unknown-linux-gnu exit ;; + xtensa*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; i*86:Linux:*:*) # 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 @@ -965,17 +981,6 @@ elf32-i386) TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" ;; - a.out-i386-linux) - echo "${UNAME_MACHINE}-pc-linux-gnuaout" - exit ;; - coff-i386) - echo "${UNAME_MACHINE}-pc-linux-gnucoff" - exit ;; - "") - # Either a pre-BFD a.out linker (linux-gnuoldld) or - # one that does not give us useful --help. - echo "${UNAME_MACHINE}-pc-linux-gnuoldld" - exit ;; esac # Determine whether the default compiler is a.out or elf eval $set_cc_for_build @@ -1041,7 +1046,7 @@ i*86:syllable:*:*) echo ${UNAME_MACHINE}-pc-syllable exit ;; - i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) + i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) echo i386-unknown-lynxos${UNAME_RELEASE} exit ;; i*86:*DOS:*:*) @@ -1085,8 +1090,11 @@ pc:*:*:*) # Left here for compatibility: # uname -m prints for DJGPP always 'pc', but it prints nothing about - # the processor, so we play safe by assuming i386. - echo i386-pc-msdosdjgpp + # the processor, so we play safe by assuming i586. + # Note: whatever this is, it MUST be the same as what config.sub + # prints for the "djgpp" host, or else GDB configury will decide that + # this is a cross-build. + echo i586-pc-msdosdjgpp exit ;; Intel:Mach:3*:*) echo i386-pc-mach3 @@ -1124,6 +1132,16 @@ 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4; exit; } ;; + NCR*:*:4.2:* | MPRAS*:*:4.2:*) + OS_REL='.3' + test -r /etc/.relid \ + && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && { echo i486-ncr-sysv4.3${OS_REL}; exit; } + /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ + && { echo i586-ncr-sysv4.3${OS_REL}; exit; } + /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ + && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) echo m68k-unknown-lynxos${UNAME_RELEASE} exit ;; @@ -1136,7 +1154,7 @@ rs6000:LynxOS:2.*:*) echo rs6000-unknown-lynxos${UNAME_RELEASE} exit ;; - PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) + PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) echo powerpc-unknown-lynxos${UNAME_RELEASE} exit ;; SM[BE]S:UNIX_SV:*:*) @@ -1199,6 +1217,9 @@ BePC:BeOS:*:*) # BeOS running on Intel PC compatible. echo i586-pc-beos exit ;; + BePC:Haiku:*:*) # Haiku running on Intel PC compatible. + echo i586-pc-haiku + exit ;; SX-4:SUPER-UX:*:*) echo sx4-nec-superux${UNAME_RELEASE} exit ;; @@ -1208,6 +1229,15 @@ SX-6:SUPER-UX:*:*) echo sx6-nec-superux${UNAME_RELEASE} exit ;; + SX-7:SUPER-UX:*:*) + echo sx7-nec-superux${UNAME_RELEASE} + exit ;; + SX-8:SUPER-UX:*:*) + echo sx8-nec-superux${UNAME_RELEASE} + exit ;; + SX-8R:SUPER-UX:*:*) + echo sx8r-nec-superux${UNAME_RELEASE} + exit ;; Power*:Rhapsody:*:*) echo powerpc-apple-rhapsody${UNAME_RELEASE} exit ;; @@ -1298,6 +1328,9 @@ i*86:rdos:*:*) echo ${UNAME_MACHINE}-pc-rdos exit ;; + i*86:AROS:*:*) + echo ${UNAME_MACHINE}-pc-aros + exit ;; esac #echo '(No uname command or uname output not recognized.)' 1>&2 @@ -1458,9 +1491,9 @@ the operating system you are using. It is advised that you download the most up to date version of the config scripts from - http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess + http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD and - http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub + http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD If the version you run ($0) is already up to date, please send the following data and any information you think might be diff -Nru em8300-0.16.4/autotools/config.sub em8300-0.18.0/autotools/config.sub --- em8300-0.16.4/autotools/config.sub 2008-02-04 22:52:21.000000000 +0000 +++ em8300-0.18.0/autotools/config.sub 2010-06-28 18:16:35.000000000 +0100 @@ -1,10 +1,10 @@ #! /bin/sh # Configuration validation subroutine script. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, -# Inc. +# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 +# Free Software Foundation, Inc. -timestamp='2006-07-02' +timestamp='2009-06-11' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software @@ -72,8 +72,8 @@ version="\ GNU config.sub ($timestamp) -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 -Free Software Foundation, Inc. +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, +2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -122,6 +122,7 @@ case $maybe_os in nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ + kopensolaris*-gnu* | \ storm-chaos* | os2-emx* | rtmk-nova*) os=-$maybe_os basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` @@ -152,6 +153,9 @@ os= basic_machine=$1 ;; + -bluegene*) + os=-cnk + ;; -sim | -cisco | -oki | -wec | -winbond) os= basic_machine=$1 @@ -245,17 +249,20 @@ | bfin \ | c4x | clipper \ | d10v | d30v | dlx | dsp16xx \ - | fr30 | frv \ + | fido | fr30 | frv \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | i370 | i860 | i960 | ia64 \ | ip2k | iq2000 \ + | lm32 \ | m32c | m32r | m32rle | m68000 | m68k | m88k \ - | maxq | mb | microblaze | mcore \ + | maxq | mb | microblaze | mcore | mep | metag \ | mips | mipsbe | mipseb | mipsel | mipsle \ | mips16 \ | mips64 | mips64el \ - | mips64vr | mips64vrel \ + | mips64octeon | mips64octeonel \ | mips64orion | mips64orionel \ + | mips64r5900 | mips64r5900el \ + | mips64vr | mips64vrel \ | mips64vr4100 | mips64vr4100el \ | mips64vr4300 | mips64vr4300el \ | mips64vr5000 | mips64vr5000el \ @@ -268,6 +275,7 @@ | mipsisa64sr71k | mipsisa64sr71kel \ | mipstx39 | mipstx39el \ | mn10200 | mn10300 \ + | moxie \ | mt \ | msp430 \ | nios | nios2 \ @@ -276,7 +284,8 @@ | pdp10 | pdp11 | pj | pjl \ | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ | pyramid \ - | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ + | score \ + | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ | sh64 | sh64le \ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ @@ -284,8 +293,8 @@ | tahoe | thumb | tic4x | tic80 | tron \ | v850 | v850e \ | we32k \ - | x86 | xscale | xscalee[bl] | xstormy16 | xtensa \ - | z8k) + | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ + | z8k | z80) basic_machine=$basic_machine-unknown ;; m6811 | m68hc11 | m6812 | m68hc12) @@ -323,19 +332,22 @@ | clipper-* | craynv-* | cydra-* \ | d10v-* | d30v-* | dlx-* \ | elxsi-* \ - | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \ + | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ | h8300-* | h8500-* \ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ | i*86-* | i860-* | i960-* | ia64-* \ | ip2k-* | iq2000-* \ + | lm32-* \ | m32c-* | m32r-* | m32rle-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ - | m88110-* | m88k-* | maxq-* | mcore-* \ + | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips16-* \ | mips64-* | mips64el-* \ - | mips64vr-* | mips64vrel-* \ + | mips64octeon-* | mips64octeonel-* \ | mips64orion-* | mips64orionel-* \ + | mips64r5900-* | mips64r5900el-* \ + | mips64vr-* | mips64vrel-* \ | mips64vr4100-* | mips64vr4100el-* \ | mips64vr4300-* | mips64vr4300el-* \ | mips64vr5000-* | mips64vr5000el-* \ @@ -357,20 +369,24 @@ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ | pyramid-* \ | romp-* | rs6000-* \ - | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ + | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ | sparclite-* \ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ | tahoe-* | thumb-* \ - | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ + | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \ | tron-* \ | v850-* | v850e-* | vax-* \ | we32k-* \ - | x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \ - | xstormy16-* | xtensa-* \ + | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ + | xstormy16-* | xtensa*-* \ | ymp-* \ - | z8k-*) + | z8k-* | z80-*) + ;; + # Recognize the basic CPU types without company name, with glob match. + xtensa*) + basic_machine=$basic_machine-unknown ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. @@ -434,6 +450,10 @@ basic_machine=m68k-apollo os=-bsd ;; + aros) + basic_machine=i386-pc + os=-aros + ;; aux) basic_machine=m68k-apple os=-aux @@ -442,10 +462,26 @@ basic_machine=ns32k-sequent os=-dynix ;; + blackfin) + basic_machine=bfin-unknown + os=-linux + ;; + blackfin-*) + basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` + os=-linux + ;; + bluegene*) + basic_machine=powerpc-ibm + os=-cnk + ;; c90) basic_machine=c90-cray os=-unicos ;; + cegcc) + basic_machine=arm-unknown + os=-cegcc + ;; convex-c1) basic_machine=c1-convex os=-bsd @@ -474,8 +510,8 @@ basic_machine=craynv-cray os=-unicosmp ;; - cr16c) - basic_machine=cr16c-unknown + cr16) + basic_machine=cr16-unknown os=-elf ;; crds | unos) @@ -513,6 +549,10 @@ basic_machine=m88k-motorola os=-sysv3 ;; + dicos) + basic_machine=i686-pc + os=-dicos + ;; djgpp) basic_machine=i586-pc os=-msdosdjgpp @@ -667,6 +707,14 @@ basic_machine=m68k-isi os=-sysv ;; + m68knommu) + basic_machine=m68k-unknown + os=-linux + ;; + m68knommu-*) + basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` + os=-linux + ;; m88k-omron*) basic_machine=m88k-omron ;; @@ -682,6 +730,10 @@ basic_machine=i386-pc os=-mingw32 ;; + mingw32ce) + basic_machine=arm-unknown + os=-mingw32ce + ;; miniframe) basic_machine=m68000-convergent ;; @@ -808,6 +860,14 @@ basic_machine=i860-intel os=-osf ;; + parisc) + basic_machine=hppa-unknown + os=-linux + ;; + parisc-*) + basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` + os=-linux + ;; pbd) basic_machine=sparc-tti ;; @@ -909,6 +969,10 @@ sb1el) basic_machine=mipsisa64sb1el-unknown ;; + sde) + basic_machine=mipsisa32-sde + os=-elf + ;; sei) basic_machine=mips-sei os=-seiux @@ -920,6 +984,9 @@ basic_machine=sh-hitachi os=-hms ;; + sh5el) + basic_machine=sh5le-unknown + ;; sh64) basic_machine=sh64-unknown ;; @@ -1009,6 +1076,10 @@ basic_machine=tic6x-unknown os=-coff ;; + tile*) + basic_machine=tile-unknown + os=-linux-gnu + ;; tx39) basic_machine=mipstx39-unknown ;; @@ -1084,6 +1155,10 @@ basic_machine=z8k-unknown os=-sim ;; + z80-*-coff) + basic_machine=z80-unknown + os=-sim + ;; none) basic_machine=none-none os=-none @@ -1122,7 +1197,7 @@ we32k) basic_machine=we32k-att ;; - sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele) + sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) basic_machine=sh-unknown ;; sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) @@ -1192,10 +1267,11 @@ # Each alternative MUST END IN A *, to match a version number. # -sysv* is not here because it comes later, after sysvr4. -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ - | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ + | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ + | -kopensolaris* \ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ - | -aos* \ + | -aos* | -aros* \ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ @@ -1204,7 +1280,7 @@ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ - | -chorusos* | -chorusrdb* \ + | -chorusos* | -chorusrdb* | -cegcc* \ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ | -uxpv* | -beos* | -mpeix* | -udk* \ @@ -1214,7 +1290,7 @@ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ - | -skyos* | -haiku* | -rdos* | -toppers*) + | -skyos* | -haiku* | -rdos* | -toppers* | -drops*) # Remember, each alternative MUST END IN *, to match a version number. ;; -qnx*) @@ -1344,6 +1420,9 @@ -zvmoe) os=-zvmoe ;; + -dicos*) + os=-dicos + ;; -none) ;; *) @@ -1366,6 +1445,9 @@ # system, and we'll never get to this point. case $basic_machine in + score-*) + os=-elf + ;; spu-*) os=-elf ;; @@ -1406,6 +1488,9 @@ m68*-cisco) os=-aout ;; + mep-*) + os=-elf + ;; mips*-cisco) os=-elf ;; @@ -1535,7 +1620,7 @@ -sunos*) vendor=sun ;; - -aix*) + -cnk*|-aix*) vendor=ibm ;; -beos*) diff -Nru em8300-0.16.4/autotools/depcomp em8300-0.18.0/autotools/depcomp --- em8300-0.16.4/autotools/depcomp 2008-02-04 22:52:20.000000000 +0000 +++ em8300-0.18.0/autotools/depcomp 2010-06-28 18:16:35.000000000 +0100 @@ -1,9 +1,10 @@ #! /bin/sh # depcomp - compile a program generating dependencies as side-effects -scriptversion=2005-07-09.11 +scriptversion=2009-04-28.21; # UTC -# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc. +# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free +# Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -16,9 +17,7 @@ # GNU General Public License for more details. # You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -# 02110-1301, USA. +# along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -86,12 +85,34 @@ depmode=dashmstdout fi +cygpath_u="cygpath -u -f -" +if test "$depmode" = msvcmsys; then + # This is just like msvisualcpp but w/o cygpath translation. + # Just convert the backslash-escaped backslashes to single forward + # slashes to satisfy depend.m4 + cygpath_u="sed s,\\\\\\\\,/,g" + depmode=msvisualcpp +fi + case "$depmode" in gcc3) ## gcc 3 implements dependency tracking that does exactly what ## we want. Yay! Note: for some reason libtool 1.4 doesn't like ## it if -MD -MP comes after the -MF stuff. Hmm. - "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" +## Unfortunately, FreeBSD c89 acceptance of flags depends upon +## the command line argument order; so add the flags where they +## appear in depend2.am. Note that the slowdown incurred here +## affects only configure: in makefiles, %FASTDEP% shortcuts this. + for arg + do + case $arg in + -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;; + *) set fnord "$@" "$arg" ;; + esac + shift # fnord + shift # $arg + done + "$@" stat=$? if test $stat -eq 0; then : else @@ -178,14 +199,14 @@ ' < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ tr ' -' ' ' >> $depfile - echo >> $depfile +' ' ' >> "$depfile" + echo >> "$depfile" # The second pass generates a dummy entry for each header file. tr ' ' ' ' < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ - >> $depfile + >> "$depfile" else # The sourcefile does not contain any dependencies, so just # store a dummy comment line, to avoid errors with the Makefile @@ -201,34 +222,39 @@ # current directory. Also, the AIX compiler puts `$object:' at the # start of each line; $object doesn't have directory information. # Version 6 uses the directory in both cases. - stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'` - tmpdepfile="$stripped.u" + dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` + test "x$dir" = "x$object" && dir= + base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` if test "$libtool" = yes; then + tmpdepfile1=$dir$base.u + tmpdepfile2=$base.u + tmpdepfile3=$dir.libs/$base.u "$@" -Wc,-M else + tmpdepfile1=$dir$base.u + tmpdepfile2=$dir$base.u + tmpdepfile3=$dir$base.u "$@" -M fi stat=$? - if test -f "$tmpdepfile"; then : - else - stripped=`echo "$stripped" | sed 's,^.*/,,'` - tmpdepfile="$stripped.u" - fi - if test $stat -eq 0; then : else - rm -f "$tmpdepfile" + rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" exit $stat fi + for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" + do + test -f "$tmpdepfile" && break + done if test -f "$tmpdepfile"; then - outname="$stripped.o" # Each line is of the form `foo.o: dependent.h'. # Do two passes, one to just change these to # `$object: dependent.h' and one to simply `dependent.h:'. - sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile" - sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile" + sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" + # That's a tab and a space in the []. + sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" else # The sourcefile does not contain any dependencies, so just # store a dummy comment line, to avoid errors with the Makefile @@ -276,6 +302,51 @@ rm -f "$tmpdepfile" ;; +hp2) + # The "hp" stanza above does not work with aCC (C++) and HP's ia64 + # compilers, which have integrated preprocessors. The correct option + # to use with these is +Maked; it writes dependencies to a file named + # 'foo.d', which lands next to the object file, wherever that + # happens to be. + # Much of this is similar to the tru64 case; see comments there. + dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` + test "x$dir" = "x$object" && dir= + base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` + if test "$libtool" = yes; then + tmpdepfile1=$dir$base.d + tmpdepfile2=$dir.libs/$base.d + "$@" -Wc,+Maked + else + tmpdepfile1=$dir$base.d + tmpdepfile2=$dir$base.d + "$@" +Maked + fi + stat=$? + if test $stat -eq 0; then : + else + rm -f "$tmpdepfile1" "$tmpdepfile2" + exit $stat + fi + + for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" + do + test -f "$tmpdepfile" && break + done + if test -f "$tmpdepfile"; then + sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile" + # Add `dependent.h:' lines. + sed -ne '2,${ + s/^ *// + s/ \\*$// + s/$/:/ + p + }' "$tmpdepfile" >> "$depfile" + else + echo "#dummy" > "$depfile" + fi + rm -f "$tmpdepfile" "$tmpdepfile2" + ;; + tru64) # The Tru64 compiler uses -MD to generate dependencies as a side # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'. @@ -288,13 +359,13 @@ if test "$libtool" = yes; then # With Tru64 cc, shared objects can also be used to make a - # static library. This mecanism is used in libtool 1.4 series to + # static library. This mechanism is used in libtool 1.4 series to # handle both shared and static libraries in a single compilation. # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d. # # With libtool 1.5 this exception was removed, and libtool now # generates 2 separate objects for the 2 libraries. These two - # compilations output dependencies in in $dir.libs/$base.o.d and + # compilations output dependencies in $dir.libs/$base.o.d and # in $dir$base.o.d. We have to check for both files, because # one of the two compilations can be disabled. We should prefer # $dir$base.o.d over $dir.libs/$base.o.d because the latter is @@ -345,7 +416,7 @@ # Remove the call to Libtool. if test "$libtool" = yes; then - while test $1 != '--mode=compile'; do + while test "X$1" != 'X--mode=compile'; do shift done shift @@ -396,32 +467,39 @@ "$@" || exit $? # Remove any Libtool call if test "$libtool" = yes; then - while test $1 != '--mode=compile'; do + while test "X$1" != 'X--mode=compile'; do shift done shift fi # X makedepend shift - cleared=no - for arg in "$@"; do + cleared=no eat=no + for arg + do case $cleared in no) set ""; shift cleared=yes ;; esac + if test $eat = yes; then + eat=no + continue + fi case "$arg" in -D*|-I*) set fnord "$@" "$arg"; shift ;; # Strip any option that makedepend may not understand. Remove # the object too, otherwise makedepend will parse it as a source file. + -arch) + eat=yes ;; -*|$object) ;; *) set fnord "$@" "$arg"; shift ;; esac done - obj_suffix="`echo $object | sed 's/^.*\././'`" + obj_suffix=`echo "$object" | sed 's/^.*\././'` touch "$tmpdepfile" ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" rm -f "$depfile" @@ -441,7 +519,7 @@ # Remove the call to Libtool. if test "$libtool" = yes; then - while test $1 != '--mode=compile'; do + while test "X$1" != 'X--mode=compile'; do shift done shift @@ -479,13 +557,27 @@ msvisualcpp) # Important note: in order to support this mode, a compiler *must* - # always write the preprocessed file to stdout, regardless of -o, - # because we must use -o when running libtool. + # always write the preprocessed file to stdout. "$@" || exit $? + + # Remove the call to Libtool. + if test "$libtool" = yes; then + while test "X$1" != 'X--mode=compile'; do + shift + done + shift + fi + IFS=" " for arg do case "$arg" in + -o) + shift + ;; + $object) + shift + ;; "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") set fnord "$@" shift @@ -498,16 +590,23 @@ ;; esac done - "$@" -E | - sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile" + "$@" -E 2>/dev/null | + sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" - . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" + sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" echo " " >> "$depfile" - . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile" + sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile" rm -f "$tmpdepfile" ;; +msvcmsys) + # This case exists only to let depend.m4 do its work. It works by + # looking at the text of this script. This case will never be run, + # since it is checked for above. + exit 1 + ;; + none) exec "$@" ;; @@ -526,5 +625,6 @@ # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" # End: diff -Nru em8300-0.16.4/autotools/install-sh em8300-0.18.0/autotools/install-sh --- em8300-0.16.4/autotools/install-sh 2008-02-04 22:52:20.000000000 +0000 +++ em8300-0.18.0/autotools/install-sh 2010-06-28 18:16:35.000000000 +0100 @@ -1,7 +1,7 @@ #!/bin/sh # install - install a program, script, or datafile -scriptversion=2005-05-14.22 +scriptversion=2009-04-28.21; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the @@ -39,38 +39,68 @@ # when there is no Makefile. # # This script is compatible with the BSD install script, but was written -# from scratch. It can only install one file at a time, a restriction -# shared with many OS's install programs. +# from scratch. + +nl=' +' +IFS=" "" $nl" # set DOITPROG to echo to test this script # Don't use :- since 4.3BSD and earlier shells don't like it. -doit="${DOITPROG-}" +doit=${DOITPROG-} +if test -z "$doit"; then + doit_exec=exec +else + doit_exec=$doit +fi -# put in absolute paths if you don't have them in your path; or use env. vars. +# Put in absolute file names if you don't have them in your path; +# or use environment vars. -mvprog="${MVPROG-mv}" -cpprog="${CPPROG-cp}" -chmodprog="${CHMODPROG-chmod}" -chownprog="${CHOWNPROG-chown}" -chgrpprog="${CHGRPPROG-chgrp}" -stripprog="${STRIPPROG-strip}" -rmprog="${RMPROG-rm}" -mkdirprog="${MKDIRPROG-mkdir}" +chgrpprog=${CHGRPPROG-chgrp} +chmodprog=${CHMODPROG-chmod} +chownprog=${CHOWNPROG-chown} +cmpprog=${CMPPROG-cmp} +cpprog=${CPPROG-cp} +mkdirprog=${MKDIRPROG-mkdir} +mvprog=${MVPROG-mv} +rmprog=${RMPROG-rm} +stripprog=${STRIPPROG-strip} + +posix_glob='?' +initialize_posix_glob=' + test "$posix_glob" != "?" || { + if (set -f) 2>/dev/null; then + posix_glob= + else + posix_glob=: + fi + } +' + +posix_mkdir= + +# Desired mode of installed file. +mode=0755 -chmodcmd="$chmodprog 0755" -chowncmd= chgrpcmd= -stripcmd= +chmodcmd=$chmodprog +chowncmd= +mvcmd=$mvprog rmcmd="$rmprog -f" -mvcmd="$mvprog" +stripcmd= + src= dst= dir_arg= -dstarg= +dst_arg= + +copy_on_change=false no_target_directory= -usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE +usage="\ +Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE or: $0 [OPTION]... SRCFILES... DIRECTORY or: $0 [OPTION]... -t DIRECTORY SRCFILES... or: $0 [OPTION]... -d DIRECTORIES... @@ -80,81 +110,86 @@ In the 4th, create DIRECTORIES. Options: --c (ignored) --d create directories instead of installing files. --g GROUP $chgrpprog installed files to GROUP. --m MODE $chmodprog installed files to MODE. --o USER $chownprog installed files to USER. --s $stripprog installed files. --t DIRECTORY install into DIRECTORY. --T report an error if DSTFILE is a directory. ---help display this help and exit. ---version display version info and exit. + --help display this help and exit. + --version display version info and exit. + + -c (ignored) + -C install only if different (preserve the last data modification time) + -d create directories instead of installing files. + -g GROUP $chgrpprog installed files to GROUP. + -m MODE $chmodprog installed files to MODE. + -o USER $chownprog installed files to USER. + -s $stripprog installed files. + -t DIRECTORY install into DIRECTORY. + -T report an error if DSTFILE is a directory. Environment variables override the default commands: - CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG + CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG + RMPROG STRIPPROG " -while test -n "$1"; do +while test $# -ne 0; do case $1 in - -c) shift - continue;; + -c) ;; - -d) dir_arg=true - shift - continue;; + -C) copy_on_change=true;; + + -d) dir_arg=true;; -g) chgrpcmd="$chgrpprog $2" - shift - shift - continue;; + shift;; --help) echo "$usage"; exit $?;; - -m) chmodcmd="$chmodprog $2" - shift - shift - continue;; + -m) mode=$2 + case $mode in + *' '* | *' '* | *' +'* | *'*'* | *'?'* | *'['*) + echo "$0: invalid mode: $mode" >&2 + exit 1;; + esac + shift;; -o) chowncmd="$chownprog $2" - shift - shift - continue;; - - -s) stripcmd=$stripprog - shift - continue;; - - -t) dstarg=$2 - shift - shift - continue;; - - -T) no_target_directory=true - shift - continue;; + shift;; + + -s) stripcmd=$stripprog;; + + -t) dst_arg=$2 + shift;; + + -T) no_target_directory=true;; --version) echo "$0 $scriptversion"; exit $?;; - *) # When -d is used, all remaining arguments are directories to create. - # When -t is used, the destination is already specified. - test -n "$dir_arg$dstarg" && break - # Otherwise, the last argument is the destination. Remove it from $@. - for arg - do - if test -n "$dstarg"; then - # $@ is not empty: it contains at least $arg. - set fnord "$@" "$dstarg" - shift # fnord - fi - shift # arg - dstarg=$arg - done + --) shift break;; + + -*) echo "$0: invalid option: $1" >&2 + exit 1;; + + *) break;; esac + shift done -if test -z "$1"; then +if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then + # When -d is used, all remaining arguments are directories to create. + # When -t is used, the destination is already specified. + # Otherwise, the last argument is the destination. Remove it from $@. + for arg + do + if test -n "$dst_arg"; then + # $@ is not empty: it contains at least $arg. + set fnord "$@" "$dst_arg" + shift # fnord + fi + shift # arg + dst_arg=$arg + done +fi + +if test $# -eq 0; then if test -z "$dir_arg"; then echo "$0: no input file specified." >&2 exit 1 @@ -164,24 +199,47 @@ exit 0 fi +if test -z "$dir_arg"; then + trap '(exit $?); exit' 1 2 13 15 + + # Set umask so as not to create temps with too-generous modes. + # However, 'strip' requires both read and write access to temps. + case $mode in + # Optimize common cases. + *644) cp_umask=133;; + *755) cp_umask=22;; + + *[0-7]) + if test -z "$stripcmd"; then + u_plus_rw= + else + u_plus_rw='% 200' + fi + cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;; + *) + if test -z "$stripcmd"; then + u_plus_rw= + else + u_plus_rw=,u+rw + fi + cp_umask=$mode$u_plus_rw;; + esac +fi + for src do # Protect names starting with `-'. case $src in - -*) src=./$src ;; + -*) src=./$src;; esac if test -n "$dir_arg"; then dst=$src - src= - - if test -d "$dst"; then - mkdircmd=: - chmodcmd= - else - mkdircmd=$mkdirprog - fi + dstdir=$dst + test -d "$dstdir" + dstdir_status=$? else + # Waiting for this to be detected by the "$cpprog $src $dsttmp" command # might cause directories to be created, which would be especially bad # if $src (and thus $dsttmp) contains '*'. @@ -190,71 +248,199 @@ exit 1 fi - if test -z "$dstarg"; then + if test -z "$dst_arg"; then echo "$0: no destination specified." >&2 exit 1 fi - dst=$dstarg + dst=$dst_arg # Protect names starting with `-'. case $dst in - -*) dst=./$dst ;; + -*) dst=./$dst;; esac # If destination is a directory, append the input filename; won't work # if double slashes aren't ignored. if test -d "$dst"; then if test -n "$no_target_directory"; then - echo "$0: $dstarg: Is a directory" >&2 + echo "$0: $dst_arg: Is a directory" >&2 exit 1 fi - dst=$dst/`basename "$src"` + dstdir=$dst + dst=$dstdir/`basename "$src"` + dstdir_status=0 + else + # Prefer dirname, but fall back on a substitute if dirname fails. + dstdir=` + (dirname "$dst") 2>/dev/null || + expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$dst" : 'X\(//\)[^/]' \| \ + X"$dst" : 'X\(//\)$' \| \ + X"$dst" : 'X\(/\)' \| . 2>/dev/null || + echo X"$dst" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q' + ` + + test -d "$dstdir" + dstdir_status=$? fi fi - # This sed command emulates the dirname command. - dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'` - - # Make sure that the destination directory exists. + obsolete_mkdir_used=false - # Skip lots of stat calls in the usual case. - if test ! -d "$dstdir"; then - defaultIFS=' - ' - IFS="${IFS-$defaultIFS}" - - oIFS=$IFS - # Some sh's can't handle IFS=/ for some reason. - IFS='%' - set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'` - shift - IFS=$oIFS + if test $dstdir_status != 0; then + case $posix_mkdir in + '') + # Create intermediate dirs using mode 755 as modified by the umask. + # This is like FreeBSD 'install' as of 1997-10-28. + umask=`umask` + case $stripcmd.$umask in + # Optimize common cases. + *[2367][2367]) mkdir_umask=$umask;; + .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;; + + *[0-7]) + mkdir_umask=`expr $umask + 22 \ + - $umask % 100 % 40 + $umask % 20 \ + - $umask % 10 % 4 + $umask % 2 + `;; + *) mkdir_umask=$umask,go-w;; + esac + + # With -d, create the new directory with the user-specified mode. + # Otherwise, rely on $mkdir_umask. + if test -n "$dir_arg"; then + mkdir_mode=-m$mode + else + mkdir_mode= + fi + + posix_mkdir=false + case $umask in + *[123567][0-7][0-7]) + # POSIX mkdir -p sets u+wx bits regardless of umask, which + # is incompatible with FreeBSD 'install' when (umask & 300) != 0. + ;; + *) + tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ + trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0 + + if (umask $mkdir_umask && + exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1 + then + if test -z "$dir_arg" || { + # Check for POSIX incompatibilities with -m. + # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or + # other-writeable bit of parent directory when it shouldn't. + # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. + ls_ld_tmpdir=`ls -ld "$tmpdir"` + case $ls_ld_tmpdir in + d????-?r-*) different_mode=700;; + d????-?--*) different_mode=755;; + *) false;; + esac && + $mkdirprog -m$different_mode -p -- "$tmpdir" && { + ls_ld_tmpdir_1=`ls -ld "$tmpdir"` + test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" + } + } + then posix_mkdir=: + fi + rmdir "$tmpdir/d" "$tmpdir" + else + # Remove any dirs left behind by ancient mkdir implementations. + rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null + fi + trap '' 0;; + esac;; + esac - pathcomp= + if + $posix_mkdir && ( + umask $mkdir_umask && + $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir" + ) + then : + else - while test $# -ne 0 ; do - pathcomp=$pathcomp$1 + # The umask is ridiculous, or mkdir does not conform to POSIX, + # or it failed possibly due to a race condition. Create the + # directory the slow way, step by step, checking for races as we go. + + case $dstdir in + /*) prefix='/';; + -*) prefix='./';; + *) prefix='';; + esac + + eval "$initialize_posix_glob" + + oIFS=$IFS + IFS=/ + $posix_glob set -f + set fnord $dstdir shift - if test ! -d "$pathcomp"; then - $mkdirprog "$pathcomp" - # mkdir can fail with a `File exist' error in case several - # install-sh are creating the directory concurrently. This - # is OK. - test -d "$pathcomp" || exit + $posix_glob set +f + IFS=$oIFS + + prefixes= + + for d + do + test -z "$d" && continue + + prefix=$prefix$d + if test -d "$prefix"; then + prefixes= + else + if $posix_mkdir; then + (umask=$mkdir_umask && + $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break + # Don't fail if two instances are running concurrently. + test -d "$prefix" || exit 1 + else + case $prefix in + *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;; + *) qprefix=$prefix;; + esac + prefixes="$prefixes '$qprefix'" + fi + fi + prefix=$prefix/ + done + + if test -n "$prefixes"; then + # Don't fail if two instances are running concurrently. + (umask $mkdir_umask && + eval "\$doit_exec \$mkdirprog $prefixes") || + test -d "$dstdir" || exit 1 + obsolete_mkdir_used=true fi - pathcomp=$pathcomp/ - done + fi fi if test -n "$dir_arg"; then - $doit $mkdircmd "$dst" \ - && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \ - && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \ - && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \ - && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; } - + { test -z "$chowncmd" || $doit $chowncmd "$dst"; } && + { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } && + { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false || + test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1 else - dstfile=`basename "$dst"` # Make a couple of temp file names in the proper directory. dsttmp=$dstdir/_inst.$$_ @@ -262,10 +448,9 @@ # Trap to clean up those temp files at exit. trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 - trap '(exit $?); exit' 1 2 13 15 # Copy the file name to the temp name. - $doit $cpprog "$src" "$dsttmp" && + (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") && # and set any options; do chmod last to preserve setuid bits. # @@ -273,51 +458,63 @@ # ignore errors from any of these, just make sure not to ignore # errors from the above "$doit $cpprog $src $dsttmp" command. # - { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \ - && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \ - && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \ - && { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } && - - # Now rename the file to the real destination. - { $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 2>/dev/null \ - || { - # The rename failed, perhaps because mv can't rename something else - # to itself, or perhaps because mv is so ancient that it does not - # support -f. - - # Now remove or move aside any old file at destination location. - # We try this two ways since rm can't unlink itself on some - # systems and the destination file might be busy for other - # reasons. In this case, the final cleanup might fail but the new - # file should still install successfully. - { - if test -f "$dstdir/$dstfile"; then - $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \ - || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \ - || { - echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2 - (exit 1); exit 1 - } - else - : - fi - } && - - # Now rename the file to the real destination. - $doit $mvcmd "$dsttmp" "$dstdir/$dstfile" - } - } - fi || { (exit 1); exit 1; } -done + { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } && + { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } && + { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } && + { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } && + + # If -C, don't bother to copy if it wouldn't change the file. + if $copy_on_change && + old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` && + new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` && + + eval "$initialize_posix_glob" && + $posix_glob set -f && + set X $old && old=:$2:$4:$5:$6 && + set X $new && new=:$2:$4:$5:$6 && + $posix_glob set +f && + + test "$old" = "$new" && + $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1 + then + rm -f "$dsttmp" + else + # Rename the file to the real destination. + $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null || -# The final little trick to "correctly" pass the exit status to the exit trap. -{ - (exit 0); exit 0 -} + # The rename failed, perhaps because mv can't rename something else + # to itself, or perhaps because mv is so ancient that it does not + # support -f. + { + # Now remove or move aside any old file at destination location. + # We try this two ways since rm can't unlink itself on some + # systems and the destination file might be busy for other + # reasons. In this case, the final cleanup might fail but the new + # file should still install successfully. + { + test ! -f "$dst" || + $doit $rmcmd -f "$dst" 2>/dev/null || + { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null && + { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; } + } || + { echo "$0: cannot unlink or rename $dst" >&2 + (exit 1); exit 1 + } + } && + + # Now rename the file to the real destination. + $doit $mvcmd "$dsttmp" "$dst" + } + fi || exit 1 + + trap '' 0 + fi +done # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" # End: diff -Nru em8300-0.16.4/autotools/missing em8300-0.18.0/autotools/missing --- em8300-0.16.4/autotools/missing 2008-02-04 22:52:20.000000000 +0000 +++ em8300-0.18.0/autotools/missing 2010-06-28 18:16:35.000000000 +0100 @@ -1,10 +1,10 @@ #! /bin/sh # Common stub for a few missing GNU programs while installing. -scriptversion=2005-06-08.21 +scriptversion=2009-04-28.21; # UTC -# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005 -# Free Software Foundation, Inc. +# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006, +# 2008, 2009 Free Software Foundation, Inc. # Originally by Fran,cois Pinard , 1996. # This program is free software; you can redistribute it and/or modify @@ -18,9 +18,7 @@ # GNU General Public License for more details. # You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -# 02110-1301, USA. +# along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -33,6 +31,8 @@ fi run=: +sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p' +sed_minuso='s/.* -o \([^ ]*\).*/\1/p' # In the cases where this matters, `missing' is being run in the # srcdir already. @@ -44,7 +44,7 @@ msg="missing on your system" -case "$1" in +case $1 in --run) # Try to run requested program, and just exit if it succeeds. run= @@ -77,6 +77,7 @@ aclocal touch file \`aclocal.m4' autoconf touch file \`configure' autoheader touch file \`config.h.in' + autom4te touch the output file, or create a stub one automake touch all \`Makefile.in' files bison create \`y.tab.[ch]', if possible, from existing .[ch] flex create \`lex.yy.c', if possible, from existing .c @@ -86,6 +87,9 @@ tar try tar, gnutar, gtar, then tar without non-portable flags yacc create \`y.tab.[ch]', if possible, from existing .[ch] +Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and +\`g' are ignored when checking the name. + Send bug reports to ." exit $? ;; @@ -103,15 +107,22 @@ esac +# normalize program name to check for. +program=`echo "$1" | sed ' + s/^gnu-//; t + s/^gnu//; t + s/^g//; t'` + # Now exit if we have it, but it failed. Also exit now if we # don't have it and --version was passed (most likely to detect -# the program). -case "$1" in - lex|yacc) +# the program). This is about non-GNU programs, so use $1 not +# $program. +case $1 in + lex*|yacc*) # Not GNU programs, they don't have --version. ;; - tar) + tar*) if test -n "$run"; then echo 1>&2 "ERROR: \`tar' requires --run" exit 1 @@ -135,7 +146,7 @@ # If it does not exist, or fails to run (possibly an outdated version), # try to emulate it. -case "$1" in +case $program in aclocal*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if @@ -145,7 +156,7 @@ touch aclocal.m4 ;; - autoconf) + autoconf*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`${configure_ac}'. You might want to install the @@ -154,7 +165,7 @@ touch configure ;; - autoheader) + autoheader*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`acconfig.h' or \`${configure_ac}'. You might want @@ -164,7 +175,7 @@ test -z "$files" && files="config.h" touch_files= for f in $files; do - case "$f" in + case $f in *:*) touch_files="$touch_files "`echo "$f" | sed -e 's/^[^:]*://' -e 's/:.*//'`;; *) touch_files="$touch_files $f.in";; @@ -184,7 +195,7 @@ while read f; do touch "$f"; done ;; - autom4te) + autom4te*) echo 1>&2 "\ WARNING: \`$1' is needed, but is $msg. You might have modified some files without having the @@ -192,8 +203,8 @@ You can get \`$1' as part of \`Autoconf' from any GNU archive site." - file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'` - test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'` + file=`echo "$*" | sed -n "$sed_output"` + test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` if test -f "$file"; then touch $file else @@ -207,80 +218,78 @@ fi ;; - bison|yacc) + bison*|yacc*) echo 1>&2 "\ WARNING: \`$1' $msg. You should only need it if you modified a \`.y' file. You may need the \`Bison' package in order for those modifications to take effect. You can get \`Bison' from any GNU archive site." rm -f y.tab.c y.tab.h - if [ $# -ne 1 ]; then + if test $# -ne 1; then eval LASTARG="\${$#}" - case "$LASTARG" in + case $LASTARG in *.y) SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'` - if [ -f "$SRCFILE" ]; then + if test -f "$SRCFILE"; then cp "$SRCFILE" y.tab.c fi SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'` - if [ -f "$SRCFILE" ]; then + if test -f "$SRCFILE"; then cp "$SRCFILE" y.tab.h fi ;; esac fi - if [ ! -f y.tab.h ]; then + if test ! -f y.tab.h; then echo >y.tab.h fi - if [ ! -f y.tab.c ]; then + if test ! -f y.tab.c; then echo 'main() { return 0; }' >y.tab.c fi ;; - lex|flex) + lex*|flex*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a \`.l' file. You may need the \`Flex' package in order for those modifications to take effect. You can get \`Flex' from any GNU archive site." rm -f lex.yy.c - if [ $# -ne 1 ]; then + if test $# -ne 1; then eval LASTARG="\${$#}" - case "$LASTARG" in + case $LASTARG in *.l) SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'` - if [ -f "$SRCFILE" ]; then + if test -f "$SRCFILE"; then cp "$SRCFILE" lex.yy.c fi ;; esac fi - if [ ! -f lex.yy.c ]; then + if test ! -f lex.yy.c; then echo 'main() { return 0; }' >lex.yy.c fi ;; - help2man) + help2man*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a dependency of a manual page. You may need the \`Help2man' package in order for those modifications to take effect. You can get \`Help2man' from any GNU archive site." - file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` - if test -z "$file"; then - file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'` - fi - if [ -f "$file" ]; then + file=`echo "$*" | sed -n "$sed_output"` + test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` + if test -f "$file"; then touch $file else test -z "$file" || exec >$file echo ".ab help2man is required to generate this page" - exit 1 + exit $? fi ;; - makeinfo) + makeinfo*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a \`.texi' or \`.texinfo' file, or any other file @@ -289,11 +298,17 @@ DU, IRIX). You might want to install the \`Texinfo' package or the \`GNU make' package. Grab either from any GNU archive site." # The file to touch is that specified with -o ... - file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` + file=`echo "$*" | sed -n "$sed_output"` + test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` if test -z "$file"; then # ... or it is the one specified with @setfilename ... infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` - file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile` + file=`sed -n ' + /^@setfilename/{ + s/.* \([^ ]*\) *$/\1/ + p + q + }' $infile` # ... or it is derived from the source name (dir/f.texi becomes f.info) test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info fi @@ -303,7 +318,7 @@ touch $file ;; - tar) + tar*) shift # We have already tried tar in the generic part. @@ -317,13 +332,13 @@ fi firstarg="$1" if shift; then - case "$firstarg" in + case $firstarg in *o*) firstarg=`echo "$firstarg" | sed s/o//` tar "$firstarg" "$@" && exit 0 ;; esac - case "$firstarg" in + case $firstarg in *h*) firstarg=`echo "$firstarg" | sed s/h//` tar "$firstarg" "$@" && exit 0 @@ -356,5 +371,6 @@ # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" # End: diff -Nru em8300-0.16.4/bootstrap em8300-0.18.0/bootstrap --- em8300-0.16.4/bootstrap 1970-01-01 01:00:00.000000000 +0100 +++ em8300-0.18.0/bootstrap 2010-06-28 18:12:31.000000000 +0100 @@ -0,0 +1,5 @@ +aclocal -I autotools +autoheader +automake --gnu --add-missing --copy +autoconf +rm -rf autom4te.cache diff -Nru em8300-0.16.4/ChangeLog em8300-0.18.0/ChangeLog --- em8300-0.16.4/ChangeLog 2008-02-04 22:40:28.000000000 +0000 +++ em8300-0.18.0/ChangeLog 1970-01-01 01:00:00.000000000 +0100 @@ -1,2530 +0,0 @@ -2008-02-04 Nicolas Boullis - * configure.in, - modules/Makefile: - Release 0.16.4. - -2008-01-07 Nicolas Boullis - * modules/em8300_i2c.c: - Get rid of some warnings related to the result of - sysfs_create_link being unused and log some runtime warning in - case of failure. Thanks to Christian Gmeiner for the initial - work. - -2008-01-05 Nicolas Boullis - * modules/em8300_audio.c: - Get rid of some warnings introduced by the S/PDIF rewrite. Thanks - to Christian Gmeiner for his patch. - -2008-01-02 Nicolas Boullis - * modules/em8300_i2c.c: - Disable the encoder chip when it is discovered and until the - firmware in loaded and everything is properly configured. - - * modules/em8300_dicom.c: - Completely rewrite from scratch the code to deal with brightness, - contrast and saturation, since it was obviously decompiled and - possibly illegal. - - * include/linux/em8300.h, - modules/em8300_audio.c: - Completely rewrite from scratch the code to deal with S/PDIF - digital audio, since it was obviously decompiled and possibly - illegal. - -2007-12-10 Nicolas Boullis - * modules/adv717x.c, - modules/em8300_i2c.c, - modules/em8300_sysfs.c, - modules/encoder.h: - Continue the code reorganization of the ADV717X driver. The - ADV717X chip is now configured by the em8300 driver (through the - adv717x driver, of course). - -2007-12-03 Nicolas Boullis - * modules/em8300_compat24.h, - modules/em8300_main.c: - Switch from the old SA_* macros to the new IRQF_* ones, and add - compatibility workaround for older kernels. Thanks to all those - who told me about the problem, and especially Martin Dauskardt and - Christian Gmeiner who provided a patch (although I did not use - it). - - * modules/adv717x.c, - modules/adv717x.h: - Reorganize the code of the ADV717X driver to ease the future works - of making it independant of the EM8300 driver, and of making - automatic configuration possible. - -2007-11-09 Nicolas Boullis - * modules/em8300_i2c.c: - Remove the sysfs links from the em8300 device to the encoder and - eeprom devices when those devices are unregistered, to ensure - correct removal of the em8300 module. - -2007-11-05 Nicolas Boullis - * modules/em8300_i2c.c: - Add sysfs links from the em8300 device to the encoder and eeprom - devices. - -2007-09-03 Nicolas Boullis - * modules/em8300_dicom.c: - Fix the issue of swapped red and blue channels with some cards and - some zoom values. - -2007-08-24 Ville Skyttä - * modules/em8300_ioctl.c, - modules/em8300_ioctl32.c: - Fix build with 2.6.23 release candidate kernels. - -2007-08-21 Nicolas Boullis - * configure.in, - modules/Makefile: - New development version. - -2007-08-17 Nicolas Boullis - * configure.in, - modules/Makefile: - Release 0.16.3. - -2007-08-07 Nicolas Boullis - * modules/em8300_eeprom.c: - Fix the error detection and handling if crypto_alloc_hash fails. - Thanks to Gabor Z. Papp who first told about the problem and then - tracked it down to a missing MD5 hash on his system. - -2007-08-07 Nicolas Boullis - * modules/em8300_eeprom.c: - Fix cleanup in case of a failure to allocate 16 bytes for - em->eeprom_checksum. - -2007-08-03 Nicolas Boullis - * modules/em8300_sysfs.c: - Calling the command function of the adv717x driver from the em8300 - module with a pointer to the stack apparently was not a good - idea. Use a kmallocated buffer instead. Thanks to Antoine Pardigon - who reported the problem. - -2007-07-17 Ville Skyttä - * dhc/dhc.desktop, - overlay/autocal.desktop, - overlay/dxr3view.desktop: - Bring up to date with desktop entry specification 1.0, - add StartupWMClass. - -2007-07-11 Nicolas Boullis - * modules/em8300_sysfs.c: - Slightly improve the "model" sysfs file to tag important - questions, drop non-relevant ones and explicit values to - try. Let's hope it will lead to more (and/or better) reports. - -2007-06-20 Ville Skyttä - * dhc/dhc_main.c, - overlay/autocal.c, - overlay/dxr3view.c: - Add GUI error dialogs for device access problems on startup. - -2007-06-18 Nicolas Boullis - * include/linux/em8300.h, - modules/em8300_dicom.c, - modules/em8300_main.c, - modules/em8300_sysfs.c: - Add a new "zoom" sysfs file for those who consider the output - image is too large. Feedback is welcome, especially if some values - cause screen flicker or wrong colors. - -2007-06-18 Nicolas Boullis - * modules/em8300_eeprom.c: - Fix a bug that is triggered when the kernel is configured with - CONFIG_CRYPTO but without CONFIG_CRYPTO_MD5. - -2007-05-20 Nicolas Boullis - * include/linux/em8300.h, - modules/em8300_i2c.c, - modules/em8300_main.c: - Split the i2c busses initalization, so that it becomes possible to - read the EEPROM chip before the video encoder chip can be - detected. (This will be useful for autoconfiguration.) - - -2007-05-17 Nicolas Boullis - * modules/Makefile: - Fix a bug in the detection of pre-2.5.51 linux kernels. Thanks to - Gabor Z. Papp for pointing out the problem. - -2007-05-14 Nicolas Boullis - * modules/em8300_main.c: - Use pci_register_driver instead pci_module_init since the latter - is removed in linux 2.6.22. Thanks to Adam who noticed the problem - with linux 2.6.21-git5. The only expected change in behavior is - that the module won't fail to load with linux 2.4 kernels if no - em8300-based board is present. - -2007-05-14 Nicolas Boullis - * configure.in, - modules/Makefile: - New development version. - -2007-05-06 Nicolas Boullis - * configure.in, - modules/Makefile: - Release 0.16.2. - -2007-04-11 Nicolas Boullis - * modules/em8300_sysfs.c: - Improve the "model" sysfs file, considering that the dicom_fix and - dicom_control options only do something for bt865-based cards. - -2007-04-04 Ville Skyttä - * modules/em8300_sysfs.c: - Spelling fix in "model" file contents. - -2007-04-02 Nicolas Boullis - * modules/em8300_sysfs.c: - Reformat the "model" sysfs file and change the target - mailing-list. - -2007-03-24 Nicolas Boullis - * modules/em8300_eeprom.c: - Rewrite the checksumming code, using the sg_init_one function, to - make it cleaner. Thanks to Herbert Xu who hinted me about the - sg_set_buf function. - -2007-03-16 Nicolas Boullis - * include/linux/em8300.h, - modules/em8300_alsa.c: - Fix compatibility with ALSA in linux kernel 2.6.21. Thanks to - Ville Skyttä who spotted the problem. - - * modules/em8300_eeprom.c: - Fix compatibility with linux kernel 2.6.21 by using the new - crypto_hash functions. Thanks to "nyk" who spotted the problem. - - * modules/em8300_eeprom.c: - Make it possible again to use the em8300 driver without - CONFIG_CRYPTO (although in degraded mode). - -2007-03-09 Nicolas Boullis - * modules/em8300_sysfs.c: - Fix the prototype of the show_model function for kernels older - than 2.6.13. - -2007-03-06 Nicolas Boullis - * modules/em8300_params.c: - Remove the #includes that are now useless as they were only - required by the #included include/linux/em8300.h, and add - forgotten ones. - - * include/linux/em8300.h, - modules/Makefile, - modules/adv717x.c, - modules/em8300_eeprom.c, - modules/em8300_eeprom.h, - modules/em8300_main.c, - modules/em8300_procfs.c, - modules/em8300_sysfs.c, - modules/encoder.h: - Implement some preliminary hardware detection. It will not yet - autodetect the optimal module parameters for any given board but - will hopefully help gather enough data to make that autodetection - possible. - -2007-03-03 Nicolas Boullis - * modules/em8300_main.c: - Add some missing initialization. Thanks to Jan Kandziora for - telling me about the problem he was experiencing, and for finding - out a workaround. - - * include/linux/em8300.h: - Include all the headers required by include/linux/em8300.h. - -2007-03-02 Nicolas Boullis - * modules/Makefile, - modules/em8300_alsa.c, - modules/em8300_devfs.c, - modules/em8300_dicom.c, - modules/em8300_ioctl.c, - modules/em8300_main.c, - modules/em8300_params.c, - modules/em8300_params.h, - modules/em8300_ucode.c, - modules/em8300_udev.c, - modules/em8300_video.c: - Split the module parameters out of em8300_main.c and into a new - file, to make em8300_main.c shorter. - -2007-03-01 Nicolas Boullis - * modules/em8300_i2c.c: - Set the em8300 device as the parent device for its two i2c - busses. This is cleaner and avoids a warning. Thanks to Martin - Dauskardt for telling me about this warning. - -2007-03-01 Nicolas Boullis - * configure.in, - modules/Makefile: - New development version. - -2007-02-28 Nicolas Boullis - * configure.in, - modules/Makefile: - Release 0.16.1. - -2007-02-26 Ville Skyttä - * modules/README-modoptions: - Spelling fixes. - -2007-02-20 Ville Skyttä - * modules/README-modoptions: - Document stop_video. - -2007-02-18 Nicolas Boullis - * modules/em8300_i2c.c: - Use i2c_del_adapter instead of i2c_bit_del_bus for kernels 2.6.0 - and above, to fix compatibility with 2.6.20 kernels. Thanks to - David van Vyfeyken for the patch. - - * modules/em8300_ioctl.c, - modules/em8300_main.c, - modules/em8300_ucode.c, - modules/em8300_video.c: - Add a parameter to choose between no video output and black video - output when there is nothing to display (black video output by - default). - - * modules/em8300_ioctl.c, - modules/em8300_main.c: - Ensure that video output is off (to avoid displaying cruft) when - overlay is used. - -2007-02-12 Nicolas Boullis - * modules/em8300_i2c.c: - Slow down the comunications with the em9010 chip, so that it does - not interfere with the video encoders. Thanks to Sascha Hauer for - telling about the problem, and for the patch. - -2006-12-10 Nicolas Boullis - * modules/em8300_main.c: - Fix the documentation string for the alsa_id and alsa_index module - options. Thanks to Brendon Higgins for the patch. - - * modules/README-modoptions: - Improve the README-modoptions documentation. Thanks to Brendon - Higgins for the patch. - -2006-11-27 Nicolas Boullis - * configure.in: - Search the alsa.conf file to find the proper location for the - EM8300.conf configuration file. - - * Makefile.am: - Only uninstall EM8300.conf if $(alsadir) is set (that is if - EM8300.conf was installed). - -2006-11-26 Nicolas Boullis - * configure.in, - modules/Makefile: - New development version. - -2006-11-26 Nicolas Boullis - * configure.in, - modules/Makefile: - Release 0.16.0. - -2006-11-23 Nicolas Boullis - * modules/em8300_main.c: - Fix a stupid mistake (misplaced comma) I did while changing the - prototype of the em8300_irq function for 2.6.19 kernels. Thanks to - Adam and Sebastian Frei. - -2006-11-22 Nicolas Boullis - * modules/em8300_main.c: - The prototype of the function that request_irq expects will change - slightly in 2.6.19. Change the em8300_irq function - accordingly. Thanks to Adam for noticing. - - * modules/em8300_main.c: - Fix a stupid mistake in a call to pr_debug where a full array was - given to print instead of a single element. Thanks to Adam for - noticing. - - * modules/Makefile: - Use "printf" rather than "echo -e", as the latter may be - unavailable with some shells. - -2006-11-21 Ville Skyttä - * dhc/dhc.desktop, - overlay/autocal.desktop, - overlay/dxr3view.desktop: - Bring desktop entry categories up to date with current - freedesktop.org menu specification. - -2006-11-19 Nicolas Boullis - * Makefile.am: - configure.in: - Install the ALSA configuration file, and make its location - configurable. - - * Makefile.am: - Fix uninstalling. - -2006-11-18 Ville Skyttä - * modules/Makefile: - Use $(CURDIR) instead of $(PWD) to fix build when current working - dir is not modules/. - -2006-11-18 Nicolas Boullis - * modules/em8300_i2c.c: - The mdelay field of the i2c_algo_bit_data struct has apparently - been unused since before 2.4.0 and will be gone in 2.6.19. Don't - set it at all. - -2006-11-16 Nicolas Boullis - * modules/Makefile, - modules/adv717x.c, - modules/em8300_devfs.c, - modules/em8300_main.c, - modules/em8300_procfs.c, - modules/em8300_registration.h: - Since 2.6.15, there is no need to #include linux/config.h and this - file is due to be gone in 2.6.19. Don't include it anymore from - the individual files. For older kernels, include it from the - Makefile. - - * modules/em8300_alsa.c: - chip_t is needed for old versions of ALSA; define it. - - * modules/em8300_alsa.c: - kcalloc was not defined in older kernel versions; use - kmalloc+memset instead. - - * modules/adv717x.c, - modules/bt865.c, - modules/em8300_main.c: - Fully revert the MODULE_PARM change for kernels between 2.6.0 and - 2.6.10. - -2006-11-12 Nicolas Boullis - * modules/adv717x.c, - modules/bt865.c, - modules/em8300_main.c: - The module_param_array function changed incompatibly in 2.6.10; - revert to the old MODULE_PARM function for older kernels. - - * modules/Makefile: - Partial rewrite of the Makefile to avoid hackish reading of kernel - version. - -2006-09-24 Nicolas Boullis - * modules/em8300_alsa.c, - modules/em8300_main.c: - Add new alsa_index and alsa_id parameters to choose the ALSA index - number and id string. - -2006-09-20 Ville Skyttä - * Makefile.am: - Include modules/EM8300.conf in tarball, make EXTRA_DIST - more readable. - -2006-09-13 Nicolas Boullis - * include/linux/em8300.h, - modules/Makefile, - modules/em8300_alsa.c, - modules/em8300_audio.c, - modules/em8300_devfs.c, - modules/em8300_ioctl.c, - modules/em8300_main.c, - modules/em8300_ucode.c, - modules/em8300_udev.c: - Choose the audio driver (ALSA or OSS) at load-time and on a - per-card basis. - - * modules/em8300_devfs.c, - modules/em8300_main.c: - Only include linux/devfs_fs_kernel.h if CONFIG_DEVFS_FS is - defined. This should fix compilation issues with 2.6.18(rc) - kernels. - -2006-08-23 Ville Skyttä - * scripts/microcode_upload.pl.in, - scripts/Makefile.am, - scripts/.cvsignore, - configure.in: - Drop microcode_upload.pl; em8300setup can handle the manual - load case, and the modules nowadays can pull in the microcode - on demand as well. - -2006-07-09 Nicolas Boullis - * modules/em8300_alsa.c: - Improve the ALSA support, by mimicking the functions in - pcm-indirect.h. - - * modules/em8300_alsa.c: - Kill the old snd_magic stuff. - -2006-05-12 Nicolas Boullis - * modules/adv717x.c, - modules/bt865.c, - modules/em8300_main.c, - modules/encoder_output_mode.h: - Convert the module arguments declarations from the old MODULE_PARM - interface to the (not so) new module_param one. The old interface - should not be supported anymore with 2.6.17 kernels. - -2006-04-24 Ville Skyttä - * Makefile.am: - Fix "make install" for firmwareless tarballs. - -2006-04-10 Nicolas Boullis - * configure.in, - modules/Makefile: - New development version. - - * include/linux/em8300.h, - modules/EM8300.conf, - modules/Makefile, - modules/em8300_alsa.c, - modules/em8300_alsa.h, - modules/em8300_audio.c, - modules/em8300_compat24.h, - modules/em8300_devfs.c, - modules/em8300_devfs.h, - modules/em8300_ioctl.c, - modules/em8300_ioctl32.c, - modules/em8300_ioctl32.h, - modules/em8300_main.c, - modules/em8300_misc.c, - modules/em8300_procfs.c, - modules/em8300_procfs.h, - modules/em8300_registration.c, - modules/em8300_registration.h, - modules/em8300_sysfs.c, - modules/em8300_sysfs.h, - modules/em8300_ucode.c, - modules/em8300_udev.c, - modules/em8300_udev.h: - Merge the ALSA branch into MAIN. - -2006-04-09 Nicolas Boullis - * configure.in, - modules/Makefile: - Release 0.15.3. - -2006-04-04 Nicolas Boullis - * modules/adv717x.c, - modules/bt865.c, - modules/em8300_main.c: - Add version information to the modules, when possible. Thanks to - Tommi Lundell who suggested this feature. - - * modules/em8300_ucode.c: - (Hopefully) Fix automatic firmware loading for "recent" 2.4 - kernels. Thanks to AM and Alonso y Eydis who both reported the - build failure. - -2006-03-28 Nicolas Boullis - * modules/README-modoptions: - Document the dsp_num option of the em8300 module. Thanks to - Brendon Higgins who wrote the description. - -2006-01-28 Nicolas Boullis - * modules/adv717x.c: - Completely nuke the progressive output modes. - -2006-01-26 Nicolas Boullis - * modules/em8300_ioctl32.c: - Fix a very annoying name clash between two - different em8300_ioctl32_init functions. - - * modules/Makefile, - modules/adv717x.c, - modules/bt865.c, - modules/em8300_i2c.c: - Make the driver compatible vith the i2c stack in 2.6.16 - kernels. Thanks to Ville Skyttä for doing the hard work. - -2006-01-25 Nicolas Boullis - * include/linux/em8300.h, - modules/Makefile, - modules/em8300_devfs.c, - modules/em8300_main.c, - modules/em8300_procfs.c, - modules/em8300_registration.c, - modules/em8300_registration.h, - modules/em8300_sysfs.c, - modules/em8300_udev.c, - modules/em8300_udev.h: - Fix support for recent versions of udev by using the good - functions. Many thanks to all those who helped make this possible - by reporting the problem, testing my patches and checking my - code. - - * modules/Makefile, - modules/em8300_ioctl32.c, - modules/em8300_ioctl32.h, - modules/em8300_main.c: - Fix support for 32-bit ioctls with 64-bit kernels for recent - kernels (>= 2.6.14), and support 32-bit ioctls for x86_64. Many - thanks to István Váradi who did all the work. - -2006-01-21 Ville Skyttä - * configure.in: - Switch to GTK2 for the GUI utilities. - - * m4/gtk.m4: - Removed. - -2005-12-17 Ville Skyttä - * scripts/*: - Whitespace cleanup, no functional changes. - -2005-12-01 Ville Skyttä - * Makefile.am: - Require automake >= 1.8 for $(mkdir_p). - -2005-11-23 Nicolas Boullis - * configure.in, - modules/Makefile: - Release 0.15.2. - -2005-11-19 Nicolas Boullis - * modules/em8300_i2c.c: - Lock the encoder's module while it is in use. Many thanks to Jon - Burgess who did all the work. - -2005-11-15 Ville Skyttä - * dhc/dhc.desktop, - overlay/autocal.desktop: - Remove the (nowadays invalid) "SystemSetup" category. - - * dhc/.cvsignore, - dhc/Makefile.am, - dhc/dhc.desktop: - Extract an icon from pixmaps.h for use in the DHC menu entry. - - * modules/README-modoptions, - modules/bt865.c: - Rename the rgb_mode parameter to output_mode for consistency - with the adv717x driver. - -2005-11-06 Ville Skyttä - * modules/README-modoptions: - Improve phrasing of output_mode descriptions. - - * dhc/dhc_main.c, - overlay/autocal.c, - overlay/dxr3view.c, - overlay/overlay.c: - Avoid crashes when the device cannot be opened, improve error - messages. - -2005-11-05 Nicolas Boullis - * modules/README-modoptions, - modules/adv717x.c: - Make it possible to select the output mode with adv717x - chips. This adds support for YUV, and for svideo to composite - video adapters that merely use the luminance signal as composite - video. Many thanks to Derrik Pates who did most (not to say all) - the work. - - * Makefile.am: - Fix the firmware installation command, to make it possible to - build and install outside the source directory. - -2005-11-04 Nicolas Boullis - * modules/adv717x.c, - modules/bt865.c: - Stop using i2c_is_isa_adapter as it seems to be useless, and is - not compatible with the i2c stack in 2.6.14 kernels. - - * modules/adv717x.c, - modules/bt865.c, - modules/em8300_fifo.c, - modules/em8300_main.c: - Stop including the asm/segment.h header file as it seems to bring - nothing useful, and has disappeared in 2.6.14 kernels. - -2005-10-19 Nicolas Boullis - * Makefile.am, - configure.in, - em8300setup/em8300setup.1, - em8300setup/em8300setup.c, - include/linux/em8300.h, - modules/em8300_audio.c, - modules/em8300_ioctl.c, - modules/em8300_main.c, - modules/em8300_ucode.c, - scripts/.cvsignore, - scripts/microcode_upload.pl, - scripts/microcode_upload.pl.in: - Implement automatic on-demand loading of the firmware using the - hotplug facility (also available in udev). This requires to change - the default firmware location. - -2005-10-19 Ville Skyttä - * COPYING, - dhc/dhc_callback.c, - dhc/dhc_gui.c, - dhc/dhc_main.c, - em8300setup/em8300setup.c, - modules/Makefile, - modules/adv717x.c, - modules/bt865.c, - modules/em8300_compat24.h, - modules/em8300_devfs.c, - modules/em8300_devfs.h, - modules/em8300_fifo.c, - modules/em8300_ioctl32.c, - modules/em8300_ioctl32.h, - modules/em8300_main.c, - modules/em8300_procfs.c, - modules/em8300_procfs.h, - modules/em8300_registration.c, - modules/em8300_registration.h, - modules/em8300_sysfs.c, - modules/em8300_sysfs.h, - overlay/allblackbut.h, - scripts/msexpand.pl: - Update FSF's address. - -2005-09-16 Ville Skyttä - * modules/em8300_procfs.c: - Include version of loaded microcode in procfs info. - -2005-09-05 Nicolas Boullis - * modules/em8300_main.c: - Properly catch errors in pci_enable_device. Thanks to Jon Burgess - for spotting the problem and providing a patch. - - * configure.in, - modules/Makefile: - Release 0.15.1. - -2005-08-31 Nicolas Boullis - * modules/em8300_i2c.c: - Fix a bug in the setup of the second i2c adapter, spotted by Marco - Schluessler (LordZodiac). This bug was introduced on March 16 this - year. Thanks Marco. - -2005-08-08 Nicolas Boullis - * Makefile.am, - configure.in, - dhc/Makefile.am, - em8300setup/Makefile.am, - include/linux/Makefile.am, - overlay/Makefile.am: - Autotools cleanup. - - * include/libdxr3, - libdxr3: - Finish to kill libdxr3, as suggested by Ville Skyttä. - - * modules/adv717x_eeprom.c.old: - Also kill the old modules/adv717x_eeprom.c.old, as suggested - by Ville Skyttä. - -2005-07-23 Nicolas Boullis - * modules/devfs_symlinks, - modules/devices.sh: - Completely kill the old unnumbered compatibility symlinks, - following Ville Skyttä's suggestion. Thanks Ville. - - * Makefile.am, - configure.in, - em8300.spec.in, - em8300.sysv.in: - Kill the old outdated rpm stuff, as suggested by Ville Skyttä. - - * Makefile.am, - bootstrap, - configure.in, - include/Makefile.am, - overlay/Makefile.am: - Kill the libdxr3 library that nobody ever used. Thanks to Ville - Skyttä for finding a few bits I had missed. - -2005-07-13 Nicolas Boullis - * modules/em8300-udev.permissions, - modules/em8300-udev.rules: - Kill the old obsolete em8300-udev.permissions file and put its - settings into em8300-udev.rules; kill the compatibility symlinks - as everyone should be using the numbered devices by now. - -2005-06-01 Nicolas Boullis - * configure.in, - modules/Makefile: - Release 0.15.0. - -2005-05-23 Nicolas Boullis - * modules/em8300_sysfs.c: - Apply the patch by Ville Skyttä to lower the priority of the - em8300_class_release messages and to make them slightly more - informative. Thanks Ville. - - * modules/em8300_compat24.h, - modules/em8300_fifo.c, - modules/em8300_ioctl.c, - modules/em8300_spu.c, - modules/em8300_video.c: - Replace the old deprecated *_sleep_on_* functions with the new - wait_event_* ones. Many thanks to Jon Burgess who did most (not to - say all) the work. - -2005-05-17 Nicolas Boullis - * modules/em8300_main.c: - Add a new module option to choose the dsp number to use. Thanks to - Brendon Lloyd Higgins for providing the patch. - - * include/linux/em8300.h, - modules/em8300_audio.c, - modules/em8300_fifo.c, - modules/em8300_ioctl.c, - modules/em8300_spu.c, - modules/em8300_ucode.c, - modules/em8300_video.c: - Use (or properly and explicitely discard in a few cases) the - return value of copy_from_user and copy_to_user. Thanks to Ville - Skyttä for pointing the problem, and for fixing my broken patch. - -2005-05-10 Nicolas Boullis - * modules/em8300_i2c.c: - There seem to be eeprom chips connected through i2c; no need to - warn about them. Thanks to many and especially Marcin DrStorm - Śliwiński for their help. - - * modules/em8300_sysfs.c: - Move the sysfs information from class media to class em8300. - - * modules/Makefile: - Improve the part that extract the kernel version to handle complex - include/linux/version.h (as seen for example on Fedora) that - handle several different versions. Thanks to Ville Salmela for - showing the problem. - - * overlay/overlay.c: - Fix the order of the arguments to memset. Thanks to Ville Skyttä - for spotting and fixing this. - - * libdxr3/dxr3-api.c, - overlay/autocal.c, - overlay/dxr3view.c, - overlay/overlay.c: - Nuke some unused variables. Thanks again to Ville Skyttä for - these. - -2005-04-29 Nicolas Boullis - * em8300setup/em8300setup.1: - Fix the em8300setup manpage, as suggested by Ville Skyttä. - - * modules/em8300_main.c, - modules/em8300_spu.c, - modules/em8300_video.c: - Initialize the wait queues before the IRQ is requested, as it - seems to prevent the system from hanging up randomly when the - em8300 module is loaded for some people. Many thanks to Jon - Burgess for this patch. - -2005-04-09 Nicolas Boullis - * modules/adv717x.c, - modules/bt865.c: - Since 2.6.12 kernels (well, at the time of this writing, it is not - released yet, but this is true for -rc2), i2c clients dont have - id any more. Thanks to Jure Pečar who first pointed this out. - - * Changelog: - Convert to UTF-8 to spell Jure's name correctly. - - * modules/em8300_audio.c, - modules/em8300_ioctl.c, - modules/em8300_spu.c: - Replace all calls to verify_area with calls to access_ok, as - verify_area is deprecated in 2.6.12-rc2 and supposed to go away - soon. - - * Makefile.am: - Clean up EXTRA_DIST. - -2005-04-07 Nicolas Boullis - * modules/em8300_procfs.c: - Give more useful information in /proc/em8300/ when no - microcode is loaded. Thanks to Ville Skyttä who did most the - work. - -2005-03-30 Nicolas Boullis - * .cvsignore: - Add autom4te.cache to .cvsignore, as suggested by Ville Skyttä. - - * dhc/Makefile.am, - dhc/dhc.desktop, - overlay/Makefile.am, - overlay/autocal.desktop, - overlay/dxr3view.desktop: - Add .desktop files, provided by Ville Skyttä. - - * modules/em8300-udev.permissions, - modules/em8300-udev.rules: - Add udev configuration files, provided by Ville Skyttä. Thanks - Ville for those contributions. - -2005-03-24 Nicolas Boullis - * modules/Makefile, - modules/adv717x.c, - modules/bt865.c: - Support 2.4.x kernels with new external 2.9.x i2c - modules. Unfortunately, that breaks using 2.4.x kernels with the - deprecated 2.8.x i2c modules; a new option in the makefile fixes - this by giving the user the ability to force the i2c API. - - * debian: - Nuke the debian directory as it was completely outdated, and some - users found it confusing. - - * em8300setup/Makefile.am, - em8300setup/em8300setup.1: - Add a manpage for em8300setup. - - * Makefile.am, - bootstrap: - Update the autotools. - - * em8300setup/Makefile.am: - Distribute the new manpage for em8300setup. - -2005-03-08 Nicolas Boullis - * em8300setup/em8300setup.c: - Improve em8300setup's usage message. Thanks to Ville Skyttä for - the rephrasing. - - * include/linux/Makefile.am: - Nuke extraneous creation of the /usr/include/linux - directory. Thanks to Ville Skyttä. - -2005-03-07 Nicolas Boullis - * modules/adv717x.c, - modules/bt865.c: - Kill the warnings about ISA bus adapters as some people seem to - consider them offensive or confusing. - - * acconfig.h, - configure.in: - Improve use of AC_DEFINE in configure.in and remove acconfig.h to - kill a warning when running autoconf. Thanks to Ville Skyttä. - -2004-11-14 Nicolas Boullis - * dhc/Makefile.am, - em8300setup/Makefile.am, - libdxr3/Makefile.am, - libdxr3/libac3/Makefile.am, - overlay/Makefile.am: - Use AM_CFLAGS and AM_LDFLAGS rather than CFLAGS and LDFLAGS to - avoid automake warnings. Thanks to Ville Skyttä. - - * modules/Makefile: - Support DESTDIR to install the built modules in a root directory - different from /, which is especially useful to build - packages. Thanks to Ville Skyttä. - - * scripts/Makefile.am: - As Ville Skyttä pointed out, there's no need to install em8300.pm - with execute permissions. Thanks again to him. - - * scripts/em8300.pm: - Make em8300.pm a perl package, and improve error message when - /dev/em8300 cannot be opened. Thanks again to Ville Skyttä. - - * .cvsignore, - autotools/.cvsignore, - em8300setup/.cvsignore, - modules/.cvsignore: - Add some new files to .cvsignore. - -2004-11-10 Nicolas Boullis - * modules/em8300_main.c: - Replace remap_page_range with remap_pfn_range for kernels 2.6.10 - and above, as spotted by Christian Gmeiner. Thanks to him. - - * modules/em8300_main.c: - Call pci_disable_device when a card is unregistered, as suggested - by Christian Gmeiner. Thanks again. - -2004-10-27 Nicolas Boullis - * include/linux/em8300.h, - modules/em8300_devfs.c, - modules/em8300_main.c, - modules/em8300_sysfs.c: - Enable (automatic) dynamic assignment of major number. - -2004-09-05 Nicolas Boullis - * modules/em8300_audio.c: - Fix the SNDCTL_DSP_SYNC audio ioctl, as suggested by Aaron - Kaplan. Many thanks to him. - -2004-08-21 Nicolas Boullis - * modules/em8300_procfs.c: - Update procfs to not segfault if no video encoder chip was - detected and to show the real displaybuffer resolution. - -2004-05-02 Nicolas Boullis - * modules/Makefile, - modules/em8300_ioctl.c, - modules/em8300_main.c, - modules/em8300_registration.c, - modules/em8300_registration.h: - Define a new common interface for all functions that need to be - called when the module in registered/unregistered, when a card is - registered/unregistered or enabled/disabled. - - * modules/Makefile, - modules/em8300_main.c, - modules/em8300_procfs.c, - modules/em8300_procfs.h, - modules/em8300_registration.c: - Convert all the procfs stuff to that new interface. - - * modules/Makefile, - modules/em8300_devfs.c, - modules/em8300_devfs.h, - modules/em8300_main.c, - modules/em8300_registration.c: - Also convert all the devfs stuff to that new interface. - - * include/linux/em8300.h, - modules/Makefile, - modules/em8300_registration.c, - modules/em8300_sysfs.c, - modules/em8300_sysfs.h: - Add sysfs support. Many thanks to Eric Donohue who did most the - work. - - * modules/em8300_devfs.c, - modules/em8300_sysfs.c: - Only create /dev/em8300_{mv,ma,sp}-{0,1,2,3} when the microcode is - loaded. - - -2004-04-14 Nicolas Boullis - * modules/em8300_compat24.h, - modules/em8300_main.c: - New code for pci probing. Many thanks to Andreas Schultz who did - most (not to say all) the work. - -2004-04-12 Nicolas Boullis - * modules/em8300_main.c: - Check if CONFIG_MTRR is defined before #including asm/mtrr.h as it - does exist only on i386 and x86_64. (Reverted from previous change.) - -2004-03-26 Nicolas Boullis - * modules/adv717x.c, - modules/adv717x.h, - modules/bt865.c, - modules/bt865.h, - modules/em8300_compat24.h, - modules/em8300_i2c.c, - modules/em8300_main.c: - Add a new modules/em8300_compat24.h file, and put there everything - that is needed for compatibility between 2.4 and 2.6 kernels. Many - thanks to Andreas Schultz for the idea and for doing most (not to - say all) the work. - -2004-03-25 Nicolas Boullis - * modules/ldm: - I stupidly reversed the test in my previous update of modules/ldm; - repair this. Sorry for this stupid mistake. - -2004-03-24 Nicolas Boullis - * modules/em8300_main.c: - Since kernel 2.5.69, one should use devfs_remove instead of - devfs_unregister; and since 2.5.70, devfs_mk_cdev instead of - devfs_register. Thanks to Peter Zijlstra for his patch (forwarded - by Håkon Skjelten). - - * modules/ldm: - Update ldm to support .ko modules (since kernel 2.5.51), thanks to - Håkon Skjelten. - - * modules/Makefile: - Rewrite modules/Makefile mostly from scratch to support both 2.4 - and 2.6 kernels in a much simpler way. - - * modules/em8300_main.c: - Call em8300_spu_release when em8300_io_release is called for an - em8300_sp device. Thanks to Håkon Skjelten for this change. - -2004-03-23 Nicolas Boullis - * modules/em8300_main.c: - Since before kernel 2.4.0, the file_operations structure has an - owner field. Thanks to Håkon Skjelten for pointing this. - - * modules/adv717x.c, - modules/bt865.c: - There's no need to include linux/wrapper.h in modules/adv717x.c or - modules/bt865.c. - - * modules/em8300_main.c: - Since kernel 2.5.12, mem_map_reserve and mem_map_unreserve from - linux/wrapper.h are replaced by SetPageReserved and - ClearPageReserved. Thanks to Håkon Skjelten for pointing this. - - * modules/em8300_main.c: - Between kernel 2.5.2 and 2.6.0-test4 (inclusive), one must use - minor(inode->i_rdev) rather than MINOR(inode->i_rdev). Thanks - again to Håkon Skjelten. - -2004-03-16 Nicolas Boullis - * modules/em8300_fifo.c, - modules/em8300_ioctl.c, - modules/em8300_spu.c, - modules/em8300_video.c: - The variable jiffies has type unsigned long, not unsigned int; - thanks to Håkon Skjelten for pointing this. - - * modules/adv717x.c, - modules/bt865.c: - Erase (set to zero) the memory freshly allocated with - kmalloc for an i2c_client structure. Thanks again to Håkon - Skjelten. - - * modules/adv717x.c, - modules/bt865.c, - modules/em8300_i2c.c: - Since kernel 2.5.67, the i2c_client and i2c_adapter structs have - no data field; once more, thanks to Håkon Skjelten for his patch. - - * modules/adv717x.c, - modules/bt865.c, - modules/em8300_main.c: - Since kernel 2.5.18, no symbol is exported by default, so - EXPORT_NO_SYMBOLS is useless. Thanks again to Håkon Skjelten for - pointing this. - - * modules/adv717x.c, - modules/bt865.c, - modules/em8300_main.c: - Since kernel 2.5.48, MOD_INC_USE_COUNT and MOD_DEC_USE_COUNT are - deprecated. Thanks again to Håkon Skjelten. - - * modules/em8300_main.c: - Since kernel 2.5.48, request_irq is in linux/interrupt.h . Thanks - again to Håkon Skjelten. - - * modules/em8300_main.c: - Since kernel 2.5.69, the handler provided to request_irq - (em8300_irq) must return an irqreturn_t value. Thanks again to - Håkon Skjelten. - - * modules/em8300_main.c: - Since kernel 2.5.3, the interface of the remap_page_range function - changed. Thanks again to Håkon Skjelten. - -2004-03-14 Nicolas Boullis - * modules/Makefile: - When building modules, if $(I2C_LOCATION) is set, ensure that - the i2c headers from $(I2C_LOCATION) are prioritized over those - from the kernel source, thanks to Janne Kujanpää for pointing - the problem. - - * modules/Makefile, - modules/em8300_fifo.c, - modules/em8300_fifo.h, - modules/em8300_main.c, - modules/em8300_spu.c, - modules/em8300_video.c: - Drop support for older than 2.4.0 kernels. - -2004-02-26 Nicolas Boullis - * modules/em8300_fifo.c, - modules/em8300_fifo.h: - Do locking with proper mutexes (implemented with semaphores) - rather than misusing spinlocks. Thanks to Håkon Skjelten and - Rune for pointing the misuse while working on a patch to support - 2.6 kernels. - -2004-02-17 Nicolas Boullis - * modules/em8300_fifo.c, - modules/em8300_fifo.h: - Use pci_alloc_consistent to allocate a DMA-able buffer rather - than kmalloc + virt_to_bus, as virt_to_bus is not supported on - sparc. - - * modules/Makefile: - Add support for sparc64 systems. - - * modules/Makefile, - modules/em8300_ioctl32.c, - modules/em8300_ioctl32.h, - modules/em8300_main.c: - Add support for 32-bit ioctls on 64-bit systems with a 32-bit - userspace. - - * modules/Makefile: - Fix support for building with i2c modules out of the kernel. - - * ChangeLog: - Update the ChangeLog. - -2004-02-09 Nicolas Boullis - * modules/em8300_main.c: - Check for O_NONBLOCK whenever a write is attempted, ans it may - be changed after opening with fcntl. Thanks to Michael Roitzsch - for this patch. - - * modules/em8300_fifo.c: - Try to properly detect when the DMA engine is frozen. Many - thanks to Michael Roitzsch for his initial patch and for testing - this one. - - * modules/em8300_misc.c: - Give the CPU back to other processes when waiting for a - condition on the register of the em8300 chip. - -2004-02-08 Nicolas Boullis - * modules/em8300_audio.c: - Fix em8300 audio for big-endian systems, and for big-endian - audio data on little-endian systems. - - * modules/Makefile: Add support for PowerPC. - -2003-12-08 Nicolas Boullis - * modules/em8300_fifo.c, - ChangeLog: - Fix a bug (introduced by myself in the patch for alpha support) - that caused sound to to skip. Thanks to arj (sorry, I don't know - your real name) for spotting this bug. Also change my own e-mail - in this ChangeLog and in the AUTHORS file. - -2003-12-06 Nicolas Boullis - * scripts/microcode_extract.pl: - Fix a tiny bug in scripts/microcode_extract.pl that caused the - third option (NAMEBASE) not to work. - -2003-12-05 David Holm - * include/linux/em8300.h, - modules/Makefile, - modules/adv717x.c, - modules/bt865.c, - modules/em8300_audio.c, - modules/em8300_dicom.c, - modules/em8300_fifo.c, - modules/em8300_fifo.h, - modules/em8300_i2c.c, - modules/em8300_ioctl.c, - modules/em8300_main.c, - modules/em8300_misc.c, - modules/em8300_reg.h, - modules/em8300_spu.c, - modules/em8300_ucode.c, - modules/em8300_video.c: - Applied patch from Nicolas Boullis which - effectively adds Alpha support and a patch from the same guy which - makes it possible to set different module options for multiple cards. - -2003-11-22 David Holm - * modules/em8300_main.c, - modules/em8300_video.c: - Applied patch from Anders Rune Jensen which - fixes the O_NONBLOCK bug. - -2002-01-08 Rick Haines - - * modules/adv717x.c: - Apply a patch from Dofri Jonsson . - We were using the wrong index when applying - pixelport_adjust_pal on the ADV7170 - -2003-11-22 David Holm - * modules/adv717x.c, - modules/bt865.c, - modules/em8300_audio.c, - modules/em8300_dicom.c, - modules/em8300_fifo.c, - modules/em8300_fifo.h, - modules/em8300_i2c.c, - modules/em8300_ioctl.c, - modules/em8300_main.c, - modules/em8300_misc.c, - modules/em8300_spu.c, - modules/em8300_ucode.c, - modules/em8300_video.c, - modules/em9010.c: - Added a patch from Nicolas Boullis which - seamlessly integrates i2c-2.8 support. - -2003-08-10 David Holm - * modules/em8300_audio.c, - modules/em8300_fifo.c, - modules/em8300_fifo.h, - modules/em8300_ioctl.c, - modules/em8300_main.c, - modules/em8300_spu.c, - modules/em8300_video.c: - Added a patch from Jon Burgess that partly fixes the SPU lockup problems. - -2003-07-28 David Holm - * configure.in: - Fixed version. Spotted by Volker Moell. - -2003-07-25 David Holm - * modules/adv717x.c, - modules/bt865.c, - modules/em8300-i2c-2.8.0.patch, - modules/em8300_audio.c, - modules/em8300_dicom.c, - modules/em8300_fifo.c, - modules/em8300_i2c.c, - modules/em8300_ioctl.c, - modules/em8300_main.c, - modules/em8300_misc.c, - modules/em8300_spu.c, - modules/em8300_ucode.c, - modules/em8300_video.c, - modules/em9010.c: - Reversed the patch from SuSE and added it as a patch. They forgot to - tell me it only works if your kernel is patched with i2c 2.8.0. - -2003-07-17 David Holm - * modules/adv717x.c, - modules/bt865.c, - modules/em8300_audio.c, - modules/em8300_dicom.c, - modules/em8300_fifo.c, - modules/em8300_i2c.c, - modules/em8300_ioctl.c, - modules/em8300_main.c, - modules/em8300_misc.c, - modules/em8300_spu.c, - modules/em8300_ucode.c, - modules/em8300_video.c, - modules/em9010.c: - Applied patch from SuSE which fixes compatibility issues with i2c - 2.8.0. - -2003-06-14 David Holm - * modules/em8300_fifo.c, - modules/em8300_spu.c, - modules/em8300_ioctl.c, - modules/em8300_video.c: - Added patch from Stefan Schluenss - to prevent the driver from blocking on some calls. - -2003-01-09 David Holm - * bootstrap: - Tried to hack around broken (?) autoconf. - -2003-01-08 David Holm - * modules/README-modoptions, - modules/bt865.c, - modules/adv717x.c, - modules/em8300_main.c: - Added patch from Luis.F.Correia" which adds - support for RGB-mode with bt865. - Added patch from Soeren Sonnenburg which fixes problems with - swap_redblue in the adv717x. - Added patch from Michael Roitzsch which fixes - problem with SPU device hanging the em8300. - -2002-11-29 David Holm - * modules/em8300_audio.c: - Changed two pr_infos to pr_debugs. - -2002-11-21 David Holm - * include/linux/em8300.h, - modules/em8300_main.c: - mmap() updates from MiHu. - -2002-11-17 David Holm - * modules/em8300_ioctl.c, - modules/em8300_main.c, - modules/em8300_video.c, - include/linux/em8300.h: - Added patch from MiHu to add support for getting time of next - VBI. - -2002-10-26 David Holm - * modules/Makefile, - modules/em8300_audio.c, - modules/em8300_main.c, - modules/adv717x.c, - em8300setup/em8300setup.c, - em8300setup/Makefile.am, - configure.in - Makefile.am: - Fixed kernel 2.5 support. - You can now set the default module configs in the Makefile. (The - real reason for this is to add config support to the kernel patch). - Lots of fixes to make it more kernel friendly. - Added Malcolm Lashley's em8300setup util and deprecated em8300init - as it doesn't work with perl 5.8. em8300setup has many more features - anyway. - -2002-10-20 David Holm - * modules/em8300_ioctl.c: - Fixed a bug that would cause a kernel oops if you tried - to change the em8300 settings without the microcode - loaded. - -2002-05-03 David Holm - * modules/em8300_audio.c: - Hopefully fixed a bug which would leave data in the audio - buffer when you closed it. - -2002-04-12 David Holm - * modules/em8300_spu.c, - modules/em8300_main.c: - Multiple card support fixed by Carl George - Added spu_release - Some cosmetic changes (K&R) - -2002-02-25 David Holm - * modules/em8300_main.c: - 2.2 kernel fix (argh, ppl stop using this kernel ;) - -2002-02-23 Jonas Birme - * modules/Makefile: - Removed the installation of em8300.h in install-newkern. - It's included when installing em8300 (not the modules). - -2002-02-19 David Holm - * dhc/dhc_main.c, - overlay/autocal.c, - overlay/dxr3view.c, - modules/em8300_main.c: - Fixed compilation on 2.5 kernels - Fixed bugs with old naming scheme - -2002-02-15 David Holm - * modules/em8300_main.c: - Changed behaviour of procfs entry. It now shows up as - /proc/em8300/ instead of /proc/em8300/em8300- - I hate repeating myself ;) - -2002-02-13 Jonas Birme - * scripts/microcode_upload.pl - Fixed the ugly hardcoded path in the script. - It's now optional to specify microcode, defaults to - /usr/share/misc/em8300.uc - -2002-02-11 Jonas Birme - * modules/Makefile - Fixed the install-newkern so it uses $(prefix) for all files. - -2002-02-09 David Holm - * include/linux/em8300.h, - modules/em8300_audio.c, - modules/em8300_video.c, - modules/em8300_spu.c: - Fixed video and spu flushing - Added patch from Michael Roitzsch to fix playback of mono audio - on digital output. Some day we can debate if this should be done - in the driver or by software, for now lets just accept he made a - fix and that we should be happy ppl help out. - -2002-02-08 David Holm - * modules/em8300_main.c: - Fixed yet another issue with 2.2 kernels - -2002-02-02 David Holm - * modules/em8300_main.c: - Added poll/select - Added dsp_poll, this will increase performance and usability in applications - where low latency is very important. XMMS also makes good use of this feature - -2002-01-26 David Holm - * modules/em8300_audio.c: - Fixed a bug in SNDCTL_DSP_RESET which would cause apps to hang - -2002-01-21 David Holm - * modules/em8300_audio.c: - Applied patch from Steven Brookes which fixes a bug when setting up digital ac3 via oss - -2002-01-20 David Holm - * configure.in, - Makefile.am, - modules/adv717x_eeprom.c, - modules/em8300_main.c, - modules/Makefile: - Removed, all affected files have been updated (including files in debian subdir) - Changed so that uninplemented SNDCTL calls return -ENOSYS (uninplemented) instead of -EINVAL (invalid argument) - Fix case when users compile with devfs support but don't mount it at boot - update version, add acconfig.h to EXTRA_DIST - -2002-01-19 David Holm - * modules/em8300_video.c: - Fixed flushing - It now checks the kernel for CONFIG_SOUND instead of specifying it with -D - -2002-01-17 David Holm - * modules/em8300_audio.c: - Added mute patch from Steven Brookes - Fixed DSP_AUDIO_RESET - Added em8300_video_flush - Added EM8300_IOCTL_FLUSH - -2002-01-16 David Holm - * modules/em8300_fifo.c: - Enter spinlock on writes - Changed REGISTER_DSP to CONFIG_SOUND_OSS - Added MVCOMMAND_SYNC - -2002-01-16 Jonas Birme - * scripts/microcode_extract.pl: - Added a destdir to the script, so the microcode can be stored in - another dir than the current. - -2002-01-15 David Holm - * scripts/microcode_upload.pl: - Made the perl script more devfs friendly (it's overambigous since I don't know much perl, but it does the job on both devfs and non-devfs systems ;) - -2002-01-14 David Holm - * include/linux/em8300.h, - modules/adv717x.c, - modules/bt865.c, - modules/em8300_ioctl.c: - Reverted to old way of handling encoder modes (one def in em8300.h and another in encoder.h) - -2002-01-13 (post 0.10.1) David Holm - * include/linux/em8300.h, - modules/adv717x.c, - modules/bt865.c, - modules/em8300_ioctl.c, - modules/em8300_main.c: - Fixed em8300.h having 3 signalling modes and encoder.h having 7. All 7 are now defined - in em8300.h only. - Fixed devfs bug which would cause the driver not to find an em8300 if you unload the - module after loading a microcode and then trying to load it again. - -2002-01-13 David Holm - * include/linux/em8300.h, - modules/em8300_main.c, - modules/em8300_video.c, - modules/em8300_audio.c, - modules/em8300_spu.c, - modules/em8300_ioctl.c, - modules/adv717x.c, - modules/bt865.c, - modules/adv717x_eeprom.c, - modules/encoder.h: - It is now possible to open the devices in nonblocking mode - Fixed warnings - Fixed harmless but annoying bug in adv717x_command (returning -EINVAL on error) - Added missing #include to bt865.c and adv717x.c - gcc 3 fixes - -2002-01-12 David Holm - * include/linux/em8300.h, - libdxr3/dxr3-api.c, - modules/adv717x.c, - modules/bt865.c, - modules/em8300_audio.c, - modules/em8300_ioctl.c, - modules/em8300_main.c, - modules/encoder.h: - Added all supported encoder modes to em8300 - Added MODULE_PARM_DESC - Added MODULE_SUPPORTED_DEVICE - Removed audio pts code - Fixed devfs bug - K&R fixes in em8300_audio.c - -2002-01-11 Jonas Birme - * modules/Makefile: - Fixed a bug in install-newkern, and added $(prefix) to - that rule also. Changed KERNEL_LOCATION= to KERNEL_LOCATION?= - -2002-01-10 David Holm - * modules/Makefile, - modules/README-2.4: - Removed nonworking devfs installation script and added - a devfs install guide in the readme instead... - -2002-01-10 David Holm - * modules/Makefile: - It now automatically installs/removes the appropriate - entries in devfsd.conf - -2002-01-09 David Holm - * em8300_main.c: - Fixed a bug I accidentally introduced with devfs - -2002-01-08 Rick Haines - - * scripts/microcode_upload.pl: - display error message if it can't open - the first device - - * dhc/dhc_main.c, - libdxr3/dxr3-api.c, - modules/rmm, - overlay/allblackbut.c, - overlay/autocal.c, - overlay/dxr3view.c, - overlay/overlay.c: - minor cleanups from James - (exit -> _exit, some missing returns, - include string.h in a few files, - don't remove i2c* in rmm). - -2002-01-08 Rick Haines - - * AUTHORS, - modules/em8300_main.c: - minor devfs/procfs #ifdef cleanups from Graeme. - -2002-01-07 David Holm - - * modules/Makefile: - added uninstall feature - - * modules/devfs_symlinks, - modules/em8300_main.c: - quick fix to devfs to make it work on mandrake - -2002-01-02 Rick Haines - - * configure.in, - modules/Makefile: - update version - -2001-12-29 Rick Haines - - * modules/Makefile, - modules/em8300_main.c: - procfs information updates from David - -2001-12-29 Rick Haines - - * modules/em8300.sysv.in: - fix eeprom module name - (from Sergei 'Jin' Bostandjan) - -2001-12-28 David Holm - - * include/linux/em8300.h, - modules/em8300_ioctl.h: - Added the following ioctls - GET_VIDEOMODE - GET_PLAYMODE - GET_SPUMODE - Fixed typos - - * modules/Makefile: - gcc sanity check - More intuitive install method by - Graeme Gregory - - * modules/README-2.4: - Removed old install info and added part about - devfs support - - * modules/adv717x.c: - Fixed typo - - * modules/devfs_symlinks: - Example /etc/devfs/compat_symlinks for compatibility - - * modules/em8300_audio.c, - modules/em8300_fifo.c, - modules/em8300_fifo.h: - Lots of bugfixes including broken digital audio - output by Steven Brookes - - * modules/em8300_main.c: - Added devfs fs support - Added proc fs support - Fixed multiple card support - (I hope, I'm unable to test it) - -2001-12-18 Rick Haines - - Apply the following from Larice Robert. - - * modules/em8300_fifo.c: - change 4 to fifo->slotptrsize - reorder some lines to fix possible problem - - * modules/em8300_video.c: - change 'read_register(ptsfifoptr+1) & 1' to - 'read_register(ptsfifoptr+3) & 1' - - * modules/em8300_video.c: - correctly update em->video_offset - -2001-12-18 Rick Haines - - * modules/adv717x.c: - ADV7170 PAL mode register mods from Vidar Hoel - - * modules/em8300_dicom.c: - NTSC mode tweaks from Serguei Miridonov - - * AUTHORS: - update Chris Hoovers email address - -2001-11-29 Jonas Birme - - * modules/em8300_audio.c - a bugfix submitted by David Holm. DSP_RESET fixed - in em8300_audio - -2001-11-25 Rick Haines - - * modules/eeprom.c, - modules/adv717x_eeprom.c, - modules/Makefile*, - modules/README-modules.conf, - modules/ldm, - modules/rmm: - rename eeprom per request from J G Miller - (conflicts with lm-sensors) - - * modules/adv717x.c: - make swap_redblue_pal apply to NTSC - -2001-11-05 David Holm - - * include/libdxr3/api.h, - libdxr3/dxr3-api.c, - modules/em8300_audio.c, - modules/em8300_main.c: - added some missing ioctl to em8300_audio.c - fixed bug in em8300_main.c causing the mtrr - to be removed twice - changes made to the api! - -2001-11-04 Rick Haines - - * acconfig.h, - configure.in: - instead of stopping if GTK not found, - just don't build dhc and dxr3view. - -2001-11-04 Rick Haines - - * include/libdxr3/api.h, - libdxr3/dxr3-api.c: - patch from David to rename - dxr3_audio_get_bytesleft() to - dxr3_audio_get_bytesinbuffer() - - * include/linux/mtrr.h, - modules/em8300_main.c: - patch from David to add mtrr support - (maybe speedup the fifo operations) - -2001-11-03 Rick Haines - - * include/libdxr3/api.h, - libdxr3/dxr3-api.c: - patch from David Holm to add - dxr3_audio_get_buffersize() and - dxr3_audio_get_bytesleft() - -2001-10-27 Rick Haines - - * modules/Makefile, - modules/*.c: - module license and malloc.h/slab.h changes - from Szabo Akos - -2001-09-30 Rick Haines - - * em8300.spec.in, - configure.in, - Makefile.am: - updates from Andrew - - * modules/em8300_audio.c: - set correct speed for AC3 output - - * include/linux/em8300.h: - swap EM8300_AUDIOMODE_DIGITALPCM and - EM8300_AUDIOMODE_DIGITALAC3 so that - dhc switches between analog and digitalpcm. - This is the logical order anyway. - -2001-09-19 Rick Haines - - * modules/em8300_audio.c: - define AFMT_AC3 if it's not already - -2001-09-10 Rick Haines - - * modules/em8300_audio.c, - include/linux/em8300.h: - maybe fix digital output modes - -2001-09-10 Rick Haines - - * debian/changelog, - debian/rules, - debian/setvers.sh: - Uses $(KVERS) instead of ugly uname -r - -2001-09-05 Rick Haines - - * modules/em9010.c: - Another autocal fix from Daniel. - "The content of the overlay register 0x0d - is no more set to 0x44 but its content is set - by the cable detection routine (that was already - existing). The resulting can be 0x44 OR 0x4C." - -2001-09-03 Jonas Birme - - * debian/chagelog, - debian/copyright, - debian/rules, - debian/setvers.sh: - converted to use debhelper as much as possible - -2001-09-02 Rick Haines - - * debian/* - big updates from Jonas and Graeme - - * modules/Makefile: - new Makefile from Jonas/Graeme to - work with both 2.2 and 2.4 kernels - -2001-09-02 Rick Haines - - * include/linux/em8300.h, - modules/em8300_audio.c, - modules/em8300_dicom.c, - modules/em8300_ioctl.c, - modules/em8300_main.c: - Patch from Daniel to fix the clockgen setting for - another kind of board. - - * .cvsingore, - autotools/.cvsignore, - dhc/.cvsignore, - include/.cvsignore, - include/libdxr3/.cvsignore, - include/linux/.cvsignore, - libdxr3/.cvsignore, - libdxr3/libac3/.cvsignore, - overlay/.cvsignore, - scripts/.cvsignore: - Patch to add .cvsingore files from Michael Moerz - -2001-08-19 Rick Haines - - * configure.in: - update version - -2001-08-18 Rick Haines - - * modules/em8300_ioctl.c (em8300_ioctl_setvideomode): - reenable tv mode code no longer necessary here - -2001-08-17 Rick Haines - - * modules/em8300_ioctl.c, - modules/em9010.c, - overlay/allblackbut.c, - overlay/dxr3view.c, - overlay/overlay.c: - Daniel fixes autocal again - - * modules/em8300_ioctl.c, - modules/em8300_main.c, - modules/ldm: - remove overlay_tv_switching option - -2001-08-13 Rick Haines - - * modules/em8300_spu.c, - include/linux/em8300.h: - Eduard added EM8300_IOCTL_SET_BUTTON ioctl for - menu support - -2001-08-13 Rick Haines - - * debian/*: - updates - -2001-08-09 Rick Haines - - * modules/em8300_dicom.c, - modules/em8300_ioctl.c, - modules/em8300_misc.c, - modules/em8300_video.c, - modules/em9010.c, - overlay/overlay.c, - overlay/overlay.h: - Patch from Daniel Chassot - "The folowing patch fixes the autocalibration process, - updates em8300_DICOM_setBCS, add overlay_set_bcs to - overlay.c and enhance em8300_ioctl_overlay_setwindow." - You rock dude. - - * configure.in: - update version - -2001-08-08 Rick Haines - - * debian/changelog, - debian/rules, - modules/Makefile, - modules/Makefile.2.2: - more updates from Jonas - - * modules/Makefile.2.4: - update - -2001-08-08 Rick Haines - - * debian/*: - Debian packaging stuff from Jonas Birme - - * modules/em8300_main.c: - Patch from Eduard to change var_video_value - to 3375. This looks dependent on card version - which is probably why I didn't see a difference. - - * em8300.sysv.in: - Patch from Jeffrey Ingber to make the rpm boot - script upload the microcode - - * modules/Makefile: - Patch from Jeffrey Ingber to use - include/linux/autoconf.h instead of - include/config/modversions.h. - -2001-08-05 Rick Haines - - * modules/README-2.4, - modules/README-2.2: - update - -2001-08-05 Rick Haines - - * modules/Makefile, - modules/Makefile.2.2, - modules/em8300_main.c: - Makefile magic from Graeme to detect whether - sound and i2c bitbanging are configured - -2001-08-04 Rick Haines - - * include/linux/em8300.h, - modules/em8300_audio.c: - move static vars to struct em8300_s - - * modules/em8300_main.c, - modules/em8300_ioctl.c: - add overlay_tv_switching module option - - * modules/README-greeenscreen, - modules/README-modoptions: - renamed - - * xine/README, - xine/dxr3_decoder.c, - xine/video_out_dxr3.c, - xine/Makefile: - plugin removed until necessary - -2001-08-03 Rick Haines - - * modules/em8300_main.c, - modules/Makefile, - modules/README-2.4: - Add REGISTER_DSP to enable registering /dev/dsp - - * include/linux/em8300.h, - modules/em8300_ioctl.c: - Eduard added EM8300_IOCTL_SCR_GET/SET and - EM8300_IOCTL_SCR_GETSPEED/SETSPEED - -2001-08-02 Rick Haines - - * modules/em8300_audio.c: - Fix SNDCTL_DSP_GETOPTR and SNDCTL_DSP_GETODELAY - ioctl's so they work with mono audio - -2001-08-01 Rick Haines - - * modules/em8300_ioctl.c: - revert overlay to tv mode switching patch - since it squishes the overlay mode for me - - * overlay/configs/*, - overlay/Makefile.am: - add sample autocal config files - -2001-08-01 Rick Haines - - * modules/em8300_audio.c: - only use AFMT_AC3 if it's defined - -2001-07-29 Rick Haines - - * modules/em8300_audio.c: - reset mafifo->bytes when the device is opened - -2001-07-29 Rick Haines - - * modules/em8300_ioctl.c: - Patch from Mike Lampard to fix overlay to - tv mode switching - -2001-07-28 Rick Haines - - * include/linux/em8300.h, - modules/em8300_ioctl.c, - modules/em8300_audio.c: - add more CLOCKGEN defines - -2001-07-27 Rick Haines - - * modules/bt865.c, - modules/em8300_dicom.c: - more bt865 ntsc updates from Chris - -2001-07-24 Rick Haines - - * modules/em8300_main.c, - include/linux/em8300.h: - add register_dsp code to use /dev/dsp* - - * modules/em8300_audio.c: - add AFMT_AC3. Someone with an AC3 decoder will have - to verify - - * modules/Makefile: - now installs em8300.h - -2001-07-20 Rick Haines - - * modules/em8300_video.c: - From Daniel Chassot "Adds the dicom kmin computation" - -2001-07-20 Rick Haines - - * xine/video_out_dxr3.c, - xine/README: - Eduard fixed the priority, added tvmode option, and - updated the README - -2001-07-19 Rick Haines - - * xine/*: - Update from Eduard "This version has the possibility of - setting the bcs values and the aspectratio. Priorities - are also working now. If the plugin detects the dxr3 - devices, it activates itself and is taken from XINE due - to a higher priority." - -2001-07-19 Rick Haines - - * modules/Makefile: - Patch from Graeme to change include path order to find - local em8300.h first - - * modules/em8300_audio.c: - Patch from Daniel Chassot "swaps the left and the right - channel on the dxr3 analog output." - - * modules/em9010.c, - modules/em8300_ioctl.c, - include/linux/em8300.h: - Patch from Daniel Chassot "implements the jitter and the - stability control that are available on the dxr3view window. - It also clips the visible area of the DICOM to the visible - area of the screen when in overlay mode." - - * overlay/dxr3view.c: - Patch from Daniel Chassot "keeps the actual window size when - you move the viewing window around the screen." - - * modules/em8300_audio.c, - modules/em8300_fifo.c, - include/linux/em8300.h: - Add OSS ioctl's. Still needs AFMT_AC3 support. - Audio sync is only activated when the SETPTS ioctl is called. - - * modules/em8300_video.c: - Eduard fixed a bug in my ioctl modifications - - * modules/em8300_dicom.c: - Patch from Chris to use the old SYNC values in pal mode - to prevent us breaking it (with slight modifications). - sub_40137 wasn't updating Luma/Chroma with bt865 encoders. - - * xine/xine-lib.diff: - Removed due to merge in Xine cvs. - - * AUTHORS: - Graeme wants email about bugs in his Makefile - -2001-07-17 Rick Haines - - * modules/em8300_dicom.c: - updated sync values from John Stebbins - - * modules/em8300_video.c, - include/linux/em8300.h: - Add SCR GET/SET ioctl's partly from Eduard Hasenleithner - - * xine/* - remove old patches and add 0.5 plugin from Eduard Hasenleithner - - * AUTHORS - Thanks guys - -2001-07-16 Rick Haines - - * modules/em8300_dicom.c: - Patch from Eduard Hasenleithner to fix pal mode - - * configure.in: - Move AC_PROG_CC to placate new autoconf - -2001-07-15 Rick Haines - - * modules/em8300_audio.c: - Patch from Daniel Chassot to fix 1/2 sec sync problem - - * modules/em8300_dicom.c: - Patch from John Stebbins to fix NTSC sync problems - and shift it up a bit. - - * modules/em8300_video.c (em8300_video_sync): - Patch from Eduard Hasenleithner to make em8300_video_sync() - timeout if it takes too long. - - * modules/README-2.4, - modules/README-2.2, - modules/make-modules-2.4, - modules/make-install-2.4, - modules/make-clean: - Remove old 2.4 Makefile stuff - -2001-06-27 Rick Haines - - * modules/adv717x.c (adv717x_update): - Fix color bars. - -2001-06-26 Rick Haines - - * scripts/microcode_upload.pl: - Remove the error message when it can't open a device. - You'll know it failed if you don't get success message(s). - - * modules/Makefile - Add debug target (almost left VIDEOMODE_DEFAULT set to NTSC :) - I'm considering a nice way to add pal and ntsc targets as well. - - * modules/bt865.c, - modules/adv717x.c: - Patch from cch to add color_bars module option to turn on - color bars when the modules load. - -2001-06-23 Rick Haines - - * modules/em8300_ioctl.c: - Merge patch from Daniel Chassot: - - "This one corrects a problem with the value of - em->clockgen that was correct only for the TV mode and - note for the overlay mode." - - "This patch removes all the small color squares that - are displayed over the overlay screen during playback." - -2001-06-20 Rick Haines - - * include/libdxr3/api.h - Add #ifdef __cplusplus stuff as requested by - Stefan Jahn - -2001-06-20 Rick Haines - - Merge some patches from Daniel Chassot. - - * modules/em9010.c: - "The em9010 patch fix a problem with the setting of the - 16bit sync register of the em9010" - - * overlay/dxr3view.c: - "The dxr3view patch fixe a problem with the overlay - initialisation if the screen depth is not 24" - -2001-06-13 Rick Haines - - * modules/bt865.c, - modules/em8300_audio.c, - modules/em8300_video.c, - modules/em8300_dicom.c, - modules/em8300_i2c.c, - modules/em8300_main.c, - modules/em8300_reg.h, - modules/encoder.h, - include/linux/em8300.h: - merge Chris C. Hoover's bt865 patch - - * modules/README-modules.conf - add the lines I put in my modules.conf - -2001-06-13 Rick Haines - - * libdxr3/dxr3-api.c - remove microcode uploading from libdxr3 - You must now manually upload the microcode before - using the device (post-install in /etc/modules.conf) - -2001-06-13 Rick Haines - - * modules/Makefile, - modules/Makefile.2.2, - modules/README-2.2, - modules/README-2.4.0: - Add new Makefile for 2.4 kernels (from Graeme Gregory) and - make it the default. If no problems are found I'll remove - all the make-* scripts. - -2001-06-12 Rick Haines - - * scripts/microcode_upload.pl: - add exit statement if upload fails - -2001-05-13 Rick Haines - - * include/libdxr3/api.h, - libdxr3/dxr3-api.c: - dxr3_audio_write() now just writes the data sent to it, - dxr3_audio_write_ac3() will process it if in digitalac3 mode. - -2001-05-11 Rick Haines - - * modules/em8300_video.c (em8300_video_check_ptsfifo): - make the same change as we did for spu - -2001-05-10 Rick Haines - - * modules/em8300_audio.c: - merge new digitalac3/pcm patch from Mattias Svensson - -2001-05-10 Rick Haines - - * libdxr3/ac3spdif.c (output_spdif), - modules/em8300_audio.c: - revert my change and merge Mattias Svensson's patch - - * xine/xine-0.4.01_dxr3.patch.gz: - put this on the ftp site instead - -2001-05-10 Rick Haines - - * modules/em8300_ioctl.c (em8300_control_ioctl): - add ov_scr and ov_cal to fix some type casting errors - - * libdxr3/ac3spdif.c (output_spdif): - comment out the swab for ac3 data, this should fix digitalac3 - - * modules/em8300_spu.c (em8300_spu_check_ptsfifo): - merge disappearing subtitle patch from Eduard Hasenleithner - -2001-04-23 Rick Haines - - * modules/*: - merge kernel coding style patch from James Farwell - and make a pass through the code myself. - -2001-04-22 Rick Haines - - * modules/em8300_audio.c, - modules/em8300_video.c: - remove the 1 sec requirement for rollover. - Now if we get any pts lower than the lastpts - we'll consider it a rollover. I was attempting - to work around broken mpeg's but it's not worth - doing it in the driver. So much for my eva #4 fix.. - -2001-04-22 Rick Haines - - * m4/gtk.m4, - configure.in, - Makefile.am, - dhc/Makefile.am, - overlay/Makefile.am: - add autoconf check for gtk thanks to m4 file - 'borrowed' from glade by Bo. - -2001-04-20 Rick Haines - - * xine/xine-0.4.01_dxr3.patch.gz: - the aspect ratio stuff is really there this time, - I promise. - - * modules/em8300_audio.c: - work around a weird pts problem in my Evangelion #4 dvd. - -2001-04-20 Rick Haines - - * xine/README, - xine/xine-0.4.01_dxr3.patch.gz: - update xine patch to use installed libdxr3. - Now selects correct aspect ratio (make sure - to get the updated input plugin as well) - -2001-04-19 Rick Haines - - * overlay/dxr3view.c: - make overlay mode default since it works for me now - - * overlay/autocal.c: - fix another hardcoded resolution - NUM_MONITORS needs to go somewhere better - -2001-04-18 Rick Haines - - * modules/em8300_audio.c: - add my_abs() to fix missing abs() with gcc 2.96 - -2001-04-18 Rick Haines - - * modules/em8300_main.c: - patch from Eg to make use_bt865 work with multiple cards. - we'll want to do this with all the options. - - * scripts/microcode_upload.pl: - try to upload microcode to all the devices (from Eg) - -2001-04-17 Rick Haines - - * overlay/dxr3view.c: - patch from Tony Bybell to fix vertical squish - - * overlay/autocal.c: - patch from Tony Bybell for - 'autocal automatic x/y/plane detect' - -2001-03-31 Rick Haines - - * xine/xine_dxr3.patch.gz, - xine/xine-0.4.01_dxr3.patch.gz: - fix xine exit problem. dxr3_write_* - were blocking when playback was stopped/paused. - -2001-03-29 Rick Haines - - * modules/em8300_audio.c (preprocess_digital): - reverse the em->swapbytes condition. - this should fix pcm, I wonder if it breaks ac3 - - * modules/*: - fix up all the printk's - - * xine/xine-0.4.01_dxr3.patch.gz: - remove check for libcss from configure.in - -2001-03-28 Rick Haines - - * modules/em8300_i2c.c (em8300_i2c_reg): - printk and return -ENODEV if we don't - recognize the device id. - - * include/linux/em8300.h - add ENCODER_UNKNOWN - -2001-03-27 Rick Haines - - * xine/xine-0.4.01_dxr3.patch.gz: - add modified xine patch from Paul Laufer - that applies to xine-0.4.01 - -2001-03-25 Rick Haines - - * modules/README-greenscreen, - modules/em8300_main.c, - modules/em8300_video.c: - add bt865_ucode_timeout module parameter - for people with bt865's who get timeouts - uploading their microcode. - -2001-03-21 Rick Haines - - * dhc/* - rescue dhc from zeev01 branch since people - still find it useful. Updated it a bit. - -2001-03-17 Rick Haines - - * scripts/microcode_extract.pl, - scripts/microcode_info.pl: - endian fixes from Fabian Jakobs - -2001-03-15 Rick Haines - - * include/linux/Makefile.am, - em8300.spec.in: - install em8300.h properly - -2001-03-14 Rick Haines - - * omsplugin/README, - omsplugin/plugin-install.sh, - omsplugin/dxr3/*: - update from James Farwell to let omsplugin use libdxr3. - The next step is to make it build outside the oms source - tree. That'll require some way to remove the libac3 - dependency. - -2001-03-14 Rick Haines - - another patch from Andrew to clean up a few things - from the last one. - -2001-03-13 Rick Haines - - merge patch from Andrew Meredith; fixes make dist - for the headers, adds make dist-rpm, adds boot - self-build scripts. I'm a bit iffy about a couple - things (/etc/rc.d/init.d/ doesn't exist on all systems) - but I'll leave it for now. - -2001-03-13 Rick Haines - - * modules/em8300_main.c, - modules/adv717x.c: - merge patches from Paul Laufer. Fixes missing - symbol 'remap', turns on interlaced and turns - off pedestal for ADV7170 in NTSC mode. - - * scripts/msexpand.pl: - add this to help people extract their microcode - thanks to Paul Laufer. - -2001-03-11 Rick Haines - - * include/libdxr3/api.h, - libdxr3/dxr3-api.c: - patch from James Farwell to make dxr3_audio_write - handle DIGITALAC3 instead of the plugins. - - * xine/xine_dxr3.patch.gz - now uses the new libdxr3 - -2001-03-11 Rick Haines - - * include/* - move the includes that should get installed here. - - move the configure stuff to the root dir. - -2001-03-08 Rick Haines - - * libdxr3/*: - created - -2001-03-05 Rick Haines - - * xine/README, - xine/xine_dxr3.patch.gz: - added xine_dxr3 patch - -2001-03-04 Rick Haines - - * modules/em8300.h, - modules/em8300_dicom.c, - modules/em8300_video.c: - fix aspect ratio stuff thanks to information on enabling - 16x9 mode from Morten Bøgeskov. - - * omsplugin/dxr3/em8300.h, - omsplugin/dxr3/dxr3-api.h, - omsplugin/dxr3/dxr3_mpeg2.c: - update to match aspect ratio changes - -2001-03-03 Rick Haines - - * omsplugin/dxr3/em8300.h, - omsplugin/dxr3/dxr3-api.h, - omsplugin/dxr3/dxr3-api.c: - update oms plugin - -2001-03-03 Rick Haines - - * modules/em8300.h, - modules/em8300_audio.c, - modules/em8300_video.c, - modules/em8300_main.c: - integrate new sync code. It's messier than I'd like - but works well for me. - - * modules/README-greenscreen: - add info about swap_redblue_pal - -2001-02-28 Rick Haines - - * modules/make-install-2.4 - merge patch from Stefan Lucke so we install - the other kernel modules too. This has - been bugging me for a while as well. - -2001-02-25 Rick Haines - - * modules/em8300.h, - modules/em8300_ioctl.c, - overlay/dxr3view.c, - overlay/overlay.h, - overlay/overlay.c: - merged patch from Edward Salley, - adds overlay_signalmode ioctl to set fullscreen overlay, - fixes bug in ratio switching. - -2001-02-25 Rick Haines - - * modules/em8300_main.c - merge patch from Frédéric Crozat, - "A cast is needed in switch, otherwise em8300.o - needs a function which is only present in - libgcc.a (compiler library) : __cmpdi2" - - * modules/adv717x.c - added swap_redblue_pal for people with - swapped red and blue components; - changes Timing Register 1 for PAL and PAL60. - register values from Frédéric Crozat. - -2001-02-19 Rick Haines - - * modules/em8300_video.c (em8300_video_setup): - move write_register(0x1f47,0x18) to fix microcode - uploading with bt865 cards. - - * modules/em8300_dicom.c, - modules/em8300_main.c: - added activate_loopback module parameter for people - who get blank screen after uploading microcode. - -2001-02-18 Rick Haines - - * modules/adv717x.c: remove #define DEBUG since - it's in em8300.h - - * modules/adv717x.c, - modules/em8300_dicom.c, - modules/em8300_main.c, - modules/em8300.h: - merged in module parameter code from Jonas Birme and - added a few for the adv717x module. - - * modules/README-greenscreen: modified to describe - the new module parameters - - * omsplugin/dxr3/em8300.h: - updated. - -2001-02-12 Rick Haines - - * modules/em8300_video.c, modules/em8300_spu.c: change - the setpts ioctls to use get_user for consistency. - - * omsplugin/dxr3/dxr3-api.c: updated to match ioctl changes. - dxr3_audio_set_mode should now actually set the mode. - - * ChangeLog: started. - * AUTHORS: started. - diff -Nru em8300-0.16.4/ChangeLog.old em8300-0.18.0/ChangeLog.old --- em8300-0.16.4/ChangeLog.old 1970-01-01 01:00:00.000000000 +0100 +++ em8300-0.18.0/ChangeLog.old 2010-06-28 18:12:31.000000000 +0100 @@ -0,0 +1,2530 @@ +2008-02-04 Nicolas Boullis + * configure.in, + modules/Makefile: + Release 0.16.4. + +2008-01-07 Nicolas Boullis + * modules/em8300_i2c.c: + Get rid of some warnings related to the result of + sysfs_create_link being unused and log some runtime warning in + case of failure. Thanks to Christian Gmeiner for the initial + work. + +2008-01-05 Nicolas Boullis + * modules/em8300_audio.c: + Get rid of some warnings introduced by the S/PDIF rewrite. Thanks + to Christian Gmeiner for his patch. + +2008-01-02 Nicolas Boullis + * modules/em8300_i2c.c: + Disable the encoder chip when it is discovered and until the + firmware in loaded and everything is properly configured. + + * modules/em8300_dicom.c: + Completely rewrite from scratch the code to deal with brightness, + contrast and saturation, since it was obviously decompiled and + possibly illegal. + + * include/linux/em8300.h, + modules/em8300_audio.c: + Completely rewrite from scratch the code to deal with S/PDIF + digital audio, since it was obviously decompiled and possibly + illegal. + +2007-12-10 Nicolas Boullis + * modules/adv717x.c, + modules/em8300_i2c.c, + modules/em8300_sysfs.c, + modules/encoder.h: + Continue the code reorganization of the ADV717X driver. The + ADV717X chip is now configured by the em8300 driver (through the + adv717x driver, of course). + +2007-12-03 Nicolas Boullis + * modules/em8300_compat24.h, + modules/em8300_main.c: + Switch from the old SA_* macros to the new IRQF_* ones, and add + compatibility workaround for older kernels. Thanks to all those + who told me about the problem, and especially Martin Dauskardt and + Christian Gmeiner who provided a patch (although I did not use + it). + + * modules/adv717x.c, + modules/adv717x.h: + Reorganize the code of the ADV717X driver to ease the future works + of making it independant of the EM8300 driver, and of making + automatic configuration possible. + +2007-11-09 Nicolas Boullis + * modules/em8300_i2c.c: + Remove the sysfs links from the em8300 device to the encoder and + eeprom devices when those devices are unregistered, to ensure + correct removal of the em8300 module. + +2007-11-05 Nicolas Boullis + * modules/em8300_i2c.c: + Add sysfs links from the em8300 device to the encoder and eeprom + devices. + +2007-09-03 Nicolas Boullis + * modules/em8300_dicom.c: + Fix the issue of swapped red and blue channels with some cards and + some zoom values. + +2007-08-24 Ville Skyttä + * modules/em8300_ioctl.c, + modules/em8300_ioctl32.c: + Fix build with 2.6.23 release candidate kernels. + +2007-08-21 Nicolas Boullis + * configure.in, + modules/Makefile: + New development version. + +2007-08-17 Nicolas Boullis + * configure.in, + modules/Makefile: + Release 0.16.3. + +2007-08-07 Nicolas Boullis + * modules/em8300_eeprom.c: + Fix the error detection and handling if crypto_alloc_hash fails. + Thanks to Gabor Z. Papp who first told about the problem and then + tracked it down to a missing MD5 hash on his system. + +2007-08-07 Nicolas Boullis + * modules/em8300_eeprom.c: + Fix cleanup in case of a failure to allocate 16 bytes for + em->eeprom_checksum. + +2007-08-03 Nicolas Boullis + * modules/em8300_sysfs.c: + Calling the command function of the adv717x driver from the em8300 + module with a pointer to the stack apparently was not a good + idea. Use a kmallocated buffer instead. Thanks to Antoine Pardigon + who reported the problem. + +2007-07-17 Ville Skyttä + * dhc/dhc.desktop, + overlay/autocal.desktop, + overlay/dxr3view.desktop: + Bring up to date with desktop entry specification 1.0, + add StartupWMClass. + +2007-07-11 Nicolas Boullis + * modules/em8300_sysfs.c: + Slightly improve the "model" sysfs file to tag important + questions, drop non-relevant ones and explicit values to + try. Let's hope it will lead to more (and/or better) reports. + +2007-06-20 Ville Skyttä + * dhc/dhc_main.c, + overlay/autocal.c, + overlay/dxr3view.c: + Add GUI error dialogs for device access problems on startup. + +2007-06-18 Nicolas Boullis + * include/linux/em8300.h, + modules/em8300_dicom.c, + modules/em8300_main.c, + modules/em8300_sysfs.c: + Add a new "zoom" sysfs file for those who consider the output + image is too large. Feedback is welcome, especially if some values + cause screen flicker or wrong colors. + +2007-06-18 Nicolas Boullis + * modules/em8300_eeprom.c: + Fix a bug that is triggered when the kernel is configured with + CONFIG_CRYPTO but without CONFIG_CRYPTO_MD5. + +2007-05-20 Nicolas Boullis + * include/linux/em8300.h, + modules/em8300_i2c.c, + modules/em8300_main.c: + Split the i2c busses initalization, so that it becomes possible to + read the EEPROM chip before the video encoder chip can be + detected. (This will be useful for autoconfiguration.) + + +2007-05-17 Nicolas Boullis + * modules/Makefile: + Fix a bug in the detection of pre-2.5.51 linux kernels. Thanks to + Gabor Z. Papp for pointing out the problem. + +2007-05-14 Nicolas Boullis + * modules/em8300_main.c: + Use pci_register_driver instead pci_module_init since the latter + is removed in linux 2.6.22. Thanks to Adam who noticed the problem + with linux 2.6.21-git5. The only expected change in behavior is + that the module won't fail to load with linux 2.4 kernels if no + em8300-based board is present. + +2007-05-14 Nicolas Boullis + * configure.in, + modules/Makefile: + New development version. + +2007-05-06 Nicolas Boullis + * configure.in, + modules/Makefile: + Release 0.16.2. + +2007-04-11 Nicolas Boullis + * modules/em8300_sysfs.c: + Improve the "model" sysfs file, considering that the dicom_fix and + dicom_control options only do something for bt865-based cards. + +2007-04-04 Ville Skyttä + * modules/em8300_sysfs.c: + Spelling fix in "model" file contents. + +2007-04-02 Nicolas Boullis + * modules/em8300_sysfs.c: + Reformat the "model" sysfs file and change the target + mailing-list. + +2007-03-24 Nicolas Boullis + * modules/em8300_eeprom.c: + Rewrite the checksumming code, using the sg_init_one function, to + make it cleaner. Thanks to Herbert Xu who hinted me about the + sg_set_buf function. + +2007-03-16 Nicolas Boullis + * include/linux/em8300.h, + modules/em8300_alsa.c: + Fix compatibility with ALSA in linux kernel 2.6.21. Thanks to + Ville Skyttä who spotted the problem. + + * modules/em8300_eeprom.c: + Fix compatibility with linux kernel 2.6.21 by using the new + crypto_hash functions. Thanks to "nyk" who spotted the problem. + + * modules/em8300_eeprom.c: + Make it possible again to use the em8300 driver without + CONFIG_CRYPTO (although in degraded mode). + +2007-03-09 Nicolas Boullis + * modules/em8300_sysfs.c: + Fix the prototype of the show_model function for kernels older + than 2.6.13. + +2007-03-06 Nicolas Boullis + * modules/em8300_params.c: + Remove the #includes that are now useless as they were only + required by the #included include/linux/em8300.h, and add + forgotten ones. + + * include/linux/em8300.h, + modules/Makefile, + modules/adv717x.c, + modules/em8300_eeprom.c, + modules/em8300_eeprom.h, + modules/em8300_main.c, + modules/em8300_procfs.c, + modules/em8300_sysfs.c, + modules/encoder.h: + Implement some preliminary hardware detection. It will not yet + autodetect the optimal module parameters for any given board but + will hopefully help gather enough data to make that autodetection + possible. + +2007-03-03 Nicolas Boullis + * modules/em8300_main.c: + Add some missing initialization. Thanks to Jan Kandziora for + telling me about the problem he was experiencing, and for finding + out a workaround. + + * include/linux/em8300.h: + Include all the headers required by include/linux/em8300.h. + +2007-03-02 Nicolas Boullis + * modules/Makefile, + modules/em8300_alsa.c, + modules/em8300_devfs.c, + modules/em8300_dicom.c, + modules/em8300_ioctl.c, + modules/em8300_main.c, + modules/em8300_params.c, + modules/em8300_params.h, + modules/em8300_ucode.c, + modules/em8300_udev.c, + modules/em8300_video.c: + Split the module parameters out of em8300_main.c and into a new + file, to make em8300_main.c shorter. + +2007-03-01 Nicolas Boullis + * modules/em8300_i2c.c: + Set the em8300 device as the parent device for its two i2c + busses. This is cleaner and avoids a warning. Thanks to Martin + Dauskardt for telling me about this warning. + +2007-03-01 Nicolas Boullis + * configure.in, + modules/Makefile: + New development version. + +2007-02-28 Nicolas Boullis + * configure.in, + modules/Makefile: + Release 0.16.1. + +2007-02-26 Ville Skyttä + * modules/README-modoptions: + Spelling fixes. + +2007-02-20 Ville Skyttä + * modules/README-modoptions: + Document stop_video. + +2007-02-18 Nicolas Boullis + * modules/em8300_i2c.c: + Use i2c_del_adapter instead of i2c_bit_del_bus for kernels 2.6.0 + and above, to fix compatibility with 2.6.20 kernels. Thanks to + David van Vyfeyken for the patch. + + * modules/em8300_ioctl.c, + modules/em8300_main.c, + modules/em8300_ucode.c, + modules/em8300_video.c: + Add a parameter to choose between no video output and black video + output when there is nothing to display (black video output by + default). + + * modules/em8300_ioctl.c, + modules/em8300_main.c: + Ensure that video output is off (to avoid displaying cruft) when + overlay is used. + +2007-02-12 Nicolas Boullis + * modules/em8300_i2c.c: + Slow down the comunications with the em9010 chip, so that it does + not interfere with the video encoders. Thanks to Sascha Hauer for + telling about the problem, and for the patch. + +2006-12-10 Nicolas Boullis + * modules/em8300_main.c: + Fix the documentation string for the alsa_id and alsa_index module + options. Thanks to Brendon Higgins for the patch. + + * modules/README-modoptions: + Improve the README-modoptions documentation. Thanks to Brendon + Higgins for the patch. + +2006-11-27 Nicolas Boullis + * configure.in: + Search the alsa.conf file to find the proper location for the + EM8300.conf configuration file. + + * Makefile.am: + Only uninstall EM8300.conf if $(alsadir) is set (that is if + EM8300.conf was installed). + +2006-11-26 Nicolas Boullis + * configure.in, + modules/Makefile: + New development version. + +2006-11-26 Nicolas Boullis + * configure.in, + modules/Makefile: + Release 0.16.0. + +2006-11-23 Nicolas Boullis + * modules/em8300_main.c: + Fix a stupid mistake (misplaced comma) I did while changing the + prototype of the em8300_irq function for 2.6.19 kernels. Thanks to + Adam and Sebastian Frei. + +2006-11-22 Nicolas Boullis + * modules/em8300_main.c: + The prototype of the function that request_irq expects will change + slightly in 2.6.19. Change the em8300_irq function + accordingly. Thanks to Adam for noticing. + + * modules/em8300_main.c: + Fix a stupid mistake in a call to pr_debug where a full array was + given to print instead of a single element. Thanks to Adam for + noticing. + + * modules/Makefile: + Use "printf" rather than "echo -e", as the latter may be + unavailable with some shells. + +2006-11-21 Ville Skyttä + * dhc/dhc.desktop, + overlay/autocal.desktop, + overlay/dxr3view.desktop: + Bring desktop entry categories up to date with current + freedesktop.org menu specification. + +2006-11-19 Nicolas Boullis + * Makefile.am: + configure.in: + Install the ALSA configuration file, and make its location + configurable. + + * Makefile.am: + Fix uninstalling. + +2006-11-18 Ville Skyttä + * modules/Makefile: + Use $(CURDIR) instead of $(PWD) to fix build when current working + dir is not modules/. + +2006-11-18 Nicolas Boullis + * modules/em8300_i2c.c: + The mdelay field of the i2c_algo_bit_data struct has apparently + been unused since before 2.4.0 and will be gone in 2.6.19. Don't + set it at all. + +2006-11-16 Nicolas Boullis + * modules/Makefile, + modules/adv717x.c, + modules/em8300_devfs.c, + modules/em8300_main.c, + modules/em8300_procfs.c, + modules/em8300_registration.h: + Since 2.6.15, there is no need to #include linux/config.h and this + file is due to be gone in 2.6.19. Don't include it anymore from + the individual files. For older kernels, include it from the + Makefile. + + * modules/em8300_alsa.c: + chip_t is needed for old versions of ALSA; define it. + + * modules/em8300_alsa.c: + kcalloc was not defined in older kernel versions; use + kmalloc+memset instead. + + * modules/adv717x.c, + modules/bt865.c, + modules/em8300_main.c: + Fully revert the MODULE_PARM change for kernels between 2.6.0 and + 2.6.10. + +2006-11-12 Nicolas Boullis + * modules/adv717x.c, + modules/bt865.c, + modules/em8300_main.c: + The module_param_array function changed incompatibly in 2.6.10; + revert to the old MODULE_PARM function for older kernels. + + * modules/Makefile: + Partial rewrite of the Makefile to avoid hackish reading of kernel + version. + +2006-09-24 Nicolas Boullis + * modules/em8300_alsa.c, + modules/em8300_main.c: + Add new alsa_index and alsa_id parameters to choose the ALSA index + number and id string. + +2006-09-20 Ville Skyttä + * Makefile.am: + Include modules/EM8300.conf in tarball, make EXTRA_DIST + more readable. + +2006-09-13 Nicolas Boullis + * include/linux/em8300.h, + modules/Makefile, + modules/em8300_alsa.c, + modules/em8300_audio.c, + modules/em8300_devfs.c, + modules/em8300_ioctl.c, + modules/em8300_main.c, + modules/em8300_ucode.c, + modules/em8300_udev.c: + Choose the audio driver (ALSA or OSS) at load-time and on a + per-card basis. + + * modules/em8300_devfs.c, + modules/em8300_main.c: + Only include linux/devfs_fs_kernel.h if CONFIG_DEVFS_FS is + defined. This should fix compilation issues with 2.6.18(rc) + kernels. + +2006-08-23 Ville Skyttä + * scripts/microcode_upload.pl.in, + scripts/Makefile.am, + scripts/.cvsignore, + configure.in: + Drop microcode_upload.pl; em8300setup can handle the manual + load case, and the modules nowadays can pull in the microcode + on demand as well. + +2006-07-09 Nicolas Boullis + * modules/em8300_alsa.c: + Improve the ALSA support, by mimicking the functions in + pcm-indirect.h. + + * modules/em8300_alsa.c: + Kill the old snd_magic stuff. + +2006-05-12 Nicolas Boullis + * modules/adv717x.c, + modules/bt865.c, + modules/em8300_main.c, + modules/encoder_output_mode.h: + Convert the module arguments declarations from the old MODULE_PARM + interface to the (not so) new module_param one. The old interface + should not be supported anymore with 2.6.17 kernels. + +2006-04-24 Ville Skyttä + * Makefile.am: + Fix "make install" for firmwareless tarballs. + +2006-04-10 Nicolas Boullis + * configure.in, + modules/Makefile: + New development version. + + * include/linux/em8300.h, + modules/EM8300.conf, + modules/Makefile, + modules/em8300_alsa.c, + modules/em8300_alsa.h, + modules/em8300_audio.c, + modules/em8300_compat24.h, + modules/em8300_devfs.c, + modules/em8300_devfs.h, + modules/em8300_ioctl.c, + modules/em8300_ioctl32.c, + modules/em8300_ioctl32.h, + modules/em8300_main.c, + modules/em8300_misc.c, + modules/em8300_procfs.c, + modules/em8300_procfs.h, + modules/em8300_registration.c, + modules/em8300_registration.h, + modules/em8300_sysfs.c, + modules/em8300_sysfs.h, + modules/em8300_ucode.c, + modules/em8300_udev.c, + modules/em8300_udev.h: + Merge the ALSA branch into MAIN. + +2006-04-09 Nicolas Boullis + * configure.in, + modules/Makefile: + Release 0.15.3. + +2006-04-04 Nicolas Boullis + * modules/adv717x.c, + modules/bt865.c, + modules/em8300_main.c: + Add version information to the modules, when possible. Thanks to + Tommi Lundell who suggested this feature. + + * modules/em8300_ucode.c: + (Hopefully) Fix automatic firmware loading for "recent" 2.4 + kernels. Thanks to AM and Alonso y Eydis who both reported the + build failure. + +2006-03-28 Nicolas Boullis + * modules/README-modoptions: + Document the dsp_num option of the em8300 module. Thanks to + Brendon Higgins who wrote the description. + +2006-01-28 Nicolas Boullis + * modules/adv717x.c: + Completely nuke the progressive output modes. + +2006-01-26 Nicolas Boullis + * modules/em8300_ioctl32.c: + Fix a very annoying name clash between two + different em8300_ioctl32_init functions. + + * modules/Makefile, + modules/adv717x.c, + modules/bt865.c, + modules/em8300_i2c.c: + Make the driver compatible vith the i2c stack in 2.6.16 + kernels. Thanks to Ville Skyttä for doing the hard work. + +2006-01-25 Nicolas Boullis + * include/linux/em8300.h, + modules/Makefile, + modules/em8300_devfs.c, + modules/em8300_main.c, + modules/em8300_procfs.c, + modules/em8300_registration.c, + modules/em8300_registration.h, + modules/em8300_sysfs.c, + modules/em8300_udev.c, + modules/em8300_udev.h: + Fix support for recent versions of udev by using the good + functions. Many thanks to all those who helped make this possible + by reporting the problem, testing my patches and checking my + code. + + * modules/Makefile, + modules/em8300_ioctl32.c, + modules/em8300_ioctl32.h, + modules/em8300_main.c: + Fix support for 32-bit ioctls with 64-bit kernels for recent + kernels (>= 2.6.14), and support 32-bit ioctls for x86_64. Many + thanks to István Váradi who did all the work. + +2006-01-21 Ville Skyttä + * configure.in: + Switch to GTK2 for the GUI utilities. + + * m4/gtk.m4: + Removed. + +2005-12-17 Ville Skyttä + * scripts/*: + Whitespace cleanup, no functional changes. + +2005-12-01 Ville Skyttä + * Makefile.am: + Require automake >= 1.8 for $(mkdir_p). + +2005-11-23 Nicolas Boullis + * configure.in, + modules/Makefile: + Release 0.15.2. + +2005-11-19 Nicolas Boullis + * modules/em8300_i2c.c: + Lock the encoder's module while it is in use. Many thanks to Jon + Burgess who did all the work. + +2005-11-15 Ville Skyttä + * dhc/dhc.desktop, + overlay/autocal.desktop: + Remove the (nowadays invalid) "SystemSetup" category. + + * dhc/.cvsignore, + dhc/Makefile.am, + dhc/dhc.desktop: + Extract an icon from pixmaps.h for use in the DHC menu entry. + + * modules/README-modoptions, + modules/bt865.c: + Rename the rgb_mode parameter to output_mode for consistency + with the adv717x driver. + +2005-11-06 Ville Skyttä + * modules/README-modoptions: + Improve phrasing of output_mode descriptions. + + * dhc/dhc_main.c, + overlay/autocal.c, + overlay/dxr3view.c, + overlay/overlay.c: + Avoid crashes when the device cannot be opened, improve error + messages. + +2005-11-05 Nicolas Boullis + * modules/README-modoptions, + modules/adv717x.c: + Make it possible to select the output mode with adv717x + chips. This adds support for YUV, and for svideo to composite + video adapters that merely use the luminance signal as composite + video. Many thanks to Derrik Pates who did most (not to say all) + the work. + + * Makefile.am: + Fix the firmware installation command, to make it possible to + build and install outside the source directory. + +2005-11-04 Nicolas Boullis + * modules/adv717x.c, + modules/bt865.c: + Stop using i2c_is_isa_adapter as it seems to be useless, and is + not compatible with the i2c stack in 2.6.14 kernels. + + * modules/adv717x.c, + modules/bt865.c, + modules/em8300_fifo.c, + modules/em8300_main.c: + Stop including the asm/segment.h header file as it seems to bring + nothing useful, and has disappeared in 2.6.14 kernels. + +2005-10-19 Nicolas Boullis + * Makefile.am, + configure.in, + em8300setup/em8300setup.1, + em8300setup/em8300setup.c, + include/linux/em8300.h, + modules/em8300_audio.c, + modules/em8300_ioctl.c, + modules/em8300_main.c, + modules/em8300_ucode.c, + scripts/.cvsignore, + scripts/microcode_upload.pl, + scripts/microcode_upload.pl.in: + Implement automatic on-demand loading of the firmware using the + hotplug facility (also available in udev). This requires to change + the default firmware location. + +2005-10-19 Ville Skyttä + * COPYING, + dhc/dhc_callback.c, + dhc/dhc_gui.c, + dhc/dhc_main.c, + em8300setup/em8300setup.c, + modules/Makefile, + modules/adv717x.c, + modules/bt865.c, + modules/em8300_compat24.h, + modules/em8300_devfs.c, + modules/em8300_devfs.h, + modules/em8300_fifo.c, + modules/em8300_ioctl32.c, + modules/em8300_ioctl32.h, + modules/em8300_main.c, + modules/em8300_procfs.c, + modules/em8300_procfs.h, + modules/em8300_registration.c, + modules/em8300_registration.h, + modules/em8300_sysfs.c, + modules/em8300_sysfs.h, + overlay/allblackbut.h, + scripts/msexpand.pl: + Update FSF's address. + +2005-09-16 Ville Skyttä + * modules/em8300_procfs.c: + Include version of loaded microcode in procfs info. + +2005-09-05 Nicolas Boullis + * modules/em8300_main.c: + Properly catch errors in pci_enable_device. Thanks to Jon Burgess + for spotting the problem and providing a patch. + + * configure.in, + modules/Makefile: + Release 0.15.1. + +2005-08-31 Nicolas Boullis + * modules/em8300_i2c.c: + Fix a bug in the setup of the second i2c adapter, spotted by Marco + Schluessler (LordZodiac). This bug was introduced on March 16 this + year. Thanks Marco. + +2005-08-08 Nicolas Boullis + * Makefile.am, + configure.in, + dhc/Makefile.am, + em8300setup/Makefile.am, + include/linux/Makefile.am, + overlay/Makefile.am: + Autotools cleanup. + + * include/libdxr3, + libdxr3: + Finish to kill libdxr3, as suggested by Ville Skyttä. + + * modules/adv717x_eeprom.c.old: + Also kill the old modules/adv717x_eeprom.c.old, as suggested + by Ville Skyttä. + +2005-07-23 Nicolas Boullis + * modules/devfs_symlinks, + modules/devices.sh: + Completely kill the old unnumbered compatibility symlinks, + following Ville Skyttä's suggestion. Thanks Ville. + + * Makefile.am, + configure.in, + em8300.spec.in, + em8300.sysv.in: + Kill the old outdated rpm stuff, as suggested by Ville Skyttä. + + * Makefile.am, + bootstrap, + configure.in, + include/Makefile.am, + overlay/Makefile.am: + Kill the libdxr3 library that nobody ever used. Thanks to Ville + Skyttä for finding a few bits I had missed. + +2005-07-13 Nicolas Boullis + * modules/em8300-udev.permissions, + modules/em8300-udev.rules: + Kill the old obsolete em8300-udev.permissions file and put its + settings into em8300-udev.rules; kill the compatibility symlinks + as everyone should be using the numbered devices by now. + +2005-06-01 Nicolas Boullis + * configure.in, + modules/Makefile: + Release 0.15.0. + +2005-05-23 Nicolas Boullis + * modules/em8300_sysfs.c: + Apply the patch by Ville Skyttä to lower the priority of the + em8300_class_release messages and to make them slightly more + informative. Thanks Ville. + + * modules/em8300_compat24.h, + modules/em8300_fifo.c, + modules/em8300_ioctl.c, + modules/em8300_spu.c, + modules/em8300_video.c: + Replace the old deprecated *_sleep_on_* functions with the new + wait_event_* ones. Many thanks to Jon Burgess who did most (not to + say all) the work. + +2005-05-17 Nicolas Boullis + * modules/em8300_main.c: + Add a new module option to choose the dsp number to use. Thanks to + Brendon Lloyd Higgins for providing the patch. + + * include/linux/em8300.h, + modules/em8300_audio.c, + modules/em8300_fifo.c, + modules/em8300_ioctl.c, + modules/em8300_spu.c, + modules/em8300_ucode.c, + modules/em8300_video.c: + Use (or properly and explicitely discard in a few cases) the + return value of copy_from_user and copy_to_user. Thanks to Ville + Skyttä for pointing the problem, and for fixing my broken patch. + +2005-05-10 Nicolas Boullis + * modules/em8300_i2c.c: + There seem to be eeprom chips connected through i2c; no need to + warn about them. Thanks to many and especially Marcin DrStorm + Śliwiński for their help. + + * modules/em8300_sysfs.c: + Move the sysfs information from class media to class em8300. + + * modules/Makefile: + Improve the part that extract the kernel version to handle complex + include/linux/version.h (as seen for example on Fedora) that + handle several different versions. Thanks to Ville Salmela for + showing the problem. + + * overlay/overlay.c: + Fix the order of the arguments to memset. Thanks to Ville Skyttä + for spotting and fixing this. + + * libdxr3/dxr3-api.c, + overlay/autocal.c, + overlay/dxr3view.c, + overlay/overlay.c: + Nuke some unused variables. Thanks again to Ville Skyttä for + these. + +2005-04-29 Nicolas Boullis + * em8300setup/em8300setup.1: + Fix the em8300setup manpage, as suggested by Ville Skyttä. + + * modules/em8300_main.c, + modules/em8300_spu.c, + modules/em8300_video.c: + Initialize the wait queues before the IRQ is requested, as it + seems to prevent the system from hanging up randomly when the + em8300 module is loaded for some people. Many thanks to Jon + Burgess for this patch. + +2005-04-09 Nicolas Boullis + * modules/adv717x.c, + modules/bt865.c: + Since 2.6.12 kernels (well, at the time of this writing, it is not + released yet, but this is true for -rc2), i2c clients dont have + id any more. Thanks to Jure Pečar who first pointed this out. + + * Changelog: + Convert to UTF-8 to spell Jure's name correctly. + + * modules/em8300_audio.c, + modules/em8300_ioctl.c, + modules/em8300_spu.c: + Replace all calls to verify_area with calls to access_ok, as + verify_area is deprecated in 2.6.12-rc2 and supposed to go away + soon. + + * Makefile.am: + Clean up EXTRA_DIST. + +2005-04-07 Nicolas Boullis + * modules/em8300_procfs.c: + Give more useful information in /proc/em8300/ when no + microcode is loaded. Thanks to Ville Skyttä who did most the + work. + +2005-03-30 Nicolas Boullis + * .cvsignore: + Add autom4te.cache to .cvsignore, as suggested by Ville Skyttä. + + * dhc/Makefile.am, + dhc/dhc.desktop, + overlay/Makefile.am, + overlay/autocal.desktop, + overlay/dxr3view.desktop: + Add .desktop files, provided by Ville Skyttä. + + * modules/em8300-udev.permissions, + modules/em8300-udev.rules: + Add udev configuration files, provided by Ville Skyttä. Thanks + Ville for those contributions. + +2005-03-24 Nicolas Boullis + * modules/Makefile, + modules/adv717x.c, + modules/bt865.c: + Support 2.4.x kernels with new external 2.9.x i2c + modules. Unfortunately, that breaks using 2.4.x kernels with the + deprecated 2.8.x i2c modules; a new option in the makefile fixes + this by giving the user the ability to force the i2c API. + + * debian: + Nuke the debian directory as it was completely outdated, and some + users found it confusing. + + * em8300setup/Makefile.am, + em8300setup/em8300setup.1: + Add a manpage for em8300setup. + + * Makefile.am, + bootstrap: + Update the autotools. + + * em8300setup/Makefile.am: + Distribute the new manpage for em8300setup. + +2005-03-08 Nicolas Boullis + * em8300setup/em8300setup.c: + Improve em8300setup's usage message. Thanks to Ville Skyttä for + the rephrasing. + + * include/linux/Makefile.am: + Nuke extraneous creation of the /usr/include/linux + directory. Thanks to Ville Skyttä. + +2005-03-07 Nicolas Boullis + * modules/adv717x.c, + modules/bt865.c: + Kill the warnings about ISA bus adapters as some people seem to + consider them offensive or confusing. + + * acconfig.h, + configure.in: + Improve use of AC_DEFINE in configure.in and remove acconfig.h to + kill a warning when running autoconf. Thanks to Ville Skyttä. + +2004-11-14 Nicolas Boullis + * dhc/Makefile.am, + em8300setup/Makefile.am, + libdxr3/Makefile.am, + libdxr3/libac3/Makefile.am, + overlay/Makefile.am: + Use AM_CFLAGS and AM_LDFLAGS rather than CFLAGS and LDFLAGS to + avoid automake warnings. Thanks to Ville Skyttä. + + * modules/Makefile: + Support DESTDIR to install the built modules in a root directory + different from /, which is especially useful to build + packages. Thanks to Ville Skyttä. + + * scripts/Makefile.am: + As Ville Skyttä pointed out, there's no need to install em8300.pm + with execute permissions. Thanks again to him. + + * scripts/em8300.pm: + Make em8300.pm a perl package, and improve error message when + /dev/em8300 cannot be opened. Thanks again to Ville Skyttä. + + * .cvsignore, + autotools/.cvsignore, + em8300setup/.cvsignore, + modules/.cvsignore: + Add some new files to .cvsignore. + +2004-11-10 Nicolas Boullis + * modules/em8300_main.c: + Replace remap_page_range with remap_pfn_range for kernels 2.6.10 + and above, as spotted by Christian Gmeiner. Thanks to him. + + * modules/em8300_main.c: + Call pci_disable_device when a card is unregistered, as suggested + by Christian Gmeiner. Thanks again. + +2004-10-27 Nicolas Boullis + * include/linux/em8300.h, + modules/em8300_devfs.c, + modules/em8300_main.c, + modules/em8300_sysfs.c: + Enable (automatic) dynamic assignment of major number. + +2004-09-05 Nicolas Boullis + * modules/em8300_audio.c: + Fix the SNDCTL_DSP_SYNC audio ioctl, as suggested by Aaron + Kaplan. Many thanks to him. + +2004-08-21 Nicolas Boullis + * modules/em8300_procfs.c: + Update procfs to not segfault if no video encoder chip was + detected and to show the real displaybuffer resolution. + +2004-05-02 Nicolas Boullis + * modules/Makefile, + modules/em8300_ioctl.c, + modules/em8300_main.c, + modules/em8300_registration.c, + modules/em8300_registration.h: + Define a new common interface for all functions that need to be + called when the module in registered/unregistered, when a card is + registered/unregistered or enabled/disabled. + + * modules/Makefile, + modules/em8300_main.c, + modules/em8300_procfs.c, + modules/em8300_procfs.h, + modules/em8300_registration.c: + Convert all the procfs stuff to that new interface. + + * modules/Makefile, + modules/em8300_devfs.c, + modules/em8300_devfs.h, + modules/em8300_main.c, + modules/em8300_registration.c: + Also convert all the devfs stuff to that new interface. + + * include/linux/em8300.h, + modules/Makefile, + modules/em8300_registration.c, + modules/em8300_sysfs.c, + modules/em8300_sysfs.h: + Add sysfs support. Many thanks to Eric Donohue who did most the + work. + + * modules/em8300_devfs.c, + modules/em8300_sysfs.c: + Only create /dev/em8300_{mv,ma,sp}-{0,1,2,3} when the microcode is + loaded. + + +2004-04-14 Nicolas Boullis + * modules/em8300_compat24.h, + modules/em8300_main.c: + New code for pci probing. Many thanks to Andreas Schultz who did + most (not to say all) the work. + +2004-04-12 Nicolas Boullis + * modules/em8300_main.c: + Check if CONFIG_MTRR is defined before #including asm/mtrr.h as it + does exist only on i386 and x86_64. (Reverted from previous change.) + +2004-03-26 Nicolas Boullis + * modules/adv717x.c, + modules/adv717x.h, + modules/bt865.c, + modules/bt865.h, + modules/em8300_compat24.h, + modules/em8300_i2c.c, + modules/em8300_main.c: + Add a new modules/em8300_compat24.h file, and put there everything + that is needed for compatibility between 2.4 and 2.6 kernels. Many + thanks to Andreas Schultz for the idea and for doing most (not to + say all) the work. + +2004-03-25 Nicolas Boullis + * modules/ldm: + I stupidly reversed the test in my previous update of modules/ldm; + repair this. Sorry for this stupid mistake. + +2004-03-24 Nicolas Boullis + * modules/em8300_main.c: + Since kernel 2.5.69, one should use devfs_remove instead of + devfs_unregister; and since 2.5.70, devfs_mk_cdev instead of + devfs_register. Thanks to Peter Zijlstra for his patch (forwarded + by Håkon Skjelten). + + * modules/ldm: + Update ldm to support .ko modules (since kernel 2.5.51), thanks to + Håkon Skjelten. + + * modules/Makefile: + Rewrite modules/Makefile mostly from scratch to support both 2.4 + and 2.6 kernels in a much simpler way. + + * modules/em8300_main.c: + Call em8300_spu_release when em8300_io_release is called for an + em8300_sp device. Thanks to Håkon Skjelten for this change. + +2004-03-23 Nicolas Boullis + * modules/em8300_main.c: + Since before kernel 2.4.0, the file_operations structure has an + owner field. Thanks to Håkon Skjelten for pointing this. + + * modules/adv717x.c, + modules/bt865.c: + There's no need to include linux/wrapper.h in modules/adv717x.c or + modules/bt865.c. + + * modules/em8300_main.c: + Since kernel 2.5.12, mem_map_reserve and mem_map_unreserve from + linux/wrapper.h are replaced by SetPageReserved and + ClearPageReserved. Thanks to Håkon Skjelten for pointing this. + + * modules/em8300_main.c: + Between kernel 2.5.2 and 2.6.0-test4 (inclusive), one must use + minor(inode->i_rdev) rather than MINOR(inode->i_rdev). Thanks + again to Håkon Skjelten. + +2004-03-16 Nicolas Boullis + * modules/em8300_fifo.c, + modules/em8300_ioctl.c, + modules/em8300_spu.c, + modules/em8300_video.c: + The variable jiffies has type unsigned long, not unsigned int; + thanks to Håkon Skjelten for pointing this. + + * modules/adv717x.c, + modules/bt865.c: + Erase (set to zero) the memory freshly allocated with + kmalloc for an i2c_client structure. Thanks again to Håkon + Skjelten. + + * modules/adv717x.c, + modules/bt865.c, + modules/em8300_i2c.c: + Since kernel 2.5.67, the i2c_client and i2c_adapter structs have + no data field; once more, thanks to Håkon Skjelten for his patch. + + * modules/adv717x.c, + modules/bt865.c, + modules/em8300_main.c: + Since kernel 2.5.18, no symbol is exported by default, so + EXPORT_NO_SYMBOLS is useless. Thanks again to Håkon Skjelten for + pointing this. + + * modules/adv717x.c, + modules/bt865.c, + modules/em8300_main.c: + Since kernel 2.5.48, MOD_INC_USE_COUNT and MOD_DEC_USE_COUNT are + deprecated. Thanks again to Håkon Skjelten. + + * modules/em8300_main.c: + Since kernel 2.5.48, request_irq is in linux/interrupt.h . Thanks + again to Håkon Skjelten. + + * modules/em8300_main.c: + Since kernel 2.5.69, the handler provided to request_irq + (em8300_irq) must return an irqreturn_t value. Thanks again to + Håkon Skjelten. + + * modules/em8300_main.c: + Since kernel 2.5.3, the interface of the remap_page_range function + changed. Thanks again to Håkon Skjelten. + +2004-03-14 Nicolas Boullis + * modules/Makefile: + When building modules, if $(I2C_LOCATION) is set, ensure that + the i2c headers from $(I2C_LOCATION) are prioritized over those + from the kernel source, thanks to Janne Kujanpää for pointing + the problem. + + * modules/Makefile, + modules/em8300_fifo.c, + modules/em8300_fifo.h, + modules/em8300_main.c, + modules/em8300_spu.c, + modules/em8300_video.c: + Drop support for older than 2.4.0 kernels. + +2004-02-26 Nicolas Boullis + * modules/em8300_fifo.c, + modules/em8300_fifo.h: + Do locking with proper mutexes (implemented with semaphores) + rather than misusing spinlocks. Thanks to Håkon Skjelten and + Rune for pointing the misuse while working on a patch to support + 2.6 kernels. + +2004-02-17 Nicolas Boullis + * modules/em8300_fifo.c, + modules/em8300_fifo.h: + Use pci_alloc_consistent to allocate a DMA-able buffer rather + than kmalloc + virt_to_bus, as virt_to_bus is not supported on + sparc. + + * modules/Makefile: + Add support for sparc64 systems. + + * modules/Makefile, + modules/em8300_ioctl32.c, + modules/em8300_ioctl32.h, + modules/em8300_main.c: + Add support for 32-bit ioctls on 64-bit systems with a 32-bit + userspace. + + * modules/Makefile: + Fix support for building with i2c modules out of the kernel. + + * ChangeLog: + Update the ChangeLog. + +2004-02-09 Nicolas Boullis + * modules/em8300_main.c: + Check for O_NONBLOCK whenever a write is attempted, ans it may + be changed after opening with fcntl. Thanks to Michael Roitzsch + for this patch. + + * modules/em8300_fifo.c: + Try to properly detect when the DMA engine is frozen. Many + thanks to Michael Roitzsch for his initial patch and for testing + this one. + + * modules/em8300_misc.c: + Give the CPU back to other processes when waiting for a + condition on the register of the em8300 chip. + +2004-02-08 Nicolas Boullis + * modules/em8300_audio.c: + Fix em8300 audio for big-endian systems, and for big-endian + audio data on little-endian systems. + + * modules/Makefile: Add support for PowerPC. + +2003-12-08 Nicolas Boullis + * modules/em8300_fifo.c, + ChangeLog: + Fix a bug (introduced by myself in the patch for alpha support) + that caused sound to to skip. Thanks to arj (sorry, I don't know + your real name) for spotting this bug. Also change my own e-mail + in this ChangeLog and in the AUTHORS file. + +2003-12-06 Nicolas Boullis + * scripts/microcode_extract.pl: + Fix a tiny bug in scripts/microcode_extract.pl that caused the + third option (NAMEBASE) not to work. + +2003-12-05 David Holm + * include/linux/em8300.h, + modules/Makefile, + modules/adv717x.c, + modules/bt865.c, + modules/em8300_audio.c, + modules/em8300_dicom.c, + modules/em8300_fifo.c, + modules/em8300_fifo.h, + modules/em8300_i2c.c, + modules/em8300_ioctl.c, + modules/em8300_main.c, + modules/em8300_misc.c, + modules/em8300_reg.h, + modules/em8300_spu.c, + modules/em8300_ucode.c, + modules/em8300_video.c: + Applied patch from Nicolas Boullis which + effectively adds Alpha support and a patch from the same guy which + makes it possible to set different module options for multiple cards. + +2003-11-22 David Holm + * modules/em8300_main.c, + modules/em8300_video.c: + Applied patch from Anders Rune Jensen which + fixes the O_NONBLOCK bug. + +2002-01-08 Rick Haines + + * modules/adv717x.c: + Apply a patch from Dofri Jonsson . + We were using the wrong index when applying + pixelport_adjust_pal on the ADV7170 + +2003-11-22 David Holm + * modules/adv717x.c, + modules/bt865.c, + modules/em8300_audio.c, + modules/em8300_dicom.c, + modules/em8300_fifo.c, + modules/em8300_fifo.h, + modules/em8300_i2c.c, + modules/em8300_ioctl.c, + modules/em8300_main.c, + modules/em8300_misc.c, + modules/em8300_spu.c, + modules/em8300_ucode.c, + modules/em8300_video.c, + modules/em9010.c: + Added a patch from Nicolas Boullis which + seamlessly integrates i2c-2.8 support. + +2003-08-10 David Holm + * modules/em8300_audio.c, + modules/em8300_fifo.c, + modules/em8300_fifo.h, + modules/em8300_ioctl.c, + modules/em8300_main.c, + modules/em8300_spu.c, + modules/em8300_video.c: + Added a patch from Jon Burgess that partly fixes the SPU lockup problems. + +2003-07-28 David Holm + * configure.in: + Fixed version. Spotted by Volker Moell. + +2003-07-25 David Holm + * modules/adv717x.c, + modules/bt865.c, + modules/em8300-i2c-2.8.0.patch, + modules/em8300_audio.c, + modules/em8300_dicom.c, + modules/em8300_fifo.c, + modules/em8300_i2c.c, + modules/em8300_ioctl.c, + modules/em8300_main.c, + modules/em8300_misc.c, + modules/em8300_spu.c, + modules/em8300_ucode.c, + modules/em8300_video.c, + modules/em9010.c: + Reversed the patch from SuSE and added it as a patch. They forgot to + tell me it only works if your kernel is patched with i2c 2.8.0. + +2003-07-17 David Holm + * modules/adv717x.c, + modules/bt865.c, + modules/em8300_audio.c, + modules/em8300_dicom.c, + modules/em8300_fifo.c, + modules/em8300_i2c.c, + modules/em8300_ioctl.c, + modules/em8300_main.c, + modules/em8300_misc.c, + modules/em8300_spu.c, + modules/em8300_ucode.c, + modules/em8300_video.c, + modules/em9010.c: + Applied patch from SuSE which fixes compatibility issues with i2c + 2.8.0. + +2003-06-14 David Holm + * modules/em8300_fifo.c, + modules/em8300_spu.c, + modules/em8300_ioctl.c, + modules/em8300_video.c: + Added patch from Stefan Schluenss + to prevent the driver from blocking on some calls. + +2003-01-09 David Holm + * bootstrap: + Tried to hack around broken (?) autoconf. + +2003-01-08 David Holm + * modules/README-modoptions, + modules/bt865.c, + modules/adv717x.c, + modules/em8300_main.c: + Added patch from Luis.F.Correia" which adds + support for RGB-mode with bt865. + Added patch from Soeren Sonnenburg which fixes problems with + swap_redblue in the adv717x. + Added patch from Michael Roitzsch which fixes + problem with SPU device hanging the em8300. + +2002-11-29 David Holm + * modules/em8300_audio.c: + Changed two pr_infos to pr_debugs. + +2002-11-21 David Holm + * include/linux/em8300.h, + modules/em8300_main.c: + mmap() updates from MiHu. + +2002-11-17 David Holm + * modules/em8300_ioctl.c, + modules/em8300_main.c, + modules/em8300_video.c, + include/linux/em8300.h: + Added patch from MiHu to add support for getting time of next + VBI. + +2002-10-26 David Holm + * modules/Makefile, + modules/em8300_audio.c, + modules/em8300_main.c, + modules/adv717x.c, + em8300setup/em8300setup.c, + em8300setup/Makefile.am, + configure.in + Makefile.am: + Fixed kernel 2.5 support. + You can now set the default module configs in the Makefile. (The + real reason for this is to add config support to the kernel patch). + Lots of fixes to make it more kernel friendly. + Added Malcolm Lashley's em8300setup util and deprecated em8300init + as it doesn't work with perl 5.8. em8300setup has many more features + anyway. + +2002-10-20 David Holm + * modules/em8300_ioctl.c: + Fixed a bug that would cause a kernel oops if you tried + to change the em8300 settings without the microcode + loaded. + +2002-05-03 David Holm + * modules/em8300_audio.c: + Hopefully fixed a bug which would leave data in the audio + buffer when you closed it. + +2002-04-12 David Holm + * modules/em8300_spu.c, + modules/em8300_main.c: + Multiple card support fixed by Carl George + Added spu_release + Some cosmetic changes (K&R) + +2002-02-25 David Holm + * modules/em8300_main.c: + 2.2 kernel fix (argh, ppl stop using this kernel ;) + +2002-02-23 Jonas Birme + * modules/Makefile: + Removed the installation of em8300.h in install-newkern. + It's included when installing em8300 (not the modules). + +2002-02-19 David Holm + * dhc/dhc_main.c, + overlay/autocal.c, + overlay/dxr3view.c, + modules/em8300_main.c: + Fixed compilation on 2.5 kernels + Fixed bugs with old naming scheme + +2002-02-15 David Holm + * modules/em8300_main.c: + Changed behaviour of procfs entry. It now shows up as + /proc/em8300/ instead of /proc/em8300/em8300- + I hate repeating myself ;) + +2002-02-13 Jonas Birme + * scripts/microcode_upload.pl + Fixed the ugly hardcoded path in the script. + It's now optional to specify microcode, defaults to + /usr/share/misc/em8300.uc + +2002-02-11 Jonas Birme + * modules/Makefile + Fixed the install-newkern so it uses $(prefix) for all files. + +2002-02-09 David Holm + * include/linux/em8300.h, + modules/em8300_audio.c, + modules/em8300_video.c, + modules/em8300_spu.c: + Fixed video and spu flushing + Added patch from Michael Roitzsch to fix playback of mono audio + on digital output. Some day we can debate if this should be done + in the driver or by software, for now lets just accept he made a + fix and that we should be happy ppl help out. + +2002-02-08 David Holm + * modules/em8300_main.c: + Fixed yet another issue with 2.2 kernels + +2002-02-02 David Holm + * modules/em8300_main.c: + Added poll/select + Added dsp_poll, this will increase performance and usability in applications + where low latency is very important. XMMS also makes good use of this feature + +2002-01-26 David Holm + * modules/em8300_audio.c: + Fixed a bug in SNDCTL_DSP_RESET which would cause apps to hang + +2002-01-21 David Holm + * modules/em8300_audio.c: + Applied patch from Steven Brookes which fixes a bug when setting up digital ac3 via oss + +2002-01-20 David Holm + * configure.in, + Makefile.am, + modules/adv717x_eeprom.c, + modules/em8300_main.c, + modules/Makefile: + Removed, all affected files have been updated (including files in debian subdir) + Changed so that uninplemented SNDCTL calls return -ENOSYS (uninplemented) instead of -EINVAL (invalid argument) + Fix case when users compile with devfs support but don't mount it at boot + update version, add acconfig.h to EXTRA_DIST + +2002-01-19 David Holm + * modules/em8300_video.c: + Fixed flushing + It now checks the kernel for CONFIG_SOUND instead of specifying it with -D + +2002-01-17 David Holm + * modules/em8300_audio.c: + Added mute patch from Steven Brookes + Fixed DSP_AUDIO_RESET + Added em8300_video_flush + Added EM8300_IOCTL_FLUSH + +2002-01-16 David Holm + * modules/em8300_fifo.c: + Enter spinlock on writes + Changed REGISTER_DSP to CONFIG_SOUND_OSS + Added MVCOMMAND_SYNC + +2002-01-16 Jonas Birme + * scripts/microcode_extract.pl: + Added a destdir to the script, so the microcode can be stored in + another dir than the current. + +2002-01-15 David Holm + * scripts/microcode_upload.pl: + Made the perl script more devfs friendly (it's overambigous since I don't know much perl, but it does the job on both devfs and non-devfs systems ;) + +2002-01-14 David Holm + * include/linux/em8300.h, + modules/adv717x.c, + modules/bt865.c, + modules/em8300_ioctl.c: + Reverted to old way of handling encoder modes (one def in em8300.h and another in encoder.h) + +2002-01-13 (post 0.10.1) David Holm + * include/linux/em8300.h, + modules/adv717x.c, + modules/bt865.c, + modules/em8300_ioctl.c, + modules/em8300_main.c: + Fixed em8300.h having 3 signalling modes and encoder.h having 7. All 7 are now defined + in em8300.h only. + Fixed devfs bug which would cause the driver not to find an em8300 if you unload the + module after loading a microcode and then trying to load it again. + +2002-01-13 David Holm + * include/linux/em8300.h, + modules/em8300_main.c, + modules/em8300_video.c, + modules/em8300_audio.c, + modules/em8300_spu.c, + modules/em8300_ioctl.c, + modules/adv717x.c, + modules/bt865.c, + modules/adv717x_eeprom.c, + modules/encoder.h: + It is now possible to open the devices in nonblocking mode + Fixed warnings + Fixed harmless but annoying bug in adv717x_command (returning -EINVAL on error) + Added missing #include to bt865.c and adv717x.c + gcc 3 fixes + +2002-01-12 David Holm + * include/linux/em8300.h, + libdxr3/dxr3-api.c, + modules/adv717x.c, + modules/bt865.c, + modules/em8300_audio.c, + modules/em8300_ioctl.c, + modules/em8300_main.c, + modules/encoder.h: + Added all supported encoder modes to em8300 + Added MODULE_PARM_DESC + Added MODULE_SUPPORTED_DEVICE + Removed audio pts code + Fixed devfs bug + K&R fixes in em8300_audio.c + +2002-01-11 Jonas Birme + * modules/Makefile: + Fixed a bug in install-newkern, and added $(prefix) to + that rule also. Changed KERNEL_LOCATION= to KERNEL_LOCATION?= + +2002-01-10 David Holm + * modules/Makefile, + modules/README-2.4: + Removed nonworking devfs installation script and added + a devfs install guide in the readme instead... + +2002-01-10 David Holm + * modules/Makefile: + It now automatically installs/removes the appropriate + entries in devfsd.conf + +2002-01-09 David Holm + * em8300_main.c: + Fixed a bug I accidentally introduced with devfs + +2002-01-08 Rick Haines + + * scripts/microcode_upload.pl: + display error message if it can't open + the first device + + * dhc/dhc_main.c, + libdxr3/dxr3-api.c, + modules/rmm, + overlay/allblackbut.c, + overlay/autocal.c, + overlay/dxr3view.c, + overlay/overlay.c: + minor cleanups from James + (exit -> _exit, some missing returns, + include string.h in a few files, + don't remove i2c* in rmm). + +2002-01-08 Rick Haines + + * AUTHORS, + modules/em8300_main.c: + minor devfs/procfs #ifdef cleanups from Graeme. + +2002-01-07 David Holm + + * modules/Makefile: + added uninstall feature + + * modules/devfs_symlinks, + modules/em8300_main.c: + quick fix to devfs to make it work on mandrake + +2002-01-02 Rick Haines + + * configure.in, + modules/Makefile: + update version + +2001-12-29 Rick Haines + + * modules/Makefile, + modules/em8300_main.c: + procfs information updates from David + +2001-12-29 Rick Haines + + * modules/em8300.sysv.in: + fix eeprom module name + (from Sergei 'Jin' Bostandjan) + +2001-12-28 David Holm + + * include/linux/em8300.h, + modules/em8300_ioctl.h: + Added the following ioctls + GET_VIDEOMODE + GET_PLAYMODE + GET_SPUMODE + Fixed typos + + * modules/Makefile: + gcc sanity check + More intuitive install method by + Graeme Gregory + + * modules/README-2.4: + Removed old install info and added part about + devfs support + + * modules/adv717x.c: + Fixed typo + + * modules/devfs_symlinks: + Example /etc/devfs/compat_symlinks for compatibility + + * modules/em8300_audio.c, + modules/em8300_fifo.c, + modules/em8300_fifo.h: + Lots of bugfixes including broken digital audio + output by Steven Brookes + + * modules/em8300_main.c: + Added devfs fs support + Added proc fs support + Fixed multiple card support + (I hope, I'm unable to test it) + +2001-12-18 Rick Haines + + Apply the following from Larice Robert. + + * modules/em8300_fifo.c: + change 4 to fifo->slotptrsize + reorder some lines to fix possible problem + + * modules/em8300_video.c: + change 'read_register(ptsfifoptr+1) & 1' to + 'read_register(ptsfifoptr+3) & 1' + + * modules/em8300_video.c: + correctly update em->video_offset + +2001-12-18 Rick Haines + + * modules/adv717x.c: + ADV7170 PAL mode register mods from Vidar Hoel + + * modules/em8300_dicom.c: + NTSC mode tweaks from Serguei Miridonov + + * AUTHORS: + update Chris Hoovers email address + +2001-11-29 Jonas Birme + + * modules/em8300_audio.c + a bugfix submitted by David Holm. DSP_RESET fixed + in em8300_audio + +2001-11-25 Rick Haines + + * modules/eeprom.c, + modules/adv717x_eeprom.c, + modules/Makefile*, + modules/README-modules.conf, + modules/ldm, + modules/rmm: + rename eeprom per request from J G Miller + (conflicts with lm-sensors) + + * modules/adv717x.c: + make swap_redblue_pal apply to NTSC + +2001-11-05 David Holm + + * include/libdxr3/api.h, + libdxr3/dxr3-api.c, + modules/em8300_audio.c, + modules/em8300_main.c: + added some missing ioctl to em8300_audio.c + fixed bug in em8300_main.c causing the mtrr + to be removed twice + changes made to the api! + +2001-11-04 Rick Haines + + * acconfig.h, + configure.in: + instead of stopping if GTK not found, + just don't build dhc and dxr3view. + +2001-11-04 Rick Haines + + * include/libdxr3/api.h, + libdxr3/dxr3-api.c: + patch from David to rename + dxr3_audio_get_bytesleft() to + dxr3_audio_get_bytesinbuffer() + + * include/linux/mtrr.h, + modules/em8300_main.c: + patch from David to add mtrr support + (maybe speedup the fifo operations) + +2001-11-03 Rick Haines + + * include/libdxr3/api.h, + libdxr3/dxr3-api.c: + patch from David Holm to add + dxr3_audio_get_buffersize() and + dxr3_audio_get_bytesleft() + +2001-10-27 Rick Haines + + * modules/Makefile, + modules/*.c: + module license and malloc.h/slab.h changes + from Szabo Akos + +2001-09-30 Rick Haines + + * em8300.spec.in, + configure.in, + Makefile.am: + updates from Andrew + + * modules/em8300_audio.c: + set correct speed for AC3 output + + * include/linux/em8300.h: + swap EM8300_AUDIOMODE_DIGITALPCM and + EM8300_AUDIOMODE_DIGITALAC3 so that + dhc switches between analog and digitalpcm. + This is the logical order anyway. + +2001-09-19 Rick Haines + + * modules/em8300_audio.c: + define AFMT_AC3 if it's not already + +2001-09-10 Rick Haines + + * modules/em8300_audio.c, + include/linux/em8300.h: + maybe fix digital output modes + +2001-09-10 Rick Haines + + * debian/changelog, + debian/rules, + debian/setvers.sh: + Uses $(KVERS) instead of ugly uname -r + +2001-09-05 Rick Haines + + * modules/em9010.c: + Another autocal fix from Daniel. + "The content of the overlay register 0x0d + is no more set to 0x44 but its content is set + by the cable detection routine (that was already + existing). The resulting can be 0x44 OR 0x4C." + +2001-09-03 Jonas Birme + + * debian/chagelog, + debian/copyright, + debian/rules, + debian/setvers.sh: + converted to use debhelper as much as possible + +2001-09-02 Rick Haines + + * debian/* + big updates from Jonas and Graeme + + * modules/Makefile: + new Makefile from Jonas/Graeme to + work with both 2.2 and 2.4 kernels + +2001-09-02 Rick Haines + + * include/linux/em8300.h, + modules/em8300_audio.c, + modules/em8300_dicom.c, + modules/em8300_ioctl.c, + modules/em8300_main.c: + Patch from Daniel to fix the clockgen setting for + another kind of board. + + * .cvsingore, + autotools/.cvsignore, + dhc/.cvsignore, + include/.cvsignore, + include/libdxr3/.cvsignore, + include/linux/.cvsignore, + libdxr3/.cvsignore, + libdxr3/libac3/.cvsignore, + overlay/.cvsignore, + scripts/.cvsignore: + Patch to add .cvsingore files from Michael Moerz + +2001-08-19 Rick Haines + + * configure.in: + update version + +2001-08-18 Rick Haines + + * modules/em8300_ioctl.c (em8300_ioctl_setvideomode): + reenable tv mode code no longer necessary here + +2001-08-17 Rick Haines + + * modules/em8300_ioctl.c, + modules/em9010.c, + overlay/allblackbut.c, + overlay/dxr3view.c, + overlay/overlay.c: + Daniel fixes autocal again + + * modules/em8300_ioctl.c, + modules/em8300_main.c, + modules/ldm: + remove overlay_tv_switching option + +2001-08-13 Rick Haines + + * modules/em8300_spu.c, + include/linux/em8300.h: + Eduard added EM8300_IOCTL_SET_BUTTON ioctl for + menu support + +2001-08-13 Rick Haines + + * debian/*: + updates + +2001-08-09 Rick Haines + + * modules/em8300_dicom.c, + modules/em8300_ioctl.c, + modules/em8300_misc.c, + modules/em8300_video.c, + modules/em9010.c, + overlay/overlay.c, + overlay/overlay.h: + Patch from Daniel Chassot + "The folowing patch fixes the autocalibration process, + updates em8300_DICOM_setBCS, add overlay_set_bcs to + overlay.c and enhance em8300_ioctl_overlay_setwindow." + You rock dude. + + * configure.in: + update version + +2001-08-08 Rick Haines + + * debian/changelog, + debian/rules, + modules/Makefile, + modules/Makefile.2.2: + more updates from Jonas + + * modules/Makefile.2.4: + update + +2001-08-08 Rick Haines + + * debian/*: + Debian packaging stuff from Jonas Birme + + * modules/em8300_main.c: + Patch from Eduard to change var_video_value + to 3375. This looks dependent on card version + which is probably why I didn't see a difference. + + * em8300.sysv.in: + Patch from Jeffrey Ingber to make the rpm boot + script upload the microcode + + * modules/Makefile: + Patch from Jeffrey Ingber to use + include/linux/autoconf.h instead of + include/config/modversions.h. + +2001-08-05 Rick Haines + + * modules/README-2.4, + modules/README-2.2: + update + +2001-08-05 Rick Haines + + * modules/Makefile, + modules/Makefile.2.2, + modules/em8300_main.c: + Makefile magic from Graeme to detect whether + sound and i2c bitbanging are configured + +2001-08-04 Rick Haines + + * include/linux/em8300.h, + modules/em8300_audio.c: + move static vars to struct em8300_s + + * modules/em8300_main.c, + modules/em8300_ioctl.c: + add overlay_tv_switching module option + + * modules/README-greeenscreen, + modules/README-modoptions: + renamed + + * xine/README, + xine/dxr3_decoder.c, + xine/video_out_dxr3.c, + xine/Makefile: + plugin removed until necessary + +2001-08-03 Rick Haines + + * modules/em8300_main.c, + modules/Makefile, + modules/README-2.4: + Add REGISTER_DSP to enable registering /dev/dsp + + * include/linux/em8300.h, + modules/em8300_ioctl.c: + Eduard added EM8300_IOCTL_SCR_GET/SET and + EM8300_IOCTL_SCR_GETSPEED/SETSPEED + +2001-08-02 Rick Haines + + * modules/em8300_audio.c: + Fix SNDCTL_DSP_GETOPTR and SNDCTL_DSP_GETODELAY + ioctl's so they work with mono audio + +2001-08-01 Rick Haines + + * modules/em8300_ioctl.c: + revert overlay to tv mode switching patch + since it squishes the overlay mode for me + + * overlay/configs/*, + overlay/Makefile.am: + add sample autocal config files + +2001-08-01 Rick Haines + + * modules/em8300_audio.c: + only use AFMT_AC3 if it's defined + +2001-07-29 Rick Haines + + * modules/em8300_audio.c: + reset mafifo->bytes when the device is opened + +2001-07-29 Rick Haines + + * modules/em8300_ioctl.c: + Patch from Mike Lampard to fix overlay to + tv mode switching + +2001-07-28 Rick Haines + + * include/linux/em8300.h, + modules/em8300_ioctl.c, + modules/em8300_audio.c: + add more CLOCKGEN defines + +2001-07-27 Rick Haines + + * modules/bt865.c, + modules/em8300_dicom.c: + more bt865 ntsc updates from Chris + +2001-07-24 Rick Haines + + * modules/em8300_main.c, + include/linux/em8300.h: + add register_dsp code to use /dev/dsp* + + * modules/em8300_audio.c: + add AFMT_AC3. Someone with an AC3 decoder will have + to verify + + * modules/Makefile: + now installs em8300.h + +2001-07-20 Rick Haines + + * modules/em8300_video.c: + From Daniel Chassot "Adds the dicom kmin computation" + +2001-07-20 Rick Haines + + * xine/video_out_dxr3.c, + xine/README: + Eduard fixed the priority, added tvmode option, and + updated the README + +2001-07-19 Rick Haines + + * xine/*: + Update from Eduard "This version has the possibility of + setting the bcs values and the aspectratio. Priorities + are also working now. If the plugin detects the dxr3 + devices, it activates itself and is taken from XINE due + to a higher priority." + +2001-07-19 Rick Haines + + * modules/Makefile: + Patch from Graeme to change include path order to find + local em8300.h first + + * modules/em8300_audio.c: + Patch from Daniel Chassot "swaps the left and the right + channel on the dxr3 analog output." + + * modules/em9010.c, + modules/em8300_ioctl.c, + include/linux/em8300.h: + Patch from Daniel Chassot "implements the jitter and the + stability control that are available on the dxr3view window. + It also clips the visible area of the DICOM to the visible + area of the screen when in overlay mode." + + * overlay/dxr3view.c: + Patch from Daniel Chassot "keeps the actual window size when + you move the viewing window around the screen." + + * modules/em8300_audio.c, + modules/em8300_fifo.c, + include/linux/em8300.h: + Add OSS ioctl's. Still needs AFMT_AC3 support. + Audio sync is only activated when the SETPTS ioctl is called. + + * modules/em8300_video.c: + Eduard fixed a bug in my ioctl modifications + + * modules/em8300_dicom.c: + Patch from Chris to use the old SYNC values in pal mode + to prevent us breaking it (with slight modifications). + sub_40137 wasn't updating Luma/Chroma with bt865 encoders. + + * xine/xine-lib.diff: + Removed due to merge in Xine cvs. + + * AUTHORS: + Graeme wants email about bugs in his Makefile + +2001-07-17 Rick Haines + + * modules/em8300_dicom.c: + updated sync values from John Stebbins + + * modules/em8300_video.c, + include/linux/em8300.h: + Add SCR GET/SET ioctl's partly from Eduard Hasenleithner + + * xine/* + remove old patches and add 0.5 plugin from Eduard Hasenleithner + + * AUTHORS + Thanks guys + +2001-07-16 Rick Haines + + * modules/em8300_dicom.c: + Patch from Eduard Hasenleithner to fix pal mode + + * configure.in: + Move AC_PROG_CC to placate new autoconf + +2001-07-15 Rick Haines + + * modules/em8300_audio.c: + Patch from Daniel Chassot to fix 1/2 sec sync problem + + * modules/em8300_dicom.c: + Patch from John Stebbins to fix NTSC sync problems + and shift it up a bit. + + * modules/em8300_video.c (em8300_video_sync): + Patch from Eduard Hasenleithner to make em8300_video_sync() + timeout if it takes too long. + + * modules/README-2.4, + modules/README-2.2, + modules/make-modules-2.4, + modules/make-install-2.4, + modules/make-clean: + Remove old 2.4 Makefile stuff + +2001-06-27 Rick Haines + + * modules/adv717x.c (adv717x_update): + Fix color bars. + +2001-06-26 Rick Haines + + * scripts/microcode_upload.pl: + Remove the error message when it can't open a device. + You'll know it failed if you don't get success message(s). + + * modules/Makefile + Add debug target (almost left VIDEOMODE_DEFAULT set to NTSC :) + I'm considering a nice way to add pal and ntsc targets as well. + + * modules/bt865.c, + modules/adv717x.c: + Patch from cch to add color_bars module option to turn on + color bars when the modules load. + +2001-06-23 Rick Haines + + * modules/em8300_ioctl.c: + Merge patch from Daniel Chassot: + + "This one corrects a problem with the value of + em->clockgen that was correct only for the TV mode and + note for the overlay mode." + + "This patch removes all the small color squares that + are displayed over the overlay screen during playback." + +2001-06-20 Rick Haines + + * include/libdxr3/api.h + Add #ifdef __cplusplus stuff as requested by + Stefan Jahn + +2001-06-20 Rick Haines + + Merge some patches from Daniel Chassot. + + * modules/em9010.c: + "The em9010 patch fix a problem with the setting of the + 16bit sync register of the em9010" + + * overlay/dxr3view.c: + "The dxr3view patch fixe a problem with the overlay + initialisation if the screen depth is not 24" + +2001-06-13 Rick Haines + + * modules/bt865.c, + modules/em8300_audio.c, + modules/em8300_video.c, + modules/em8300_dicom.c, + modules/em8300_i2c.c, + modules/em8300_main.c, + modules/em8300_reg.h, + modules/encoder.h, + include/linux/em8300.h: + merge Chris C. Hoover's bt865 patch + + * modules/README-modules.conf + add the lines I put in my modules.conf + +2001-06-13 Rick Haines + + * libdxr3/dxr3-api.c + remove microcode uploading from libdxr3 + You must now manually upload the microcode before + using the device (post-install in /etc/modules.conf) + +2001-06-13 Rick Haines + + * modules/Makefile, + modules/Makefile.2.2, + modules/README-2.2, + modules/README-2.4.0: + Add new Makefile for 2.4 kernels (from Graeme Gregory) and + make it the default. If no problems are found I'll remove + all the make-* scripts. + +2001-06-12 Rick Haines + + * scripts/microcode_upload.pl: + add exit statement if upload fails + +2001-05-13 Rick Haines + + * include/libdxr3/api.h, + libdxr3/dxr3-api.c: + dxr3_audio_write() now just writes the data sent to it, + dxr3_audio_write_ac3() will process it if in digitalac3 mode. + +2001-05-11 Rick Haines + + * modules/em8300_video.c (em8300_video_check_ptsfifo): + make the same change as we did for spu + +2001-05-10 Rick Haines + + * modules/em8300_audio.c: + merge new digitalac3/pcm patch from Mattias Svensson + +2001-05-10 Rick Haines + + * libdxr3/ac3spdif.c (output_spdif), + modules/em8300_audio.c: + revert my change and merge Mattias Svensson's patch + + * xine/xine-0.4.01_dxr3.patch.gz: + put this on the ftp site instead + +2001-05-10 Rick Haines + + * modules/em8300_ioctl.c (em8300_control_ioctl): + add ov_scr and ov_cal to fix some type casting errors + + * libdxr3/ac3spdif.c (output_spdif): + comment out the swab for ac3 data, this should fix digitalac3 + + * modules/em8300_spu.c (em8300_spu_check_ptsfifo): + merge disappearing subtitle patch from Eduard Hasenleithner + +2001-04-23 Rick Haines + + * modules/*: + merge kernel coding style patch from James Farwell + and make a pass through the code myself. + +2001-04-22 Rick Haines + + * modules/em8300_audio.c, + modules/em8300_video.c: + remove the 1 sec requirement for rollover. + Now if we get any pts lower than the lastpts + we'll consider it a rollover. I was attempting + to work around broken mpeg's but it's not worth + doing it in the driver. So much for my eva #4 fix.. + +2001-04-22 Rick Haines + + * m4/gtk.m4, + configure.in, + Makefile.am, + dhc/Makefile.am, + overlay/Makefile.am: + add autoconf check for gtk thanks to m4 file + 'borrowed' from glade by Bo. + +2001-04-20 Rick Haines + + * xine/xine-0.4.01_dxr3.patch.gz: + the aspect ratio stuff is really there this time, + I promise. + + * modules/em8300_audio.c: + work around a weird pts problem in my Evangelion #4 dvd. + +2001-04-20 Rick Haines + + * xine/README, + xine/xine-0.4.01_dxr3.patch.gz: + update xine patch to use installed libdxr3. + Now selects correct aspect ratio (make sure + to get the updated input plugin as well) + +2001-04-19 Rick Haines + + * overlay/dxr3view.c: + make overlay mode default since it works for me now + + * overlay/autocal.c: + fix another hardcoded resolution + NUM_MONITORS needs to go somewhere better + +2001-04-18 Rick Haines + + * modules/em8300_audio.c: + add my_abs() to fix missing abs() with gcc 2.96 + +2001-04-18 Rick Haines + + * modules/em8300_main.c: + patch from Eg to make use_bt865 work with multiple cards. + we'll want to do this with all the options. + + * scripts/microcode_upload.pl: + try to upload microcode to all the devices (from Eg) + +2001-04-17 Rick Haines + + * overlay/dxr3view.c: + patch from Tony Bybell to fix vertical squish + + * overlay/autocal.c: + patch from Tony Bybell for + 'autocal automatic x/y/plane detect' + +2001-03-31 Rick Haines + + * xine/xine_dxr3.patch.gz, + xine/xine-0.4.01_dxr3.patch.gz: + fix xine exit problem. dxr3_write_* + were blocking when playback was stopped/paused. + +2001-03-29 Rick Haines + + * modules/em8300_audio.c (preprocess_digital): + reverse the em->swapbytes condition. + this should fix pcm, I wonder if it breaks ac3 + + * modules/*: + fix up all the printk's + + * xine/xine-0.4.01_dxr3.patch.gz: + remove check for libcss from configure.in + +2001-03-28 Rick Haines + + * modules/em8300_i2c.c (em8300_i2c_reg): + printk and return -ENODEV if we don't + recognize the device id. + + * include/linux/em8300.h + add ENCODER_UNKNOWN + +2001-03-27 Rick Haines + + * xine/xine-0.4.01_dxr3.patch.gz: + add modified xine patch from Paul Laufer + that applies to xine-0.4.01 + +2001-03-25 Rick Haines + + * modules/README-greenscreen, + modules/em8300_main.c, + modules/em8300_video.c: + add bt865_ucode_timeout module parameter + for people with bt865's who get timeouts + uploading their microcode. + +2001-03-21 Rick Haines + + * dhc/* + rescue dhc from zeev01 branch since people + still find it useful. Updated it a bit. + +2001-03-17 Rick Haines + + * scripts/microcode_extract.pl, + scripts/microcode_info.pl: + endian fixes from Fabian Jakobs + +2001-03-15 Rick Haines + + * include/linux/Makefile.am, + em8300.spec.in: + install em8300.h properly + +2001-03-14 Rick Haines + + * omsplugin/README, + omsplugin/plugin-install.sh, + omsplugin/dxr3/*: + update from James Farwell to let omsplugin use libdxr3. + The next step is to make it build outside the oms source + tree. That'll require some way to remove the libac3 + dependency. + +2001-03-14 Rick Haines + + another patch from Andrew to clean up a few things + from the last one. + +2001-03-13 Rick Haines + + merge patch from Andrew Meredith; fixes make dist + for the headers, adds make dist-rpm, adds boot + self-build scripts. I'm a bit iffy about a couple + things (/etc/rc.d/init.d/ doesn't exist on all systems) + but I'll leave it for now. + +2001-03-13 Rick Haines + + * modules/em8300_main.c, + modules/adv717x.c: + merge patches from Paul Laufer. Fixes missing + symbol 'remap', turns on interlaced and turns + off pedestal for ADV7170 in NTSC mode. + + * scripts/msexpand.pl: + add this to help people extract their microcode + thanks to Paul Laufer. + +2001-03-11 Rick Haines + + * include/libdxr3/api.h, + libdxr3/dxr3-api.c: + patch from James Farwell to make dxr3_audio_write + handle DIGITALAC3 instead of the plugins. + + * xine/xine_dxr3.patch.gz + now uses the new libdxr3 + +2001-03-11 Rick Haines + + * include/* + move the includes that should get installed here. + + move the configure stuff to the root dir. + +2001-03-08 Rick Haines + + * libdxr3/*: + created + +2001-03-05 Rick Haines + + * xine/README, + xine/xine_dxr3.patch.gz: + added xine_dxr3 patch + +2001-03-04 Rick Haines + + * modules/em8300.h, + modules/em8300_dicom.c, + modules/em8300_video.c: + fix aspect ratio stuff thanks to information on enabling + 16x9 mode from Morten Bøgeskov. + + * omsplugin/dxr3/em8300.h, + omsplugin/dxr3/dxr3-api.h, + omsplugin/dxr3/dxr3_mpeg2.c: + update to match aspect ratio changes + +2001-03-03 Rick Haines + + * omsplugin/dxr3/em8300.h, + omsplugin/dxr3/dxr3-api.h, + omsplugin/dxr3/dxr3-api.c: + update oms plugin + +2001-03-03 Rick Haines + + * modules/em8300.h, + modules/em8300_audio.c, + modules/em8300_video.c, + modules/em8300_main.c: + integrate new sync code. It's messier than I'd like + but works well for me. + + * modules/README-greenscreen: + add info about swap_redblue_pal + +2001-02-28 Rick Haines + + * modules/make-install-2.4 + merge patch from Stefan Lucke so we install + the other kernel modules too. This has + been bugging me for a while as well. + +2001-02-25 Rick Haines + + * modules/em8300.h, + modules/em8300_ioctl.c, + overlay/dxr3view.c, + overlay/overlay.h, + overlay/overlay.c: + merged patch from Edward Salley, + adds overlay_signalmode ioctl to set fullscreen overlay, + fixes bug in ratio switching. + +2001-02-25 Rick Haines + + * modules/em8300_main.c + merge patch from Frédéric Crozat, + "A cast is needed in switch, otherwise em8300.o + needs a function which is only present in + libgcc.a (compiler library) : __cmpdi2" + + * modules/adv717x.c + added swap_redblue_pal for people with + swapped red and blue components; + changes Timing Register 1 for PAL and PAL60. + register values from Frédéric Crozat. + +2001-02-19 Rick Haines + + * modules/em8300_video.c (em8300_video_setup): + move write_register(0x1f47,0x18) to fix microcode + uploading with bt865 cards. + + * modules/em8300_dicom.c, + modules/em8300_main.c: + added activate_loopback module parameter for people + who get blank screen after uploading microcode. + +2001-02-18 Rick Haines + + * modules/adv717x.c: remove #define DEBUG since + it's in em8300.h + + * modules/adv717x.c, + modules/em8300_dicom.c, + modules/em8300_main.c, + modules/em8300.h: + merged in module parameter code from Jonas Birme and + added a few for the adv717x module. + + * modules/README-greenscreen: modified to describe + the new module parameters + + * omsplugin/dxr3/em8300.h: + updated. + +2001-02-12 Rick Haines + + * modules/em8300_video.c, modules/em8300_spu.c: change + the setpts ioctls to use get_user for consistency. + + * omsplugin/dxr3/dxr3-api.c: updated to match ioctl changes. + dxr3_audio_set_mode should now actually set the mode. + + * ChangeLog: started. + * AUTHORS: started. + diff -Nru em8300-0.16.4/configure em8300-0.18.0/configure --- em8300-0.16.4/configure 2008-02-04 22:52:23.000000000 +0000 +++ em8300-0.18.0/configure 2010-06-28 18:22:52.000000000 +0100 @@ -1,60 +1,83 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.61. +# Generated by GNU Autoconf 2.65 for EM8300 0.18.0-hg. +# # # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, -# 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. +# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. +# +# # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; + case `(set -o) 2>/dev/null` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; esac - fi - - -# PATH needs CR -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' +as_nl=' +' +export as_nl +# Printing a long string crashes Solaris 7 /usr/bin/printf. +as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='printf %s\n' + as_echo_n='printf %s' +else + if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then + as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' + as_echo_n='/usr/ucb/echo -n' else - PATH_SEPARATOR=: + as_echo_body='eval expr "X$1" : "X\\(.*\\)"' + as_echo_n_body='eval + arg=$1; + case $arg in #( + *"$as_nl"*) + expr "X$arg" : "X\\(.*\\)$as_nl"; + arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; + esac; + expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" + ' + export as_echo_n_body + as_echo_n='sh -c $as_echo_n_body as_echo' fi - rm -f conf$$.sh + export as_echo_body + as_echo='sh -c $as_echo_body as_echo' fi -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } fi @@ -63,20 +86,18 @@ # there to prevent editors from complaining about space-tab. # (If _AS_PATH_WALK were called with IFS unset, it would disable word # splitting by setting IFS to empty value.) -as_nl=' -' IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. -case $0 in +case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + done IFS=$as_save_IFS ;; @@ -87,354 +108,321 @@ as_myself=$0 fi if test ! -f "$as_myself"; then - echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - { (exit 1); exit 1; } + $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + exit 1 fi -# Work around bugs in pre-3.0 UWIN ksh. -for as_var in ENV MAIL MAILPATH -do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE # CDPATH. -$as_unset CDPATH - +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH if test "x$CONFIG_SHELL" = x; then - if (eval ":") 2>/dev/null; then - as_have_required=yes + as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which + # is contrary to our usage. Disable this feature. + alias -g '\${1+\"\$@\"}'='\"\$@\"' + setopt NO_GLOB_SUBST else - as_have_required=no + case \`(set -o) 2>/dev/null\` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac fi - - if test $as_have_required = yes && (eval ": -(as_func_return () { - (exit \$1) -} -as_func_success () { - as_func_return 0 -} -as_func_failure () { - as_func_return 1 -} -as_func_ret_success () { - return 0 -} -as_func_ret_failure () { - return 1 -} +" + as_required="as_fn_return () { (exit \$1); } +as_fn_success () { as_fn_return 0; } +as_fn_failure () { as_fn_return 1; } +as_fn_ret_success () { return 0; } +as_fn_ret_failure () { return 1; } exitcode=0 -if as_func_success; then - : -else - exitcode=1 - echo as_func_success failed. -fi - -if as_func_failure; then - exitcode=1 - echo as_func_failure succeeded. -fi - -if as_func_ret_success; then - : -else - exitcode=1 - echo as_func_ret_success failed. -fi - -if as_func_ret_failure; then - exitcode=1 - echo as_func_ret_failure succeeded. -fi - -if ( set x; as_func_ret_success y && test x = \"\$1\" ); then - : +as_fn_success || { exitcode=1; echo as_fn_success failed.; } +as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } +as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } +as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } +if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : + +else + exitcode=1; echo positional parameters were not saved. +fi +test x\$exitcode = x0 || exit 1" + as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO + as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO + eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && + test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 +test \$(( 1 + 1 )) = 2 || exit 1" + if (eval "$as_required") 2>/dev/null; then : + as_have_required=yes else - exitcode=1 - echo positional parameters were not saved. + as_have_required=no fi + if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : -test \$exitcode = 0) || { (exit 1); exit 1; } - -( - as_lineno_1=\$LINENO - as_lineno_2=\$LINENO - test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" && - test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; } -") 2> /dev/null; then - : else - as_candidate_shells= - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +as_found=false for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - case $as_dir in + as_found=: + case $as_dir in #( /*) for as_base in sh bash ksh sh5; do - as_candidate_shells="$as_candidate_shells $as_dir/$as_base" + # Try only shells that exist, to save several forks. + as_shell=$as_dir/$as_base + if { test -f "$as_shell" || test -f "$as_shell.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : + CONFIG_SHELL=$as_shell as_have_required=yes + if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : + break 2 +fi +fi done;; esac + as_found=false done +$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : + CONFIG_SHELL=$SHELL as_have_required=yes +fi; } IFS=$as_save_IFS - for as_shell in $as_candidate_shells $SHELL; do - # Try only shells that exist, to save several forks. - if { test -f "$as_shell" || test -f "$as_shell.exe"; } && - { ("$as_shell") 2> /dev/null <<\_ASEOF -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; -esac - + if test "x$CONFIG_SHELL" != x; then : + # We cannot yet assume a decent shell, so we have to provide a + # neutralization value for shells without unset; and this also + # works around shells that cannot unset nonexistent variables. + BASH_ENV=/dev/null + ENV=/dev/null + (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV + export CONFIG_SHELL + exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"} +fi + + if test x$as_have_required = xno; then : + $as_echo "$0: This script requires a shell more modern than all" + $as_echo "$0: the shells that I found on your system." + if test x${ZSH_VERSION+set} = xset ; then + $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" + $as_echo "$0: be upgraded to zsh 4.3.4 or later." + else + $as_echo "$0: Please tell bug-autoconf@gnu.org about your system, +$0: including any error possibly output before this +$0: message. Then install a modern shell, or manually run +$0: the script under such a shell if you do have one." + fi + exit 1 fi - - -: -_ASEOF -}; then - CONFIG_SHELL=$as_shell - as_have_required=yes - if { "$as_shell" 2> /dev/null <<\_ASEOF -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; -esac - fi +fi +SHELL=${CONFIG_SHELL-/bin/sh} +export SHELL +# Unset more variables known to interfere with behavior of common tools. +CLICOLOR_FORCE= GREP_OPTIONS= +unset CLICOLOR_FORCE GREP_OPTIONS - -: -(as_func_return () { - (exit $1) -} -as_func_success () { - as_func_return 0 -} -as_func_failure () { - as_func_return 1 -} -as_func_ret_success () { - return 0 -} -as_func_ret_failure () { - return 1 +## --------------------- ## +## M4sh Shell Functions. ## +## --------------------- ## +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} } +as_unset=as_fn_unset -exitcode=0 -if as_func_success; then - : -else - exitcode=1 - echo as_func_success failed. -fi +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status -if as_func_failure; then - exitcode=1 - echo as_func_failure succeeded. -fi +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ -if as_func_ret_success; then - : -else - exitcode=1 - echo as_func_ret_success failed. -fi + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir" -if as_func_ret_failure; then - exitcode=1 - echo as_func_ret_failure succeeded. -fi -if ( set x; as_func_ret_success y && test x = "$1" ); then - : +} # as_fn_mkdir_p +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' else - exitcode=1 - echo positional parameters were not saved. -fi - -test $exitcode = 0) || { (exit 1); exit 1; } - -( - as_lineno_1=$LINENO - as_lineno_2=$LINENO - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; } - -_ASEOF -}; then - break -fi - -fi - - done - - if test "x$CONFIG_SHELL" != x; then - for as_var in BASH_ENV ENV - do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var - done - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"} -fi - - - if test $as_have_required = no; then - echo This script requires a shell more modern than all the - echo shells that I found on your system. Please install a - echo modern shell, or manually run the script under such a - echo shell if you do have one. - { (exit 1); exit 1; } -fi - - -fi - -fi + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith -(eval "as_func_return () { - (exit \$1) -} -as_func_success () { - as_func_return 0 -} -as_func_failure () { - as_func_return 1 -} -as_func_ret_success () { - return 0 -} -as_func_ret_failure () { - return 1 -} +# as_fn_error ERROR [LINENO LOG_FD] +# --------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with status $?, using 1 if that was 0. +as_fn_error () +{ + as_status=$?; test $as_status -eq 0 && as_status=1 + if test "$3"; then + as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3 + fi + $as_echo "$as_me: error: $1" >&2 + as_fn_exit $as_status +} # as_fn_error -exitcode=0 -if as_func_success; then - : +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr else - exitcode=1 - echo as_func_success failed. -fi - -if as_func_failure; then - exitcode=1 - echo as_func_failure succeeded. + as_expr=false fi -if as_func_ret_success; then - : +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename else - exitcode=1 - echo as_func_ret_success failed. -fi - -if as_func_ret_failure; then - exitcode=1 - echo as_func_ret_failure succeeded. + as_basename=false fi -if ( set x; as_func_ret_success y && test x = \"\$1\" ); then - : +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname else - exitcode=1 - echo positional parameters were not saved. + as_dirname=false fi -test \$exitcode = 0") || { - echo No shell found that supports shell functions. - echo Please tell autoconf@gnu.org about your system, - echo including any error possibly output before this - echo message -} +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits - as_lineno_1=$LINENO - as_lineno_2=$LINENO - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line after each line using $LINENO; the second 'sed' - # does the real work. The second script uses 'N' to pair each - # line-number line with the line containing $LINENO, and appends - # trailing '-' during substitution so that $LINENO is not a special - # case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # scripts with optimization help from Paolo Bonzini. Blame Lee - # E. McMahon (1931-1989) for sed's syntax. :-) + as_lineno_1=$LINENO as_lineno_1a=$LINENO + as_lineno_2=$LINENO as_lineno_2a=$LINENO + eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && + test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { + # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) sed -n ' p /[$]LINENO/= @@ -451,8 +439,7 @@ s/-\n.*// ' >$as_me.lineno && chmod +x "$as_me.lineno" || - { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } + { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the @@ -462,49 +449,40 @@ exit } - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in +case `echo -n x` in #((((( -n*) - case `echo 'x\c'` in + case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. - *) ECHO_C='\c';; + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; esac;; *) ECHO_N='-n';; esac -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then rm -f conf$$.dir/conf$$.file else rm -f conf$$.dir - mkdir conf$$.dir + mkdir conf$$.dir 2>/dev/null fi -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -p'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || +if (echo >conf$$.file) 2>/dev/null; then + if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -p'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -p' + elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln + else as_ln_s='cp -p' -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln + fi else as_ln_s='cp -p' fi @@ -512,7 +490,7 @@ rmdir conf$$.dir 2>/dev/null if mkdir -p . 2>/dev/null; then - as_mkdir_p=: + as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false @@ -529,12 +507,12 @@ as_test_x=' eval sh -c '\'' if test -d "$1"; then - test -d "$1/."; + test -d "$1/."; else - case $1 in - -*)set "./$1";; + case $1 in #( + -*)set "./$1";; esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( ???[sx]*):;;*)false;;esac;fi '\'' sh ' @@ -548,8 +526,8 @@ as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - -exec 7<&0 &1 +test -n "$DJDIR" || exec 7<&0 &1 # Name of the host. # hostname on some systems (SVR3.2, Linux) returns a bogus exit status, @@ -567,14 +545,12 @@ subdirs= MFLAGS= MAKEFLAGS= -SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. -PACKAGE_NAME= -PACKAGE_TARNAME= -PACKAGE_VERSION= -PACKAGE_STRING= -PACKAGE_BUGREPORT= +PACKAGE_NAME='EM8300' +PACKAGE_TARNAME='em8300' + + ac_unique_file="em8300setup/em8300setup.c" # Factoring default headers for most tests. @@ -613,107 +589,120 @@ # include #endif" -ac_subst_vars='SHELL -PATH_SEPARATOR -PACKAGE_NAME -PACKAGE_TARNAME -PACKAGE_VERSION -PACKAGE_STRING -PACKAGE_BUGREPORT -exec_prefix -prefix -program_transform_name -bindir -sbindir -libexecdir -datarootdir -datadir -sysconfdir -sharedstatedir -localstatedir -includedir -oldincludedir -docdir -infodir -htmldir -dvidir -pdfdir -psdir -libdir -localedir -mandir -DEFS -ECHO_C -ECHO_N -ECHO_T -LIBS -build_alias -host_alias -target_alias -EM8300_MAJOR -EM8300_MINOR -EM8300_SUB -TAR_NAME -CC -CFLAGS -LDFLAGS -CPPFLAGS -ac_ct_CC -EXEEXT -OBJEXT -INSTALL_PROGRAM -INSTALL_SCRIPT -INSTALL_DATA -CYGPATH_W -PACKAGE -VERSION -ACLOCAL -AUTOCONF -AUTOMAKE -AUTOHEADER -MAKEINFO -install_sh -STRIP -INSTALL_STRIP_PROGRAM -mkdir_p -AWK -SET_MAKE -am__leading_dot -AMTAR -am__tar -am__untar -DEPDIR -am__include -am__quote -AMDEP_TRUE -AMDEP_FALSE -AMDEPBACKSLASH -CCDEPMODE -am__fastdepCC_TRUE -am__fastdepCC_FALSE -build -build_cpu -build_vendor -build_os -host -host_cpu -host_vendor -host_os -CPP -GREP -EGREP -DEBUG_CFLAGS -GLOBAL_CFLAGS -PKG_CONFIG -GTK_CFLAGS -GTK_LIBS -HAVE_GTK_TRUE -HAVE_GTK_FALSE -FIRMWARE_DIR -ALSA_DIR +ac_subst_vars='am__EXEEXT_FALSE +am__EXEEXT_TRUE +LTLIBOBJS LIBOBJS -LTLIBOBJS' +ALSA_DIR +FIRMWARE_DIR +HAVE_GTK_FALSE +HAVE_GTK_TRUE +OVERLAY_LIBS +GTK_LIBS +GTK_CFLAGS +PKG_CONFIG +GLOBAL_CFLAGS +DEBUG_CFLAGS +EGREP +GREP +CPP +MAINT +MAINTAINER_MODE_FALSE +MAINTAINER_MODE_TRUE +host_os +host_vendor +host_cpu +host +build_os +build_vendor +build_cpu +build +am__fastdepCC_FALSE +am__fastdepCC_TRUE +CCDEPMODE +AMDEPBACKSLASH +AMDEP_FALSE +AMDEP_TRUE +am__quote +am__include +DEPDIR +am__untar +am__tar +AMTAR +am__leading_dot +SET_MAKE +AWK +mkdir_p +MKDIR_P +INSTALL_STRIP_PROGRAM +STRIP +install_sh +MAKEINFO +AUTOHEADER +AUTOMAKE +AUTOCONF +ACLOCAL +VERSION +PACKAGE +CYGPATH_W +am__isrc +INSTALL_DATA +INSTALL_SCRIPT +INSTALL_PROGRAM +OBJEXT +EXEEXT +ac_ct_CC +CPPFLAGS +LDFLAGS +CFLAGS +CC +target_alias +host_alias +build_alias +LIBS +ECHO_T +ECHO_N +ECHO_C +DEFS +mandir +localedir +libdir +psdir +pdfdir +dvidir +htmldir +infodir +docdir +oldincludedir +includedir +localstatedir +sharedstatedir +sysconfdir +datadir +datarootdir +libexecdir +sbindir +bindir +program_transform_name +prefix +exec_prefix +PACKAGE_URL +PACKAGE_BUGREPORT +PACKAGE_STRING +PACKAGE_VERSION +PACKAGE_TARNAME +PACKAGE_NAME +PATH_SEPARATOR +SHELL' ac_subst_files='' +ac_user_opts=' +enable_option_checking +enable_dependency_tracking +enable_maintainer_mode +enable_gtktest +with_firmware_dir +with_alsa_dir +' ac_precious_vars='build_alias host_alias target_alias @@ -728,6 +717,8 @@ # Initialize some variables set by options. ac_init_help= ac_init_version=false +ac_unrecognized_opts= +ac_unrecognized_sep= # The variables have the same names as the options, with # dashes changed to underlines. cache_file=/dev/null @@ -761,7 +752,7 @@ localstatedir='${prefix}/var' includedir='${prefix}/include' oldincludedir='/usr/include' -docdir='${datarootdir}/doc/${PACKAGE}' +docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' infodir='${datarootdir}/info' htmldir='${docdir}' dvidir='${docdir}' @@ -826,13 +817,20 @@ datarootdir=$ac_optarg ;; -disable-* | --disable-*) - ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` + ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'` - eval enable_$ac_feature=no ;; + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error "invalid feature name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"enable_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval enable_$ac_useropt=no ;; -docdir | --docdir | --docdi | --doc | --do) ac_prev=docdir ;; @@ -845,13 +843,20 @@ dvidir=$ac_optarg ;; -enable-* | --enable-*) - ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` + ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'` - eval enable_$ac_feature=\$ac_optarg ;; + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error "invalid feature name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"enable_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval enable_$ac_useropt=\$ac_optarg ;; -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ @@ -1042,22 +1047,36 @@ ac_init_version=: ;; -with-* | --with-*) - ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` + ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package | sed 's/[-.]/_/g'` - eval with_$ac_package=\$ac_optarg ;; + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error "invalid package name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"with_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval with_$ac_useropt=\$ac_optarg ;; -without-* | --without-*) - ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` + ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package | sed 's/[-.]/_/g'` - eval with_$ac_package=no ;; + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error "invalid package name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"with_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval with_$ac_useropt=no ;; --x) # Obsolete; use --with-x. @@ -1077,25 +1096,25 @@ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) x_libraries=$ac_optarg ;; - -*) { echo "$as_me: error: unrecognized option: $ac_option -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } + -*) as_fn_error "unrecognized option: \`$ac_option' +Try \`$0 --help' for more information." ;; *=*) ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` # Reject names that are not valid shell variable names. - expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 - { (exit 1); exit 1; }; } + case $ac_envvar in #( + '' | [0-9]* | *[!_$as_cr_alnum]* ) + as_fn_error "invalid variable name: \`$ac_envvar'" ;; + esac eval $ac_envvar=\$ac_optarg export $ac_envvar ;; *) # FIXME: should be removed in autoconf 3.0. - echo "$as_me: WARNING: you should use --build, --host, --target" >&2 + $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && - echo "$as_me: WARNING: invalid host type: $ac_option" >&2 + $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} ;; @@ -1104,23 +1123,36 @@ if test -n "$ac_prev"; then ac_option=--`echo $ac_prev | sed 's/_/-/g'` - { echo "$as_me: error: missing argument to $ac_option" >&2 - { (exit 1); exit 1; }; } + as_fn_error "missing argument to $ac_option" +fi + +if test -n "$ac_unrecognized_opts"; then + case $enable_option_checking in + no) ;; + fatal) as_fn_error "unrecognized options: $ac_unrecognized_opts" ;; + *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; + esac fi -# Be sure to have absolute directory names. +# Check all directory arguments for consistency. for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ datadir sysconfdir sharedstatedir localstatedir includedir \ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ libdir localedir mandir do eval ac_val=\$$ac_var + # Remove trailing slashes. + case $ac_val in + */ ) + ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` + eval $ac_var=\$ac_val;; + esac + # Be sure to have absolute directory names. case $ac_val in [\\/$]* | ?:[\\/]* ) continue;; NONE | '' ) case $ac_var in *prefix ) continue;; esac;; esac - { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; } + as_fn_error "expected an absolute directory name for --$ac_var: $ac_val" done # There might be people who depend on the old broken behavior: `$host' @@ -1134,7 +1166,7 @@ if test "x$host_alias" != x; then if test "x$build_alias" = x; then cross_compiling=maybe - echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. + $as_echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. If a cross compiler is detected then cross compile mode will be used." >&2 elif test "x$build_alias" != "x$host_alias"; then cross_compiling=yes @@ -1150,23 +1182,21 @@ ac_pwd=`pwd` && test -n "$ac_pwd" && ac_ls_di=`ls -di .` && ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || - { echo "$as_me: error: Working directory cannot be determined" >&2 - { (exit 1); exit 1; }; } + as_fn_error "working directory cannot be determined" test "X$ac_ls_di" = "X$ac_pwd_ls_di" || - { echo "$as_me: error: pwd does not report name of working directory" >&2 - { (exit 1); exit 1; }; } + as_fn_error "pwd does not report name of working directory" # Find the source files, if location was not specified. if test -z "$srcdir"; then ac_srcdir_defaulted=yes # Try the directory containing this script, then the parent directory. - ac_confdir=`$as_dirname -- "$0" || -$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$0" : 'X\(//\)[^/]' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -echo X"$0" | + ac_confdir=`$as_dirname -- "$as_myself" || +$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_myself" : 'X\(//\)[^/]' \| \ + X"$as_myself" : 'X\(//\)$' \| \ + X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_myself" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q @@ -1193,13 +1223,11 @@ fi if test ! -r "$srcdir/$ac_unique_file"; then test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 - { (exit 1); exit 1; }; } + as_fn_error "cannot find sources ($ac_unique_file) in $srcdir" fi ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" ac_abs_confdir=`( - cd "$srcdir" && test -r "./$ac_unique_file" || { echo "$as_me: error: $ac_msg" >&2 - { (exit 1); exit 1; }; } + cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error "$ac_msg" pwd)` # When building in place, set srcdir=. if test "$ac_abs_confdir" = "$ac_pwd"; then @@ -1225,7 +1253,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures this package to adapt to many kinds of systems. +\`configure' configures EM8300 0.18.0-hg to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1247,9 +1275,9 @@ Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] + [$ac_default_prefix] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [PREFIX] + [PREFIX] By default, \`make install' will install all the files in \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify @@ -1259,25 +1287,25 @@ For better control, use the options below. Fine tuning of the installation directories: - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] - --sysconfdir=DIR read-only single-machine data [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] - --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --libdir=DIR object code libraries [EPREFIX/lib] - --includedir=DIR C header files [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc [/usr/include] - --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] - --datadir=DIR read-only architecture-independent data [DATAROOTDIR] - --infodir=DIR info documentation [DATAROOTDIR/info] - --localedir=DIR locale-dependent data [DATAROOTDIR/locale] - --mandir=DIR man documentation [DATAROOTDIR/man] - --docdir=DIR documentation root [DATAROOTDIR/doc/PACKAGE] - --htmldir=DIR html documentation [DOCDIR] - --dvidir=DIR dvi documentation [DOCDIR] - --pdfdir=DIR pdf documentation [DOCDIR] - --psdir=DIR ps documentation [DOCDIR] + --bindir=DIR user executables [EPREFIX/bin] + --sbindir=DIR system admin executables [EPREFIX/sbin] + --libexecdir=DIR program executables [EPREFIX/libexec] + --sysconfdir=DIR read-only single-machine data [PREFIX/etc] + --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] + --localstatedir=DIR modifiable single-machine data [PREFIX/var] + --libdir=DIR object code libraries [EPREFIX/lib] + --includedir=DIR C header files [PREFIX/include] + --oldincludedir=DIR C header files for non-gcc [/usr/include] + --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] + --datadir=DIR read-only architecture-independent data [DATAROOTDIR] + --infodir=DIR info documentation [DATAROOTDIR/info] + --localedir=DIR locale-dependent data [DATAROOTDIR/locale] + --mandir=DIR man documentation [DATAROOTDIR/man] + --docdir=DIR documentation root [DATAROOTDIR/doc/em8300] + --htmldir=DIR html documentation [DOCDIR] + --dvidir=DIR dvi documentation [DOCDIR] + --pdfdir=DIR pdf documentation [DOCDIR] + --psdir=DIR ps documentation [DOCDIR] _ACEOF cat <<\_ACEOF @@ -1294,14 +1322,19 @@ fi if test -n "$ac_init_help"; then - + case $ac_init_help in + short | recursive ) echo "Configuration of EM8300 0.18.0-hg:";; + esac cat <<\_ACEOF Optional Features: + --disable-option-checking ignore unrecognized --enable/--with options --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors + --enable-maintainer-mode enable make rules and dependencies not useful + (and sometimes confusing) to the casual installer --disable-gtktest do not try to compile and run a test GTK+ program Optional Packages: @@ -1316,13 +1349,14 @@ LDFLAGS linker flags, e.g. -L if you have libraries in a nonstandard directory LIBS libraries to pass to the linker, e.g. -l - CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I if + CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I if you have headers in a nonstandard directory CPP C preprocessor Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. +Report bugs to the package provider. _ACEOF ac_status=$? fi @@ -1330,15 +1364,17 @@ if test "$ac_init_help" = "recursive"; then # If there are subdirs, report their specific --help. for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue - test -d "$ac_dir" || continue + test -d "$ac_dir" || + { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || + continue ac_builddir=. case "$ac_dir" in .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; *) - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` + ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'` + ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` case $ac_top_builddir_sub in "") ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; @@ -1374,7 +1410,7 @@ echo && $SHELL "$ac_srcdir/configure" --help=recursive else - echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 + $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 fi || ac_status=$? cd "$ac_pwd" || { ac_status=$?; break; } done @@ -1383,22 +1419,360 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -configure -generated by GNU Autoconf 2.61 +EM8300 configure 0.18.0-hg +generated by GNU Autoconf 2.65 -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, -2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. +Copyright (C) 2009 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF exit fi + +## ------------------------ ## +## Autoconf initialization. ## +## ------------------------ ## + +# ac_fn_c_try_compile LINENO +# -------------------------- +# Try to compile conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext + if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + as_fn_set_status $ac_retval + +} # ac_fn_c_try_compile + +# ac_fn_c_try_cpp LINENO +# ---------------------- +# Try to preprocess conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_cpp () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + as_fn_set_status $ac_retval + +} # ac_fn_c_try_cpp + +# ac_fn_c_try_run LINENO +# ---------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes +# that executables *can* be run. +ac_fn_c_try_run () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' + { { case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then : + ac_retval=0 +else + $as_echo "$as_me: program exited with status $ac_status" >&5 + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=$ac_status +fi + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + as_fn_set_status $ac_retval + +} # ac_fn_c_try_run + +# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES +# ------------------------------------------------------- +# Tests whether HEADER exists, giving a warning if it cannot be compiled using +# the include files in INCLUDES and setting the cache variable VAR +# accordingly. +ac_fn_c_check_header_mongrel () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : + $as_echo_n "(cached) " >&6 +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 +$as_echo_n "checking $2 usability... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +#include <$2> +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_header_compiler=yes +else + ac_header_compiler=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 +$as_echo_n "checking $2 presence... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include <$2> +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + ac_header_preproc=yes +else + ac_header_preproc=no +fi +rm -f conftest.err conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( + yes:no: ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} + ;; + no:yes:* ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} + ;; +esac + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : + $as_echo_n "(cached) " >&6 +else + eval "$3=\$ac_header_compiler" +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +fi + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + +} # ac_fn_c_check_header_mongrel + +# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES +# ------------------------------------------------------- +# Tests whether HEADER exists and can be compiled using the include files in +# INCLUDES, setting the cache variable VAR accordingly. +ac_fn_c_check_header_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +#include <$2> +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + +} # ac_fn_c_check_header_compile + +# ac_fn_c_check_type LINENO TYPE VAR INCLUDES +# ------------------------------------------- +# Tests whether TYPE exists after having included INCLUDES, setting cache +# variable VAR accordingly. +ac_fn_c_check_type () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : + $as_echo_n "(cached) " >&6 +else + eval "$3=no" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +int +main () +{ +if (sizeof ($2)) + return 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +int +main () +{ +if (sizeof (($2))) + return 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + +else + eval "$3=yes" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + +} # ac_fn_c_check_type + +# ac_fn_c_try_link LINENO +# ----------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_link () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext conftest$ac_exeext + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information + # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would + # interfere with the next link command; also delete a directory that is + # left behind by Apple's compiler. We do this before executing the actions. + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + as_fn_set_status $ac_retval + +} # ac_fn_c_try_link cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by $as_me, which was -generated by GNU Autoconf 2.61. Invocation command line was +It was created by EM8300 $as_me 0.18.0-hg, which was +generated by GNU Autoconf 2.65. Invocation command line was $ $0 $@ @@ -1434,8 +1808,8 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - echo "PATH: $as_dir" -done + $as_echo "PATH: $as_dir" + done IFS=$as_save_IFS } >&5 @@ -1469,12 +1843,12 @@ | -silent | --silent | --silen | --sile | --sil) continue ;; *\'*) - ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; + ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac case $ac_pass in - 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; + 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; 2) - ac_configure_args1="$ac_configure_args1 '$ac_arg'" + as_fn_append ac_configure_args1 " '$ac_arg'" if test $ac_must_keep_next = true; then ac_must_keep_next=false # Got value, back to normal. else @@ -1490,13 +1864,13 @@ -* ) ac_must_keep_next=true ;; esac fi - ac_configure_args="$ac_configure_args '$ac_arg'" + as_fn_append ac_configure_args " '$ac_arg'" ;; esac done done -$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } -$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } +{ ac_configure_args0=; unset ac_configure_args0;} +{ ac_configure_args1=; unset ac_configure_args1;} # When interrupted or exit'd, cleanup temporary files, and complete # config.log. We remove comments because anyway the quotes in there @@ -1521,12 +1895,13 @@ case $ac_val in #( *${as_nl}*) case $ac_var in #( - *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5 -echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;; + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 +$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( - *) $as_unset $ac_var ;; + BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( + *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done @@ -1555,9 +1930,9 @@ do eval ac_val=\$$ac_var case $ac_val in - *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac - echo "$ac_var='\''$ac_val'\''" + $as_echo "$ac_var='\''$ac_val'\''" done | sort echo @@ -1572,9 +1947,9 @@ do eval ac_val=\$$ac_var case $ac_val in - *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac - echo "$ac_var='\''$ac_val'\''" + $as_echo "$ac_var='\''$ac_val'\''" done | sort echo fi @@ -1590,83 +1965,88 @@ echo fi test "$ac_signal" != 0 && - echo "$as_me: caught signal $ac_signal" - echo "$as_me: exit $exit_status" + $as_echo "$as_me: caught signal $ac_signal" + $as_echo "$as_me: exit $exit_status" } >&5 rm -f core *.core core.conftest.* && rm -f -r conftest* confdefs* conf$$* $ac_clean_files && exit $exit_status ' 0 for ac_signal in 1 2 13 15; do - trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal + trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal done ac_signal=0 # confdefs.h avoids OS command line length limits that DEFS can exceed. rm -f -r conftest* confdefs.h +$as_echo "/* confdefs.h */" > confdefs.h + # Predefined preprocessor variables. cat >>confdefs.h <<_ACEOF #define PACKAGE_NAME "$PACKAGE_NAME" _ACEOF - cat >>confdefs.h <<_ACEOF #define PACKAGE_TARNAME "$PACKAGE_TARNAME" _ACEOF - cat >>confdefs.h <<_ACEOF #define PACKAGE_VERSION "$PACKAGE_VERSION" _ACEOF - cat >>confdefs.h <<_ACEOF #define PACKAGE_STRING "$PACKAGE_STRING" _ACEOF - cat >>confdefs.h <<_ACEOF #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" _ACEOF +cat >>confdefs.h <<_ACEOF +#define PACKAGE_URL "$PACKAGE_URL" +_ACEOF + # Let the site file select an alternate cache file if it wants to. -# Prefer explicitly selected file to automatically selected ones. +# Prefer an explicitly selected file to automatically selected ones. +ac_site_file1=NONE +ac_site_file2=NONE if test -n "$CONFIG_SITE"; then - set x "$CONFIG_SITE" + ac_site_file1=$CONFIG_SITE elif test "x$prefix" != xNONE; then - set x "$prefix/share/config.site" "$prefix/etc/config.site" + ac_site_file1=$prefix/share/config.site + ac_site_file2=$prefix/etc/config.site else - set x "$ac_default_prefix/share/config.site" \ - "$ac_default_prefix/etc/config.site" + ac_site_file1=$ac_default_prefix/share/config.site + ac_site_file2=$ac_default_prefix/etc/config.site fi -shift -for ac_site_file +for ac_site_file in "$ac_site_file1" "$ac_site_file2" do - if test -r "$ac_site_file"; then - { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 -echo "$as_me: loading site script $ac_site_file" >&6;} + test "x$ac_site_file" = xNONE && continue + if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 +$as_echo "$as_me: loading site script $ac_site_file" >&6;} sed 's/^/| /' "$ac_site_file" >&5 . "$ac_site_file" fi done if test -r "$cache_file"; then - # Some versions of bash will fail to source /dev/null (special - # files actually), so we avoid doing that. - if test -f "$cache_file"; then - { echo "$as_me:$LINENO: loading cache $cache_file" >&5 -echo "$as_me: loading cache $cache_file" >&6;} + # Some versions of bash will fail to source /dev/null (special files + # actually), so we avoid doing that. DJGPP emulates it as a regular file. + if test /dev/null != "$cache_file" && test -f "$cache_file"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 +$as_echo "$as_me: loading cache $cache_file" >&6;} case $cache_file in [\\/]* | ?:[\\/]* ) . "$cache_file";; *) . "./$cache_file";; esac fi else - { echo "$as_me:$LINENO: creating cache $cache_file" >&5 -echo "$as_me: creating cache $cache_file" >&6;} + { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 +$as_echo "$as_me: creating cache $cache_file" >&6;} >$cache_file fi @@ -1680,60 +2060,56 @@ eval ac_new_val=\$ac_env_${ac_var}_value case $ac_old_set,$ac_new_set in set,) - { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 +$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} ac_cache_corrupted=: ;; ,set) - { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 +$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} ac_cache_corrupted=: ;; ,);; *) if test "x$ac_old_val" != "x$ac_new_val"; then - { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 -echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} - { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 -echo "$as_me: former value: $ac_old_val" >&2;} - { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 -echo "$as_me: current value: $ac_new_val" >&2;} - ac_cache_corrupted=: + # differences in whitespace do not lead to failure. + ac_old_val_w=`echo x $ac_old_val` + ac_new_val_w=`echo x $ac_new_val` + if test "$ac_old_val_w" != "$ac_new_val_w"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 +$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} + ac_cache_corrupted=: + else + { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 +$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} + eval $ac_var=\$ac_old_val + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 +$as_echo "$as_me: former value: \`$ac_old_val'" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 +$as_echo "$as_me: current value: \`$ac_new_val'" >&2;} fi;; esac # Pass precious variables to config.status. if test "$ac_new_set" = set; then - case $ac_new_val in - *\'*) ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; - *) ac_arg=$ac_var=$ac_new_val ;; - esac - case " $ac_configure_args " in - *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. - *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; - esac - fi -done -if $ac_cache_corrupted; then - { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 -echo "$as_me: error: changes in the environment can compromise the build" >&2;} - { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 -echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} - { (exit 1); exit 1; }; } -fi - - - - - - - - - - - - - - - - + case $ac_new_val in + *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; + *) ac_arg=$ac_var=$ac_new_val ;; + esac + case " $ac_configure_args " in + *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. + *) as_fn_append ac_configure_args " '$ac_arg'" ;; + esac + fi +done +if $ac_cache_corrupted; then + { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 +$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} + as_fn_error "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 +fi +## -------------------- ## +## Main body of script. ## +## -------------------- ## ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -1743,26 +2119,19 @@ + ac_aux_dir= for ac_dir in autotools "$srcdir"/autotools; do - if test -f "$ac_dir/install-sh"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install-sh -c" - break - elif test -f "$ac_dir/install.sh"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install.sh -c" - break - elif test -f "$ac_dir/shtool"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/shtool install -c" - break - fi + for ac_t in install-sh install.sh shtool; do + if test -f "$ac_dir/$ac_t"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/$ac_t -c" + break 2 + fi + done done if test -z "$ac_aux_dir"; then - { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in autotools \"$srcdir\"/autotools" >&5 -echo "$as_me: error: cannot find install-sh or install.sh in autotools \"$srcdir\"/autotools" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "cannot find install-sh, install.sh, or shtool in autotools \"$srcdir\"/autotools" "$LINENO" 5 fi # These three variables are undocumented and unsupported, @@ -1775,16 +2144,6 @@ -EM8300_MAJOR=0 -EM8300_MINOR=16 -EM8300_SUB=4 -#EM8300_PRE=".cvs" -TAR_NAME="em8300-"$EM8300_MAJOR.$EM8300_MINOR.$EM8300_SUB$EM8300_PRE - - - - - ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -1793,10 +2152,10 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_CC+set}" = set; then : + $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. @@ -1806,25 +2165,25 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - { echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi @@ -1833,10 +2192,10 @@ ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_ac_ct_CC+set}" = set; then : + $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. @@ -1846,25 +2205,25 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then - { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 +$as_echo "$ac_ct_CC" >&6; } else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi if test "x$ac_ct_CC" = x; then @@ -1872,12 +2231,8 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools -whose name does not start with the host triplet. If you think this -configuration is useful to you, please write to autoconf@gnu.org." >&5 -echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools -whose name does not start with the host triplet. If you think this -configuration is useful to you, please write to autoconf@gnu.org." >&2;} +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC @@ -1890,10 +2245,10 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_CC+set}" = set; then : + $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. @@ -1903,25 +2258,25 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - { echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi @@ -1930,10 +2285,10 @@ if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_CC+set}" = set; then : + $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. @@ -1944,18 +2299,18 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS if test $ac_prog_rejected = yes; then @@ -1974,11 +2329,11 @@ fi CC=$ac_cv_prog_CC if test -n "$CC"; then - { echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi @@ -1989,10 +2344,10 @@ do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_CC+set}" = set; then : + $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. @@ -2002,25 +2357,25 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - { echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi @@ -2033,10 +2388,10 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_ac_ct_CC+set}" = set; then : + $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. @@ -2046,25 +2401,25 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then - { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 +$as_echo "$ac_ct_CC" >&6; } else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi @@ -2076,12 +2431,8 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools -whose name does not start with the host triplet. If you think this -configuration is useful to you, please write to autoconf@gnu.org." >&5 -echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools -whose name does not start with the host triplet. If you think this -configuration is useful to you, please write to autoconf@gnu.org." >&2;} +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC @@ -2091,51 +2442,37 @@ fi -test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&5 -echo "$as_me: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } +test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error "no acceptable C compiler found in \$PATH +See \`config.log' for more details." "$LINENO" 5; } # Provide some information about the compiler. -echo "$as_me:$LINENO: checking for C compiler version" >&5 -ac_compiler=`set X $ac_compile; echo $2` -{ (ac_try="$ac_compiler --version >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compiler --version >&5") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (ac_try="$ac_compiler -v >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compiler -v >&5") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (ac_try="$ac_compiler -V >&5" +$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 +set X $ac_compile +ac_compiler=$2 +for ac_option in --version -v -V -qversion; do + { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compiler -V >&5") 2>&5 +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } + if test -s conftest.err; then + sed '10a\ +... rest of stderr output deleted ... + 10q' conftest.err >conftest.er1 + cat conftest.er1 >&5 + fi + rm -f conftest.er1 conftest.err + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +done -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -2147,42 +2484,38 @@ } _ACEOF ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files a.out a.exe b.out" +ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext. -{ echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 -echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6; } -ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` -# -# List of possible output files, starting from the most likely. -# The algorithm is not robust to junk in `.', hence go to wildcards (a.*) -# only as a last resort. b.out is created by i960 compilers. -ac_files='a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out' -# -# The IRIX 6 linker writes into existing files which may not be -# executable, retaining their permissions. Remove them first so a -# subsequent execution test works. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 +$as_echo_n "checking whether the C compiler works... " >&6; } +ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` + +# The possible output files: +ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" + ac_rmfiles= for ac_file in $ac_files do case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;; + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; * ) ac_rmfiles="$ac_rmfiles $ac_file";; esac done rm -f $ac_rmfiles -if { (ac_try="$ac_link_default" +if { { ac_try="$ac_link_default" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 (eval "$ac_link_default") 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. # So ignore a value of `no', otherwise this would lead to `EXEEXT = no' # in a Makefile. We should not override ac_cv_exeext if it was cached, @@ -2192,14 +2525,14 @@ do test -f "$ac_file" || continue case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; [ab].out ) # We found the default executable, but exeext='' is most # certainly right. break;; *.* ) - if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; + if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; then :; else ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` fi @@ -2218,78 +2551,42 @@ else ac_file='' fi - -{ echo "$as_me:$LINENO: result: $ac_file" >&5 -echo "${ECHO_T}$ac_file" >&6; } -if test -z "$ac_file"; then - echo "$as_me: failed program was:" >&5 +if test -z "$ac_file"; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +$as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -{ { echo "$as_me:$LINENO: error: C compiler cannot create executables -See \`config.log' for more details." >&5 -echo "$as_me: error: C compiler cannot create executables -See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } -fi - +{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ as_fn_set_status 77 +as_fn_error "C compiler cannot create executables +See \`config.log' for more details." "$LINENO" 5; }; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 +$as_echo_n "checking for C compiler default output file name... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 +$as_echo "$ac_file" >&6; } ac_exeext=$ac_cv_exeext -# Check that the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -{ echo "$as_me:$LINENO: checking whether the C compiler works" >&5 -echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6; } -# FIXME: These cross compiler hacks should be removed for Autoconf 3.0 -# If not cross compiling, check that we can run a simple program. -if test "$cross_compiling" != yes; then - if { ac_try='./$ac_file' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cross_compiling=no - else - if test "$cross_compiling" = maybe; then - cross_compiling=yes - else - { { echo "$as_me:$LINENO: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } - fi - fi -fi -{ echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6; } - -rm -f a.out a.exe conftest$ac_cv_exeext b.out +rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out ac_clean_files=$ac_clean_files_save -# Check that the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -{ echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 -echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6; } -{ echo "$as_me:$LINENO: result: $cross_compiling" >&5 -echo "${ECHO_T}$cross_compiling" >&6; } - -{ echo "$as_me:$LINENO: checking for suffix of executables" >&5 -echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6; } -if { (ac_try="$ac_link" +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 +$as_echo_n "checking for suffix of executables... " >&6; } +if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : # If both `conftest.exe' and `conftest' are `present' (well, observable) # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will # work properly (i.e., refer to `conftest.exe'), while it won't with @@ -2297,37 +2594,90 @@ for ac_file in conftest.exe conftest conftest.*; do test -f "$ac_file" || continue case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;; + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` break;; * ) break;; esac done else - { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -rm -f conftest$ac_cv_exeext -{ echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 -echo "${ECHO_T}$ac_cv_exeext" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error "cannot compute suffix of executables: cannot compile and link +See \`config.log' for more details." "$LINENO" 5; } +fi +rm -f conftest conftest$ac_cv_exeext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 +$as_echo "$ac_cv_exeext" >&6; } rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT -{ echo "$as_me:$LINENO: checking for suffix of object files" >&5 -echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6; } -if test "${ac_cv_objext+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +FILE *f = fopen ("conftest.out", "w"); + return ferror (f) || fclose (f) != 0; + + ; + return 0; +} _ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +ac_clean_files="$ac_clean_files conftest.out" +# Check that the compiler produces executables we can run. If not, either +# the compiler is broken, or we cross compile. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 +$as_echo_n "checking whether we are cross compiling... " >&6; } +if test "$cross_compiling" != yes; then + { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + if { ac_try='./conftest$ac_cv_exeext' + { { case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then + cross_compiling=no + else + if test "$cross_compiling" = maybe; then + cross_compiling=yes + else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error "cannot run C compiled programs. +If you meant to cross compile, use \`--host'. +See \`config.log' for more details." "$LINENO" 5; } + fi + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 +$as_echo "$cross_compiling" >&6; } + +rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out +ac_clean_files=$ac_clean_files_save +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 +$as_echo_n "checking for suffix of object files... " >&6; } +if test "${ac_cv_objext+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -2339,51 +2689,46 @@ } _ACEOF rm -f conftest.o conftest.obj -if { (ac_try="$ac_compile" +if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>&5 ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : for ac_file in conftest.o conftest.obj conftest.*; do test -f "$ac_file" || continue; case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf ) ;; + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` break;; esac done else - echo "$as_me: failed program was:" >&5 + $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } +{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error "cannot compute suffix of object files: cannot compile +See \`config.log' for more details." "$LINENO" 5; } fi - rm -f conftest.$ac_cv_objext conftest.$ac_ext fi -{ echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 -echo "${ECHO_T}$ac_cv_objext" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 +$as_echo "$ac_cv_objext" >&6; } OBJEXT=$ac_cv_objext ac_objext=$OBJEXT -{ echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 -echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6; } -if test "${ac_cv_c_compiler_gnu+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 +$as_echo_n "checking whether we are using the GNU C compiler... " >&6; } +if test "${ac_cv_c_compiler_gnu+set}" = set; then : + $as_echo_n "(cached) " >&6 else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -2397,54 +2742,34 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_c_try_compile "$LINENO"; then : ac_compiler_gnu=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_compiler_gnu=no + ac_compiler_gnu=no fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi -{ echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 -echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6; } -GCC=`test $ac_compiler_gnu = yes && echo yes` +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 +$as_echo "$ac_cv_c_compiler_gnu" >&6; } +if test $ac_compiler_gnu = yes; then + GCC=yes +else + GCC= +fi ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS -{ echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 -echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6; } -if test "${ac_cv_prog_cc_g+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 +$as_echo_n "checking whether $CC accepts -g... " >&6; } +if test "${ac_cv_prog_cc_g+set}" = set; then : + $as_echo_n "(cached) " >&6 else ac_save_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes ac_cv_prog_cc_g=no CFLAGS="-g" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -2455,34 +2780,11 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - CFLAGS="" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + CFLAGS="" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -2493,35 +2795,12 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_compile "$LINENO"; then : - ac_c_werror_flag=$ac_save_c_werror_flag +else + ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -2532,42 +2811,18 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag fi -{ echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_g" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 +$as_echo "$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then @@ -2583,18 +2838,14 @@ CFLAGS= fi fi -{ echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5 -echo $ECHO_N "checking for $CC option to accept ISO C89... $ECHO_C" >&6; } -if test "${ac_cv_prog_cc_c89+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 +$as_echo_n "checking for $CC option to accept ISO C89... " >&6; } +if test "${ac_cv_prog_cc_c89+set}" = set; then : + $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no ac_save_CC=$CC -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -2651,31 +2902,9 @@ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" - rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then + if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_c89=$ac_arg -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - fi - rm -f core conftest.err conftest.$ac_objext test "x$ac_cv_prog_cc_c89" != "xno" && break done @@ -2686,17 +2915,19 @@ # AC_CACHE_VAL case "x$ac_cv_prog_cc_c89" in x) - { echo "$as_me:$LINENO: result: none needed" >&5 -echo "${ECHO_T}none needed" >&6; } ;; + { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 +$as_echo "none needed" >&6; } ;; xno) - { echo "$as_me:$LINENO: result: unsupported" >&5 -echo "${ECHO_T}unsupported" >&6; } ;; + { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 +$as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" - { echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_c89" >&6; } ;; + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 +$as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac +if test "x$ac_cv_prog_cc_c89" != xno; then : +fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -2705,7 +2936,8 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu -am__api_version="1.9" +am__api_version='1.11' + # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or # incompatible versions: @@ -2719,22 +2951,23 @@ # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # OS/2's system install, which has a completely different semantic # ./install, which can be erroneously created by make from ./install.sh. -{ echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 -echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6; } +# Reject install programs that cannot install multiple files. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 +$as_echo_n "checking for a BSD-compatible install... " >&6; } if test -z "$INSTALL"; then -if test "${ac_cv_path_install+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +if test "${ac_cv_path_install+set}" = set; then : + $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - # Account for people who put trailing slashes in PATH elements. -case $as_dir/ in - ./ | .// | /cC/* | \ + # Account for people who put trailing slashes in PATH elements. +case $as_dir/ in #(( + ./ | .// | /[cC]/* | \ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ - ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \ + ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ /usr/ucb/* ) ;; *) # OSF1 and SCO ODT 3.0 have their own names for install. @@ -2752,17 +2985,29 @@ # program-specific install script used by HP pwplus--don't use. : else - ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" - break 3 + rm -rf conftest.one conftest.two conftest.dir + echo one > conftest.one + echo two > conftest.two + mkdir conftest.dir + if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && + test -s conftest.one && test -s conftest.two && + test -s conftest.dir/conftest.one && + test -s conftest.dir/conftest.two + then + ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" + break 3 + fi fi fi done done ;; esac -done + + done IFS=$as_save_IFS +rm -rf conftest.one conftest.two conftest.dir fi if test "${ac_cv_path_install+set}" = set; then @@ -2775,8 +3020,8 @@ INSTALL=$ac_install_sh fi fi -{ echo "$as_me:$LINENO: result: $INSTALL" >&5 -echo "${ECHO_T}$INSTALL" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 +$as_echo "$INSTALL" >&6; } # Use test -z because SunOS4 sh mishandles braces in ${var-val}. # It thinks the first close brace ends the variable substitution. @@ -2786,118 +3031,253 @@ test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' -{ echo "$as_me:$LINENO: checking whether build environment is sane" >&5 -echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 +$as_echo_n "checking whether build environment is sane... " >&6; } # Just in case sleep 1 echo timestamp > conftest.file +# Reject unsafe characters in $srcdir or the absolute working directory +# name. Accept space and tab only in the latter. +am_lf=' +' +case `pwd` in + *[\\\"\#\$\&\'\`$am_lf]*) + as_fn_error "unsafe absolute working directory name" "$LINENO" 5;; +esac +case $srcdir in + *[\\\"\#\$\&\'\`$am_lf\ \ ]*) + as_fn_error "unsafe srcdir value: \`$srcdir'" "$LINENO" 5;; +esac + # Do `set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( - set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null` + set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` if test "$*" = "X"; then # -L didn't work. - set X `ls -t $srcdir/configure conftest.file` + set X `ls -t "$srcdir/configure" conftest.file` fi rm -f conftest.file if test "$*" != "X $srcdir/configure conftest.file" \ && test "$*" != "X conftest.file $srcdir/configure"; then - # If neither matched, then we have a broken ls. This can happen - # if, for instance, CONFIG_SHELL is bash and it inherits a - # broken ls alias from the environment. This has actually - # happened. Such a system could not be considered "sane". - { { echo "$as_me:$LINENO: error: ls -t appears to fail. Make sure there is not a broken -alias in your environment" >&5 -echo "$as_me: error: ls -t appears to fail. Make sure there is not a broken -alias in your environment" >&2;} - { (exit 1); exit 1; }; } - fi + # If neither matched, then we have a broken ls. This can happen + # if, for instance, CONFIG_SHELL is bash and it inherits a + # broken ls alias from the environment. This has actually + # happened. Such a system could not be considered "sane". + as_fn_error "ls -t appears to fail. Make sure there is not a broken +alias in your environment" "$LINENO" 5 + fi + + test "$2" = conftest.file + ) +then + # Ok. + : +else + as_fn_error "newly created file is older than distributed files! +Check your system clock" "$LINENO" 5 +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +test "$program_prefix" != NONE && + program_transform_name="s&^&$program_prefix&;$program_transform_name" +# Use a double $ so make ignores it. +test "$program_suffix" != NONE && + program_transform_name="s&\$&$program_suffix&;$program_transform_name" +# Double any \ or $. +# By default was `s,x,x', remove it if useless. +ac_script='s/[\\$]/&&/g;s/;s,x,x,$//' +program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"` + +# expand $ac_aux_dir to an absolute path +am_aux_dir=`cd $ac_aux_dir && pwd` + +if test x"${MISSING+set}" != xset; then + case $am_aux_dir in + *\ * | *\ *) + MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; + *) + MISSING="\${SHELL} $am_aux_dir/missing" ;; + esac +fi +# Use eval to expand $SHELL +if eval "$MISSING --run true"; then + am_missing_run="$MISSING --run " +else + am_missing_run= + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5 +$as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;} +fi + +if test x"${install_sh}" != xset; then + case $am_aux_dir in + *\ * | *\ *) + install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; + *) + install_sh="\${SHELL} $am_aux_dir/install-sh" + esac +fi + +# Installed binaries are usually stripped using `strip' when the user +# run `make install-strip'. However `strip' might not be the right +# tool to use in cross-compilation environments, therefore Automake +# will honor the `STRIP' environment variable to overrule this program. +if test "$cross_compiling" != no; then + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. +set dummy ${ac_tool_prefix}strip; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_STRIP+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$STRIP"; then + ac_cv_prog_STRIP="$STRIP" # Let the user override the test. +else +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_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_STRIP="${ac_tool_prefix}strip" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +STRIP=$ac_cv_prog_STRIP +if test -n "$STRIP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 +$as_echo "$STRIP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_STRIP"; then + ac_ct_STRIP=$STRIP + # Extract the first word of "strip", so it can be a program name with args. +set dummy strip; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_STRIP"; then + ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. +else +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_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_STRIP="strip" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS - test "$2" = conftest.file - ) -then - # Ok. - : +fi +fi +ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP +if test -n "$ac_ct_STRIP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 +$as_echo "$ac_ct_STRIP" >&6; } else - { { echo "$as_me:$LINENO: error: newly created file is older than distributed files! -Check your system clock" >&5 -echo "$as_me: error: newly created file is older than distributed files! -Check your system clock" >&2;} - { (exit 1); exit 1; }; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi -{ echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6; } -test "$program_prefix" != NONE && - program_transform_name="s&^&$program_prefix&;$program_transform_name" -# Use a double $ so make ignores it. -test "$program_suffix" != NONE && - program_transform_name="s&\$&$program_suffix&;$program_transform_name" -# Double any \ or $. echo might interpret backslashes. -# By default was `s,x,x', remove it if useless. -cat <<\_ACEOF >conftest.sed -s/[\\$]/&&/g;s/;s,x,x,$// -_ACEOF -program_transform_name=`echo $program_transform_name | sed -f conftest.sed` -rm -f conftest.sed - -# expand $ac_aux_dir to an absolute path -am_aux_dir=`cd $ac_aux_dir && pwd` -test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing" -# Use eval to expand $SHELL -if eval "$MISSING --run true"; then - am_missing_run="$MISSING --run " + if test "x$ac_ct_STRIP" = x; then + STRIP=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + STRIP=$ac_ct_STRIP + fi else - am_missing_run= - { echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5 -echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;} + STRIP="$ac_cv_prog_STRIP" fi -if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then - # We used to keeping the `.' as first argument, in order to - # allow $(mkdir_p) to be used without argument. As in - # $(mkdir_p) $(somedir) - # where $(somedir) is conditionally defined. However this is wrong - # for two reasons: - # 1. if the package is installed by a user who cannot write `.' - # make install will fail, - # 2. the above comment should most certainly read - # $(mkdir_p) $(DESTDIR)$(somedir) - # so it does not work when $(somedir) is undefined and - # $(DESTDIR) is not. - # To support the latter case, we have to write - # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir), - # so the `.' trick is pointless. - mkdir_p='mkdir -p --' -else - # On NextStep and OpenStep, the `mkdir' command does not - # recognize any option. It will interpret all options as - # directories to create, and then abort because `.' already - # exists. - for d in ./-p ./--version; - do - test -d $d && rmdir $d +fi +INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5 +$as_echo_n "checking for a thread-safe mkdir -p... " >&6; } +if test -z "$MKDIR_P"; then + if test "${ac_cv_path_mkdir+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in mkdir gmkdir; do + for ac_exec_ext in '' $ac_executable_extensions; do + { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue + case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #( + 'mkdir (GNU coreutils) '* | \ + 'mkdir (coreutils) '* | \ + 'mkdir (fileutils) '4.1*) + ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext + break 3;; + esac + done + done done - # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists. - if test -f "$ac_aux_dir/mkinstalldirs"; then - mkdir_p='$(mkinstalldirs)' +IFS=$as_save_IFS + +fi + + test -d ./--version && rmdir ./--version + if test "${ac_cv_path_mkdir+set}" = set; then + MKDIR_P="$ac_cv_path_mkdir -p" else - mkdir_p='$(install_sh) -d' + # As a last resort, use the slow shell script. Don't cache a + # value for MKDIR_P within a source directory, because that will + # break other packages using the cache if that directory is + # removed, or if the value is a relative name. + MKDIR_P="$ac_install_sh -d" fi fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 +$as_echo "$MKDIR_P" >&6; } + +mkdir_p="$MKDIR_P" +case $mkdir_p in + [\\/$]* | ?:[\\/]*) ;; + */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;; +esac for ac_prog in gawk mawk nawk awk do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_AWK+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_AWK+set}" = set; then : + $as_echo_n "(cached) " >&6 else if test -n "$AWK"; then ac_cv_prog_AWK="$AWK" # Let the user override the test. @@ -2907,36 +3287,37 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_AWK="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi AWK=$ac_cv_prog_AWK if test -n "$AWK"; then - { echo "$as_me:$LINENO: result: $AWK" >&5 -echo "${ECHO_T}$AWK" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 +$as_echo "$AWK" >&6; } else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi test -n "$AWK" && break done -{ echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 -echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6; } -set x ${MAKE-make}; ac_make=`echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` -if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 +$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } +set x ${MAKE-make} +ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` +if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then : + $as_echo_n "(cached) " >&6 else cat >conftest.make <<\_ACEOF SHELL = /bin/sh @@ -2953,12 +3334,12 @@ rm -f conftest.make fi if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then - { echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } SET_MAKE= else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } SET_MAKE="MAKE=${MAKE-make}" fi @@ -2979,44 +3360,44 @@ am_make=${MAKE-make} cat > confinc << 'END' am__doit: - @echo done + @echo this is the am__doit target .PHONY: am__doit END # If we don't find an include directive, just comment out the code. -{ echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5 -echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5 +$as_echo_n "checking for style of include used by $am_make... " >&6; } am__include="#" am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf -# We grep out `Entering directory' and `Leaving directory' -# messages which can occur if `w' ends up in MAKEFLAGS. -# In particular we don't look at `^make:' because GNU make might -# be invoked under some other name (usually "gmake"), in which -# case it prints its new name instead of `make'. -if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then - am__include=include - am__quote= - _am_result=GNU -fi +# Ignore all kinds of additional output from `make'. +case `$am_make -s -f confmf 2> /dev/null` in #( +*the\ am__doit\ target*) + am__include=include + am__quote= + _am_result=GNU + ;; +esac # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf - if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then - am__include=.include - am__quote="\"" - _am_result=BSD - fi + case `$am_make -s -f confmf 2> /dev/null` in #( + *the\ am__doit\ target*) + am__include=.include + am__quote="\"" + _am_result=BSD + ;; + esac fi -{ echo "$as_me:$LINENO: result: $_am_result" >&5 -echo "${ECHO_T}$_am_result" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5 +$as_echo "$_am_result" >&6; } rm -f confinc confmf # Check whether --enable-dependency-tracking was given. -if test "${enable_dependency_tracking+set}" = set; then +if test "${enable_dependency_tracking+set}" = set; then : enableval=$enable_dependency_tracking; fi @@ -3024,9 +3405,7 @@ am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' fi - - -if test "x$enable_dependency_tracking" != xno; then + if test "x$enable_dependency_tracking" != xno; then AMDEP_TRUE= AMDEP_FALSE='#' else @@ -3035,13 +3414,14 @@ fi - -# test to see if srcdir already configured -if test "`cd $srcdir && pwd`" != "`pwd`" && - test -f $srcdir/config.status; then - { { echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5 -echo "$as_me: error: source directory already configured; run \"make distclean\" there first" >&2;} - { (exit 1); exit 1; }; } +if test "`cd $srcdir && pwd`" != "`pwd`"; then + # Use -I$(srcdir) only when $(srcdir) != ., so that make's output + # is not polluted with repeated "-I." + am__isrc=' -I$(srcdir)' + # test to see if srcdir already configured + if test -f $srcdir/config.status; then + as_fn_error "source directory already configured; run \"make distclean\" there first" "$LINENO" 5 + fi fi # test whether we have cygpath @@ -3055,8 +3435,8 @@ # Define the identity of the package. - PACKAGE="em8300" - VERSION=$EM8300_MAJOR.$EM8300_MINOR.$EM8300_SUB$EM8300_PRE + PACKAGE='em8300' + VERSION='0.18.0-hg' cat >>confdefs.h <<_ACEOF @@ -3084,112 +3464,6 @@ MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} -install_sh=${install_sh-"$am_aux_dir/install-sh"} - -# Installed binaries are usually stripped using `strip' when the user -# run `make install-strip'. However `strip' might not be the right -# tool to use in cross-compilation environments, therefore Automake -# will honor the `STRIP' environment variable to overrule this program. -if test "$cross_compiling" != no; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. -set dummy ${ac_tool_prefix}strip; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_STRIP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$STRIP"; then - ac_cv_prog_STRIP="$STRIP" # Let the user override the test. -else -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_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_STRIP="${ac_tool_prefix}strip" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - -fi -fi -STRIP=$ac_cv_prog_STRIP -if test -n "$STRIP"; then - { echo "$as_me:$LINENO: result: $STRIP" >&5 -echo "${ECHO_T}$STRIP" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_STRIP"; then - ac_ct_STRIP=$STRIP - # Extract the first word of "strip", so it can be a program name with args. -set dummy strip; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_STRIP"; then - ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. -else -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_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_ac_ct_STRIP="strip" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - -fi -fi -ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP -if test -n "$ac_ct_STRIP"; then - { echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5 -echo "${ECHO_T}$ac_ct_STRIP" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi - - if test "x$ac_ct_STRIP" = x; then - STRIP=":" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools -whose name does not start with the host triplet. If you think this -configuration is useful to you, please write to autoconf@gnu.org." >&5 -echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools -whose name does not start with the host triplet. If you think this -configuration is useful to you, please write to autoconf@gnu.org." >&2;} -ac_tool_warned=yes ;; -esac - STRIP=$ac_ct_STRIP - fi -else - STRIP="$ac_cv_prog_STRIP" -fi - -fi -INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s" - # We need awk for the "check" target. The system "awk" is bad on # some platforms. # Always define AMTAR for backward compatibility. @@ -3203,10 +3477,10 @@ depcc="$CC" am_compiler_list= -{ echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 -echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6; } -if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 +$as_echo_n "checking dependency style of $depcc... " >&6; } +if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then : + $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up @@ -3231,6 +3505,11 @@ if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi + am__universal=false + case " $depcc " in #( + *\ -arch\ *\ -arch\ *) am__universal=true ;; + esac + for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and @@ -3248,7 +3527,17 @@ done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf + # We check with `-c' and `-o' for the sake of the "dashmstdout" + # mode. It turns out that the SunPro C++ compiler does not properly + # handle `-M -o', and we need to detect this. Also, some Intel + # versions had trouble with output in subdirs + am__obj=sub/conftest.${OBJEXT-o} + am__minus_obj="-o $am__obj" case $depmode in + gcc) + # This depmode causes a compiler race in universal mode. + test "$am__universal" = false || continue + ;; nosideeffect) # after this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested @@ -3258,18 +3547,23 @@ break fi ;; + msvisualcpp | msvcmsys) + # This compiler won't grok `-c -o', but also, the minuso test has + # not run yet. These depmodes are late enough in the game, and + # so weak that their functioning should not be impacted. + am__obj=conftest.${OBJEXT-o} + am__minus_obj= + ;; none) break ;; esac - # We check with `-c' and `-o' for the sake of the "dashmstdout" - # mode. It turns out that the SunPro C++ compiler does not properly - # handle `-M -o', and we need to detect this. if depmode=$depmode \ - source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \ + source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ - $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ + $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && + grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && - grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && + grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message @@ -3293,13 +3587,11 @@ fi fi -{ echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5 -echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 +$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type - - -if + if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then am__fastdepCC_TRUE= @@ -3314,35 +3606,27 @@ # Make sure we can run config.sub. $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || - { { echo "$as_me:$LINENO: error: cannot run $SHELL $ac_aux_dir/config.sub" >&5 -echo "$as_me: error: cannot run $SHELL $ac_aux_dir/config.sub" >&2;} - { (exit 1); exit 1; }; } - -{ echo "$as_me:$LINENO: checking build system type" >&5 -echo $ECHO_N "checking build system type... $ECHO_C" >&6; } -if test "${ac_cv_build+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + as_fn_error "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 +$as_echo_n "checking build system type... " >&6; } +if test "${ac_cv_build+set}" = set; then : + $as_echo_n "(cached) " >&6 else ac_build_alias=$build_alias test "x$ac_build_alias" = x && ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` test "x$ac_build_alias" = x && - { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5 -echo "$as_me: error: cannot guess build type; you must specify one" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "cannot guess build type; you must specify one" "$LINENO" 5 ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || - { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&5 -echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 fi -{ echo "$as_me:$LINENO: result: $ac_cv_build" >&5 -echo "${ECHO_T}$ac_cv_build" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 +$as_echo "$ac_cv_build" >&6; } case $ac_cv_build in *-*-*) ;; -*) { { echo "$as_me:$LINENO: error: invalid value of canonical build" >&5 -echo "$as_me: error: invalid value of canonical build" >&2;} - { (exit 1); exit 1; }; };; +*) as_fn_error "invalid value of canonical build" "$LINENO" 5;; esac build=$ac_cv_build ac_save_IFS=$IFS; IFS='-' @@ -3358,155 +3642,97 @@ case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac -{ echo "$as_me:$LINENO: checking host system type" >&5 -echo $ECHO_N "checking host system type... $ECHO_C" >&6; } -if test "${ac_cv_host+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 +$as_echo_n "checking host system type... " >&6; } +if test "${ac_cv_host+set}" = set; then : + $as_echo_n "(cached) " >&6 else if test "x$host_alias" = x; then ac_cv_host=$ac_cv_build else ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || - { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&5 -echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 fi fi -{ echo "$as_me:$LINENO: result: $ac_cv_host" >&5 -echo "${ECHO_T}$ac_cv_host" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 +$as_echo "$ac_cv_host" >&6; } case $ac_cv_host in *-*-*) ;; -*) { { echo "$as_me:$LINENO: error: invalid value of canonical host" >&5 -echo "$as_me: error: invalid value of canonical host" >&2;} - { (exit 1); exit 1; }; };; +*) as_fn_error "invalid value of canonical host" "$LINENO" 5;; esac host=$ac_cv_host ac_save_IFS=$IFS; IFS='-' set x $ac_cv_host shift -host_cpu=$1 -host_vendor=$2 -shift; shift -# Remember, the first character of IFS is used to create $*, -# except with old shells: -host_os=$* -IFS=$ac_save_IFS -case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac - - -ac_config_headers="$ac_config_headers include/config.h" - - -{ echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 -echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6; } -set x ${MAKE-make}; ac_make=`echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` -if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.make <<\_ACEOF -SHELL = /bin/sh -all: - @echo '@@@%%%=$(MAKE)=@@@%%%' -_ACEOF -# GNU make sometimes prints "make[1]: Entering...", which would confuse us. -case `${MAKE-make} -f conftest.make 2>/dev/null` in - *@@@%%%=?*=@@@%%%*) - eval ac_cv_prog_make_${ac_make}_set=yes;; - *) - eval ac_cv_prog_make_${ac_make}_set=no;; -esac -rm -f conftest.make -fi -if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then - { echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6; } - SET_MAKE= -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } - SET_MAKE="MAKE=${MAKE-make}" -fi - -# Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AmigaOS /C/install, which installs bootblocks on floppy discs -# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag -# AFS /usr/afsws/bin/install, which mishandles nonexistent args -# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# OS/2's system install, which has a completely different semantic -# ./install, which can be erroneously created by make from ./install.sh. -{ echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 -echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6; } -if test -z "$INSTALL"; then -if test "${ac_cv_path_install+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - # Account for people who put trailing slashes in PATH elements. -case $as_dir/ in - ./ | .// | /cC/* | \ - /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ - ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \ - /usr/ucb/* ) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then - if test $ac_prog = install && - grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - elif test $ac_prog = install && - grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # program-specific install script used by HP pwplus--don't use. - : - else - ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" - break 3 - fi - fi - done - done - ;; -esac -done -IFS=$as_save_IFS +host_cpu=$1 +host_vendor=$2 +shift; shift +# Remember, the first character of IFS is used to create $*, +# except with old shells: +host_os=$* +IFS=$ac_save_IFS +case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac +ac_config_headers="$ac_config_headers include/config.h" + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5 +$as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; } + # Check whether --enable-maintainer-mode was given. +if test "${enable_maintainer_mode+set}" = set; then : + enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval +else + USE_MAINTAINER_MODE=no fi - if test "${ac_cv_path_install+set}" = set; then - INSTALL=$ac_cv_path_install - else - # As a last resort, use the slow shell script. Don't cache a - # value for INSTALL within a source directory, because that will - # break other packages using the cache if that directory is - # removed, or if the value is a relative name. - INSTALL=$ac_install_sh - fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5 +$as_echo "$USE_MAINTAINER_MODE" >&6; } + if test $USE_MAINTAINER_MODE = yes; then + MAINTAINER_MODE_TRUE= + MAINTAINER_MODE_FALSE='#' +else + MAINTAINER_MODE_TRUE='#' + MAINTAINER_MODE_FALSE= fi -{ echo "$as_me:$LINENO: result: $INSTALL" >&5 -echo "${ECHO_T}$INSTALL" >&6; } -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' + MAINT=$MAINTAINER_MODE_TRUE -test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' -test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 +$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } +set x ${MAKE-make} +ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` +if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then : + $as_echo_n "(cached) " >&6 +else + cat >conftest.make <<\_ACEOF +SHELL = /bin/sh +all: + @echo '@@@%%%=$(MAKE)=@@@%%%' +_ACEOF +# GNU make sometimes prints "make[1]: Entering...", which would confuse us. +case `${MAKE-make} -f conftest.make 2>/dev/null` in + *@@@%%%=?*=@@@%%%*) + eval ac_cv_prog_make_${ac_make}_set=yes;; + *) + eval ac_cv_prog_make_${ac_make}_set=no;; +esac +rm -f conftest.make +fi +if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + SET_MAKE= +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + SET_MAKE="MAKE=${MAKE-make}" +fi + @@ -3515,15 +3741,15 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 -echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 +$as_echo_n "checking how to run the C preprocessor... " >&6; } # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then - if test "${ac_cv_prog_CPP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + if test "${ac_cv_prog_CPP+set}" = set; then : + $as_echo_n "(cached) " >&6 else # Double quotes because CPP needs to be expanded for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" @@ -3537,11 +3763,7 @@ # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include @@ -3550,76 +3772,34 @@ #endif Syntax error _ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_cpp "$LINENO"; then : +else # Broken: fails on valid input. continue fi - rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then +if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - # Passes both tests. ac_preproc_ok=: break fi - rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then +if $ac_preproc_ok; then : break fi @@ -3631,8 +3811,8 @@ else ac_cv_prog_CPP=$CPP fi -{ echo "$as_me:$LINENO: result: $CPP" >&5 -echo "${ECHO_T}$CPP" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 +$as_echo "$CPP" >&6; } ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do @@ -3642,11 +3822,7 @@ # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include @@ -3655,83 +3831,40 @@ #endif Syntax error _ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_cpp "$LINENO"; then : +else # Broken: fails on valid input. continue fi - rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then +if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - # Passes both tests. ac_preproc_ok=: break fi - rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - : +if $ac_preproc_ok; then : + else - { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&5 -echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error "C preprocessor \"$CPP\" fails sanity check +See \`config.log' for more details." "$LINENO" 5; } fi ac_ext=c @@ -3741,45 +3874,40 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5 -echo $ECHO_N "checking for grep that handles long lines and -e... $ECHO_C" >&6; } -if test "${ac_cv_path_GREP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - # Extract the first word of "grep ggrep" to use in msg output -if test -z "$GREP"; then -set dummy grep ggrep; ac_prog_name=$2 -if test "${ac_cv_path_GREP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 +$as_echo_n "checking for grep that handles long lines and -e... " >&6; } +if test "${ac_cv_path_GREP+set}" = set; then : + $as_echo_n "(cached) " >&6 else + if test -z "$GREP"; then ac_path_GREP_found=false -# Loop through the user's path and test for each of PROGNAME-LIST -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_prog in grep ggrep; do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" - { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue - # Check for GNU ac_path_GREP and select it if it is found. + for ac_prog in grep ggrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" + { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue +# Check for GNU ac_path_GREP and select it if it is found. # Check for GNU $ac_path_GREP case `"$ac_path_GREP" --version 2>&1` in *GNU*) ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; *) ac_count=0 - echo $ECHO_N "0123456789$ECHO_C" >"conftest.in" + $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" - echo 'GREP' >> "conftest.nl" + $as_echo 'GREP' >> "conftest.nl" "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - ac_count=`expr $ac_count + 1` + as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_GREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_GREP="$ac_path_GREP" @@ -3791,77 +3919,61 @@ rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac - - $ac_path_GREP_found && break 3 + $ac_path_GREP_found && break 3 + done + done done -done - -done IFS=$as_save_IFS - - -fi - -GREP="$ac_cv_path_GREP" -if test -z "$GREP"; then - { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 -echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} - { (exit 1); exit 1; }; } -fi - + if test -z "$ac_cv_path_GREP"; then + as_fn_error "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + fi else ac_cv_path_GREP=$GREP fi - fi -{ echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5 -echo "${ECHO_T}$ac_cv_path_GREP" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 +$as_echo "$ac_cv_path_GREP" >&6; } GREP="$ac_cv_path_GREP" -{ echo "$as_me:$LINENO: checking for egrep" >&5 -echo $ECHO_N "checking for egrep... $ECHO_C" >&6; } -if test "${ac_cv_path_EGREP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 +$as_echo_n "checking for egrep... " >&6; } +if test "${ac_cv_path_EGREP+set}" = set; then : + $as_echo_n "(cached) " >&6 else if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 then ac_cv_path_EGREP="$GREP -E" else - # Extract the first word of "egrep" to use in msg output -if test -z "$EGREP"; then -set dummy egrep; ac_prog_name=$2 -if test "${ac_cv_path_EGREP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else + if test -z "$EGREP"; then ac_path_EGREP_found=false -# Loop through the user's path and test for each of PROGNAME-LIST -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_prog in egrep; do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" - { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue - # Check for GNU ac_path_EGREP and select it if it is found. + for ac_prog in egrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" + { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue +# Check for GNU ac_path_EGREP and select it if it is found. # Check for GNU $ac_path_EGREP case `"$ac_path_EGREP" --version 2>&1` in *GNU*) ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; *) ac_count=0 - echo $ECHO_N "0123456789$ECHO_C" >"conftest.in" + $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" - echo 'EGREP' >> "conftest.nl" + $as_echo 'EGREP' >> "conftest.nl" "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - ac_count=`expr $ac_count + 1` + as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_EGREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_EGREP="$ac_path_EGREP" @@ -3873,46 +3985,31 @@ rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac - - $ac_path_EGREP_found && break 3 + $ac_path_EGREP_found && break 3 + done + done done -done - -done IFS=$as_save_IFS - - -fi - -EGREP="$ac_cv_path_EGREP" -if test -z "$EGREP"; then - { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 -echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} - { (exit 1); exit 1; }; } -fi - + if test -z "$ac_cv_path_EGREP"; then + as_fn_error "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + fi else ac_cv_path_EGREP=$EGREP fi - fi fi -{ echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5 -echo "${ECHO_T}$ac_cv_path_EGREP" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 +$as_echo "$ac_cv_path_EGREP" >&6; } EGREP="$ac_cv_path_EGREP" -{ echo "$as_me:$LINENO: checking for ANSI C header files" >&5 -echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6; } -if test "${ac_cv_header_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 +$as_echo_n "checking for ANSI C header files... " >&6; } +if test "${ac_cv_header_stdc+set}" = set; then : + $as_echo_n "(cached) " >&6 else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -3927,47 +4024,23 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_c_try_compile "$LINENO"; then : ac_cv_header_stdc=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_header_stdc=no + ac_cv_header_stdc=no fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then - : + $EGREP "memchr" >/dev/null 2>&1; then : + else ac_cv_header_stdc=no fi @@ -3977,18 +4050,14 @@ if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then - : + $EGREP "free" >/dev/null 2>&1; then : + else ac_cv_header_stdc=no fi @@ -3998,14 +4067,10 @@ if test $ac_cv_header_stdc = yes; then # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then + if test "$cross_compiling" = yes; then : : else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -4032,256 +4097,51 @@ return 0; } _ACEOF -rm -f conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -ac_cv_header_stdc=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi - - -fi -fi -{ echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 -echo "${ECHO_T}$ac_cv_header_stdc" >&6; } -if test $ac_cv_header_stdc = yes; then - -cat >>confdefs.h <<\_ACEOF -#define STDC_HEADERS 1 -_ACEOF - -fi - -# On IRIX 5.3, sys/types and inttypes.h are conflicting. - - - - - - - - - -for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ - inttypes.h stdint.h unistd.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -{ echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default +if ac_fn_c_try_run "$LINENO"; then : -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - eval "$as_ac_Header=yes" else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - eval "$as_ac_Header=no" -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_cv_header_stdc=no fi -ac_res=`eval echo '${'$as_ac_Header'}'` - { echo "$as_me:$LINENO: result: $ac_res" >&5 -echo "${ECHO_T}$ac_res" >&6; } -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi -done - - - - - -for ac_header in fcntl.h sys/ioctl.h unistd.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - { echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -ac_res=`eval echo '${'$as_ac_Header'}'` - { echo "$as_me:$LINENO: result: $ac_res" >&5 -echo "${ECHO_T}$ac_res" >&6; } -else - # Is the header compilable? -{ echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_compiler=no fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6; } - -# Is the header present? -{ echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 +$as_echo "$ac_cv_header_stdc" >&6; } +if test $ac_cv_header_stdc = yes; then -rm -f conftest.err conftest.$ac_ext -{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6; } - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} +$as_echo "#define STDC_HEADERS 1" >>confdefs.h - ;; -esac -{ echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" fi -ac_res=`eval echo '${'$as_ac_Header'}'` - { echo "$as_me:$LINENO: result: $ac_res" >&5 -echo "${ECHO_T}$ac_res" >&6; } + +# On IRIX 5.3, sys/types and inttypes.h are conflicting. +for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ + inttypes.h stdint.h unistd.h +do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default +" +eval as_val=\$$as_ac_Header + if test "x$as_val" = x""yes; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then + +done + + +for ac_header in fcntl.h sys/ioctl.h unistd.h +do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" +eval as_val=\$$as_ac_Header + if test "x$as_val" = x""yes; then : cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 +#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi @@ -4289,16 +4149,12 @@ done -{ echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5 -echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6; } -if test "${ac_cv_c_const+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5 +$as_echo_n "checking for an ANSI C-conforming const... " >&6; } +if test "${ac_cv_c_const+set}" = set; then : + $as_echo_n "(cached) " >&6 else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -4358,55 +4214,29 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_c_try_compile "$LINENO"; then : ac_cv_c_const=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_c_const=no + ac_cv_c_const=no fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ echo "$as_me:$LINENO: result: $ac_cv_c_const" >&5 -echo "${ECHO_T}$ac_cv_c_const" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5 +$as_echo "$ac_cv_c_const" >&6; } if test $ac_cv_c_const = no; then -cat >>confdefs.h <<\_ACEOF -#define const -_ACEOF +$as_echo "#define const /**/" >>confdefs.h fi -{ echo "$as_me:$LINENO: checking for inline" >&5 -echo $ECHO_N "checking for inline... $ECHO_C" >&6; } -if test "${ac_cv_c_inline+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5 +$as_echo_n "checking for inline... " >&6; } +if test "${ac_cv_c_inline+set}" = set; then : + $as_echo_n "(cached) " >&6 else ac_cv_c_inline=no for ac_kw in inline __inline__ __inline; do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifndef __cplusplus typedef int foo_t; @@ -4415,39 +4245,16 @@ #endif _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_c_try_compile "$LINENO"; then : ac_cv_c_inline=$ac_kw -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext test "$ac_cv_c_inline" != no && break done fi -{ echo "$as_me:$LINENO: result: $ac_cv_c_inline" >&5 -echo "${ECHO_T}$ac_cv_c_inline" >&6; } - +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5 +$as_echo "$ac_cv_c_inline" >&6; } case $ac_cv_c_inline in inline | yes) ;; @@ -4464,61 +4271,9 @@ ;; esac -{ echo "$as_me:$LINENO: checking for off_t" >&5 -echo $ECHO_N "checking for off_t... $ECHO_C" >&6; } -if test "${ac_cv_type_off_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -typedef off_t ac__type_new_; -int -main () -{ -if ((ac__type_new_ *) 0) - return 0; -if (sizeof (ac__type_new_)) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_type_off_t=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_type_off_t=no -fi +ac_fn_c_check_type "$LINENO" "off_t" "ac_cv_type_off_t" "$ac_includes_default" +if test "x$ac_cv_type_off_t" = x""yes; then : -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ echo "$as_me:$LINENO: result: $ac_cv_type_off_t" >&5 -echo "${ECHO_T}$ac_cv_type_off_t" >&6; } -if test $ac_cv_type_off_t = yes; then - : else cat >>confdefs.h <<_ACEOF @@ -4527,61 +4282,9 @@ fi -{ echo "$as_me:$LINENO: checking for size_t" >&5 -echo $ECHO_N "checking for size_t... $ECHO_C" >&6; } -if test "${ac_cv_type_size_t+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -typedef size_t ac__type_new_; -int -main () -{ -if ((ac__type_new_ *) 0) - return 0; -if (sizeof (ac__type_new_)) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_type_size_t=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_type_size_t=no -fi +ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default" +if test "x$ac_cv_type_size_t" = x""yes; then : -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5 -echo "${ECHO_T}$ac_cv_type_size_t" >&6; } -if test $ac_cv_type_size_t = yes; then - : else cat >>confdefs.h <<_ACEOF @@ -4590,16 +4293,12 @@ fi -{ echo "$as_me:$LINENO: checking whether time.h and sys/time.h may both be included" >&5 -echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6; } -if test "${ac_cv_header_time+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether time.h and sys/time.h may both be included" >&5 +$as_echo_n "checking whether time.h and sys/time.h may both be included... " >&6; } +if test "${ac_cv_header_time+set}" = set; then : + $as_echo_n "(cached) " >&6 else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -4614,62 +4313,36 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_c_try_compile "$LINENO"; then : ac_cv_header_time=yes else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_header_time=no + ac_cv_header_time=no fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ echo "$as_me:$LINENO: result: $ac_cv_header_time" >&5 -echo "${ECHO_T}$ac_cv_header_time" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_time" >&5 +$as_echo "$ac_cv_header_time" >&6; } if test $ac_cv_header_time = yes; then -cat >>confdefs.h <<\_ACEOF -#define TIME_WITH_SYS_TIME 1 -_ACEOF +$as_echo "#define TIME_WITH_SYS_TIME 1" >>confdefs.h fi if test $ac_cv_c_compiler_gnu = yes; then - { echo "$as_me:$LINENO: checking whether $CC needs -traditional" >&5 -echo $ECHO_N "checking whether $CC needs -traditional... $ECHO_C" >&6; } -if test "${ac_cv_prog_gcc_traditional+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC needs -traditional" >&5 +$as_echo_n "checking whether $CC needs -traditional... " >&6; } +if test "${ac_cv_prog_gcc_traditional+set}" = set; then : + $as_echo_n "(cached) " >&6 else ac_pattern="Autoconf.*'x'" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include Autoconf TIOCGETP _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "$ac_pattern" >/dev/null 2>&1; then + $EGREP "$ac_pattern" >/dev/null 2>&1; then : ac_cv_prog_gcc_traditional=yes else ac_cv_prog_gcc_traditional=no @@ -4678,25 +4351,21 @@ if test $ac_cv_prog_gcc_traditional = no; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include Autoconf TCGETA _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "$ac_pattern" >/dev/null 2>&1; then + $EGREP "$ac_pattern" >/dev/null 2>&1; then : ac_cv_prog_gcc_traditional=yes fi rm -f conftest* fi fi -{ echo "$as_me:$LINENO: result: $ac_cv_prog_gcc_traditional" >&5 -echo "${ECHO_T}$ac_cv_prog_gcc_traditional" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_gcc_traditional" >&5 +$as_echo "$ac_cv_prog_gcc_traditional" >&6; } if test $ac_cv_prog_gcc_traditional = yes; then CC="$CC -traditional" fi @@ -4712,7 +4381,7 @@ DEBUG_CFLAGS="$GLOBAL_CFLAGS $CFLAGS $COMMON_CFLAGS -DDEBUG" # Check whether --enable-gtktest was given. -if test "${enable_gtktest+set}" = set; then +if test "${enable_gtktest+set}" = set; then : enableval=$enable_gtktest; else enable_gtktest=yes @@ -4733,10 +4402,10 @@ # Extract the first word of "pkg-config", so it can be a program name with args. set dummy pkg-config; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_path_PKG_CONFIG+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_path_PKG_CONFIG+set}" = set; then : + $as_echo_n "(cached) " >&6 else case $PKG_CONFIG in [\\/]* | ?:[\\/]*) @@ -4748,14 +4417,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no" @@ -4764,11 +4433,11 @@ fi PKG_CONFIG=$ac_cv_path_PKG_CONFIG if test -n "$PKG_CONFIG"; then - { echo "$as_me:$LINENO: result: $PKG_CONFIG" >&5 -echo "${ECHO_T}$PKG_CONFIG" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 +$as_echo "$PKG_CONFIG" >&6; } else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi @@ -4786,8 +4455,8 @@ fi min_gtk_version=2.0.0 - { echo "$as_me:$LINENO: checking for GTK+ - version >= $min_gtk_version" >&5 -echo $ECHO_N "checking for GTK+ - version >= $min_gtk_version... $ECHO_C" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GTK+ - version >= $min_gtk_version" >&5 +$as_echo_n "checking for GTK+ - version >= $min_gtk_version... " >&6; } if test x$PKG_CONFIG != xno ; then ## don't try to run the test against uninstalled libtool libs @@ -4818,14 +4487,10 @@ CFLAGS="$CFLAGS $GTK_CFLAGS" LIBS="$GTK_LIBS $LIBS" rm -f conf.gtktest - if test "$cross_compiling" = yes; then + if test "$cross_compiling" = yes; then : echo $ac_n "cross compiling; assumed OK... $ac_c" else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -4838,7 +4503,7 @@ int major, minor, micro; char *tmp_version; - system ("touch conf.gtktest"); + fclose (fopen ("conf.gtktest", "w")); /* HP/UX 9 (%@#!) writes to sscanf strings */ tmp_version = g_strdup("$min_gtk_version"); @@ -4900,50 +4565,26 @@ } _ACEOF -rm -f conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_run "$LINENO"; then : -( exit $ac_status ) -no_gtk=yes +else + no_gtk=yes fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi - CFLAGS="$ac_save_CFLAGS" LIBS="$ac_save_LIBS" fi fi if test "x$no_gtk" = x ; then - { echo "$as_me:$LINENO: result: yes (version $gtk_config_major_version.$gtk_config_minor_version.$gtk_config_micro_version)" >&5 -echo "${ECHO_T}yes (version $gtk_config_major_version.$gtk_config_minor_version.$gtk_config_micro_version)" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes (version $gtk_config_major_version.$gtk_config_minor_version.$gtk_config_micro_version)" >&5 +$as_echo "yes (version $gtk_config_major_version.$gtk_config_minor_version.$gtk_config_micro_version)" >&6; } has_gtk=yes else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } if test "$PKG_CONFIG" = "no" ; then echo "*** A new enough version of pkg-config was not found." echo "*** See http://pkgconfig.sourceforge.net" @@ -4956,11 +4597,7 @@ ac_save_LIBS="$LIBS" CFLAGS="$CFLAGS $GTK_CFLAGS" LIBS="$LIBS $GTK_LIBS" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -4974,24 +4611,7 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then +if ac_fn_c_try_link "$LINENO"; then : echo "*** The test program compiled, but did not run. This usually means" echo "*** that the run-time linker is not finding GTK+ or finding the wrong" echo "*** version of GTK+. If it is not finding GTK+, you'll need to set your" @@ -5002,15 +4622,11 @@ echo "*** If you have an old version installed, it is best to remove it, although" echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH" else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - echo "*** The test program failed to compile or link. See the file config.log for the" + echo "*** The test program failed to compile or link. See the file config.log for the" echo "*** exact error that occured. This usually means GTK+ is incorrectly installed." fi - -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext CFLAGS="$ac_save_CFLAGS" LIBS="$ac_save_LIBS" fi @@ -5018,8 +4634,8 @@ GTK_CFLAGS="" GTK_LIBS="" has_gtk=no - { echo "$as_me:$LINENO: result: *** GTK not found ***" >&5 -echo "${ECHO_T}*** GTK not found ***" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: *** GTK not found ***" >&5 +$as_echo "*** GTK not found ***" >&6; } fi @@ -5028,14 +4644,127 @@ if test x$has_gtk = xyes; then -cat >>confdefs.h <<\_ACEOF -#define HAVE_GTK 1 +$as_echo "#define HAVE_GTK 1" >>confdefs.h + + old_LIBS="$LIBS" + LIBS="" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing XSetForeground" >&5 +$as_echo_n "checking for library containing XSetForeground... " >&6; } +if test "${ac_cv_search_XSetForeground+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + ac_func_search_save_LIBS=$LIBS +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char XSetForeground (); +int +main () +{ +return XSetForeground (); + ; + return 0; +} +_ACEOF +for ac_lib in '' X11; do + if test -z "$ac_lib"; then + ac_res="none required" + else + ac_res=-l$ac_lib + LIBS="-l$ac_lib $ac_func_search_save_LIBS" + fi + if ac_fn_c_try_link "$LINENO"; then : + ac_cv_search_XSetForeground=$ac_res +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext + if test "${ac_cv_search_XSetForeground+set}" = set; then : + break +fi +done +if test "${ac_cv_search_XSetForeground+set}" = set; then : + +else + ac_cv_search_XSetForeground=no +fi +rm conftest.$ac_ext +LIBS=$ac_func_search_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_XSetForeground" >&5 +$as_echo "$ac_cv_search_XSetForeground" >&6; } +ac_res=$ac_cv_search_XSetForeground +if test "$ac_res" != no; then : + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing rint" >&5 +$as_echo_n "checking for library containing rint... " >&6; } +if test "${ac_cv_search_rint+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + ac_func_search_save_LIBS=$LIBS +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char rint (); +int +main () +{ +return rint (); + ; + return 0; +} _ACEOF +for ac_lib in '' m; do + if test -z "$ac_lib"; then + ac_res="none required" + else + ac_res=-l$ac_lib + LIBS="-l$ac_lib $ac_func_search_save_LIBS" + fi + if ac_fn_c_try_link "$LINENO"; then : + ac_cv_search_rint=$ac_res +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext + if test "${ac_cv_search_rint+set}" = set; then : + break +fi +done +if test "${ac_cv_search_rint+set}" = set; then : + +else + ac_cv_search_rint=no +fi +rm conftest.$ac_ext +LIBS=$ac_func_search_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_rint" >&5 +$as_echo "$ac_cv_search_rint" >&6; } +ac_res=$ac_cv_search_rint +if test "$ac_res" != no; then : + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" fi + OVERLAY_LIBS="$LIBS" -if test x$has_gtk = "xyes"; then + LIBS="$old_LIBS" +fi + if test x$has_gtk = "xyes"; then HAVE_GTK_TRUE= HAVE_GTK_FALSE='#' else @@ -5047,7 +4776,7 @@ FIRMWARE_DIR=/lib/firmware # Check whether --with-firmware-dir was given. -if test "${with_firmware_dir+set}" = set; then +if test "${with_firmware_dir+set}" = set; then : withval=$with_firmware_dir; if test "x$withval" != xyes; then FIRMWARE_DIR="$withval"; fi fi @@ -5060,7 +4789,7 @@ # Check whether --with-alsa-dir was given. -if test "${with_alsa_dir+set}" = set; then +if test "${with_alsa_dir+set}" = set; then : withval=$with_alsa_dir; else with_alsa_dir=search @@ -5068,10 +4797,10 @@ ALSA_DIR= -if test "x$with_alsa_dir" != xno; then - if test "x$with_alsa_dir" = xyes || test "x$with_alsa_dir" = xsearch; then - { echo "$as_me:$LINENO: checking for alsa configuration directory" >&5 -echo $ECHO_N "checking for alsa configuration directory... $ECHO_C" >&6; } +if test "x$with_alsa_dir" != xno; then : + if test "x$with_alsa_dir" = xyes || test "x$with_alsa_dir" = xsearch; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for alsa configuration directory" >&5 +$as_echo_n "checking for alsa configuration directory... " >&6; } for dir in /usr/local/share/alsa /usr/share/alsa /etc/alsa; do if test -f "${dir}/alsa.conf"; then ALSA_DIR="$dir" @@ -5079,27 +4808,24 @@ fi done if test "x$ALSA_DIR" = x; then - { echo "$as_me:$LINENO: result: not found" >&5 -echo "${ECHO_T}not found" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: not found" >&5 +$as_echo "not found" >&6; } else - { echo "$as_me:$LINENO: result: $ALSA_DIR" >&5 -echo "${ECHO_T}$ALSA_DIR" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ALSA_DIR" >&5 +$as_echo "$ALSA_DIR" >&6; } fi if test "x$ALSA_DIR" = x && test "x$with_alsa_dir" = xyes; then - { { echo "$as_me:$LINENO: error: --with-alsa-dir was given but configuration directory was not found -See \`config.log' for more details." >&5 -echo "$as_me: error: --with-alsa-dir was given but configuration directory was not found -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error "--with-alsa-dir was given but configuration directory was not found +See \`config.log' for more details." "$LINENO" 5; } fi else ALSA_DIR="$with_alsa_dir" fi - fi - ac_config_files="$ac_config_files Makefile include/Makefile include/linux/Makefile overlay/Makefile dhc/Makefile em8300setup/Makefile scripts/Makefile" cat >confcache <<\_ACEOF @@ -5129,12 +4855,13 @@ case $ac_val in #( *${as_nl}*) case $ac_var in #( - *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5 -echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;; + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 +$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( - *) $as_unset $ac_var ;; + BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( + *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done @@ -5142,8 +4869,8 @@ (set) 2>&1 | case $as_nl`(ac_space=' '; set) 2>&1` in #( *${as_nl}ac_space=\ *) - # `set' does not quote correctly, so add quotes (double-quote - # substitution turns \\\\ into \\, and sed turns \\ into \). + # `set' does not quote correctly, so add quotes: double-quote + # substitution turns \\\\ into \\, and sed turns \\ into \. sed -n \ "s/'/'\\\\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" @@ -5166,12 +4893,12 @@ if diff "$cache_file" confcache >/dev/null 2>&1; then :; else if test -w "$cache_file"; then test "x$cache_file" != "x/dev/null" && - { echo "$as_me:$LINENO: updating cache $cache_file" >&5 -echo "$as_me: updating cache $cache_file" >&6;} + { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 +$as_echo "$as_me: updating cache $cache_file" >&6;} cat confcache >$cache_file else - { echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5 -echo "$as_me: not updating unwritable cache $cache_file" >&6;} + { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 +$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} fi fi rm -f confcache @@ -5187,11 +4914,11 @@ for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue # 1. Remove the extension, and $U if already installed. ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' - ac_i=`echo "$ac_i" | sed "$ac_script"` + ac_i=`$as_echo "$ac_i" | sed "$ac_script"` # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR # will be set to the directory where LIBOBJS objects are built. - ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext" - ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo' + as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" + as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' done LIBOBJS=$ac_libobjs @@ -5199,33 +4926,38 @@ if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then - { { echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -echo "$as_me: error: conditional \"AMDEP\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error "conditional \"AMDEP\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then - { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -echo "$as_me: error: conditional \"am__fastdepCC\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error "conditional \"am__fastdepCC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi + if test -n "$EXEEXT"; then + am__EXEEXT_TRUE= + am__EXEEXT_FALSE='#' +else + am__EXEEXT_TRUE='#' + am__EXEEXT_FALSE= +fi + +if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then + as_fn_error "conditional \"MAINTAINER_MODE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${HAVE_GTK_TRUE}" && test -z "${HAVE_GTK_FALSE}"; then - { { echo "$as_me:$LINENO: error: conditional \"HAVE_GTK\" was never defined. -Usually this means the macro was only invoked conditionally." >&5 -echo "$as_me: error: conditional \"HAVE_GTK\" was never defined. -Usually this means the macro was only invoked conditionally." >&2;} - { (exit 1); exit 1; }; } + as_fn_error "conditional \"HAVE_GTK\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi : ${CONFIG_STATUS=./config.status} +ac_write_fail=0 ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 -echo "$as_me: creating $CONFIG_STATUS" >&6;} -cat >$CONFIG_STATUS <<_ACEOF +{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 +$as_echo "$as_me: creating $CONFIG_STATUS" >&6;} +as_write_fail=0 +cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 #! $SHELL # Generated by $as_me. # Run this file to recreate the current configuration. @@ -5235,59 +4967,79 @@ debug=false ac_cs_recheck=false ac_cs_silent=false -SHELL=\${CONFIG_SHELL-$SHELL} -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## +SHELL=\${CONFIG_SHELL-$SHELL} +export SHELL +_ASEOF +cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; + case `(set -o) 2>/dev/null` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; esac - fi - - -# PATH needs CR -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' +as_nl=' +' +export as_nl +# Printing a long string crashes Solaris 7 /usr/bin/printf. +as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='printf %s\n' + as_echo_n='printf %s' +else + if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then + as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' + as_echo_n='/usr/ucb/echo -n' else - PATH_SEPARATOR=: + as_echo_body='eval expr "X$1" : "X\\(.*\\)"' + as_echo_n_body='eval + arg=$1; + case $arg in #( + *"$as_nl"*) + expr "X$arg" : "X\\(.*\\)$as_nl"; + arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; + esac; + expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" + ' + export as_echo_n_body + as_echo_n='sh -c $as_echo_n_body as_echo' fi - rm -f conf$$.sh + export as_echo_body + as_echo='sh -c $as_echo_body as_echo' fi -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } fi @@ -5296,20 +5048,18 @@ # there to prevent editors from complaining about space-tab. # (If _AS_PATH_WALK were called with IFS unset, it would disable word # splitting by setting IFS to empty value.) -as_nl=' -' IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. -case $0 in +case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + done IFS=$as_save_IFS ;; @@ -5320,32 +5070,111 @@ as_myself=$0 fi if test ! -f "$as_myself"; then - echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - { (exit 1); exit 1; } + $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + exit 1 fi -# Work around bugs in pre-3.0 UWIN ksh. -for as_var in ENV MAIL MAILPATH -do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var - fi -done +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + + +# as_fn_error ERROR [LINENO LOG_FD] +# --------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with status $?, using 1 if that was 0. +as_fn_error () +{ + as_status=$?; test $as_status -eq 0 && as_status=1 + if test "$3"; then + as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3 + fi + $as_echo "$as_me: error: $1" >&2 + as_fn_exit $as_status +} # as_fn_error + + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append + +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith + -# Required to use basename. if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr @@ -5356,16 +5185,20 @@ if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then as_basename=basename else - as_basename=false + as_basename=false +fi + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false fi - -# Name of the executable. as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| . 2>/dev/null || -echo X/"$0" | +$as_echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q @@ -5380,104 +5213,103 @@ } s/.*/./; q'` -# CDPATH. -$as_unset CDPATH - - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line after each line using $LINENO; the second 'sed' - # does the real work. The second script uses 'N' to pair each - # line-number line with the line containing $LINENO, and appends - # trailing '-' during substitution so that $LINENO is not a special - # case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # scripts with optimization help from Paolo Bonzini. Blame Lee - # E. McMahon (1931-1989) for sed's syntax. :-) - sed -n ' - p - /[$]LINENO/= - ' <$as_myself | - sed ' - s/[$]LINENO.*/&-/ - t lineno - b - :lineno - N - :loop - s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ - t loop - s/-\n.*// - ' >$as_me.lineno && - chmod +x "$as_me.lineno" || - { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensitive to this). - . "./$as_me.lineno" - # Exit status is that of the last command. - exit -} - - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in +case `echo -n x` in #((((( -n*) - case `echo 'x\c'` in + case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. - *) ECHO_C='\c';; + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; esac;; *) ECHO_N='-n';; esac -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then rm -f conf$$.dir/conf$$.file else rm -f conf$$.dir - mkdir conf$$.dir + mkdir conf$$.dir 2>/dev/null fi -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -p'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || +if (echo >conf$$.file) 2>/dev/null; then + if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -p'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -p' + elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln + else as_ln_s='cp -p' -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln + fi else as_ln_s='cp -p' fi rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir" + + +} # as_fn_mkdir_p if mkdir -p . 2>/dev/null; then - as_mkdir_p=: + as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false @@ -5494,12 +5326,12 @@ as_test_x=' eval sh -c '\'' if test -d "$1"; then - test -d "$1/."; + test -d "$1/."; else - case $1 in - -*)set "./$1";; + case $1 in #( + -*)set "./$1";; esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( ???[sx]*):;;*)false;;esac;fi '\'' sh ' @@ -5514,13 +5346,19 @@ exec 6>&1 +## ----------------------------------- ## +## Main body of $CONFIG_STATUS script. ## +## ----------------------------------- ## +_ASEOF +test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 -# Save the log message, to keep $[0] and so on meaningful, and to +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# Save the log message, to keep $0 and so on meaningful, and to # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by $as_me, which was -generated by GNU Autoconf 2.61. Invocation command line was +This file was extended by EM8300 $as_me 0.18.0-hg, which was +generated by GNU Autoconf 2.65. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS @@ -5533,7 +5371,16 @@ _ACEOF -cat >>$CONFIG_STATUS <<_ACEOF +case $ac_config_files in *" +"*) set x $ac_config_files; shift; ac_config_files=$*;; +esac + +case $ac_config_headers in *" +"*) set x $ac_config_headers; shift; ac_config_headers=$*;; +esac + + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # Files that config.status was made for. config_files="$ac_config_files" config_headers="$ac_config_headers" @@ -5541,22 +5388,25 @@ _ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. +\`$as_me' instantiates files and other configuration actions +from templates according to the current configuration. Unless the files +and actions are specified as TAGs, all are instantiated by default. -Usage: $0 [OPTIONS] [FILE]... +Usage: $0 [OPTION]... [TAG]... -h, --help print this help, then exit -V, --version print version number and configuration settings, then exit - -q, --quiet do not print progress messages + --config print configuration, then exit + -q, --quiet, --silent + do not print progress messages -d, --debug don't remove temporary files --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE + --file=FILE[:TEMPLATE] + instantiate the configuration file FILE + --header=FILE[:TEMPLATE] + instantiate the configuration header FILE Configuration files: $config_files @@ -5567,27 +5417,30 @@ Configuration commands: $config_commands -Report bugs to ." +Report bugs to the package provider." _ACEOF -cat >>$CONFIG_STATUS <<_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -config.status -configured by $0, generated by GNU Autoconf 2.61, - with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" +EM8300 config.status 0.18.0-hg +configured by $0, generated by GNU Autoconf 2.65, + with options \\"\$ac_cs_config\\" -Copyright (C) 2006 Free Software Foundation, Inc. +Copyright (C) 2009 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." ac_pwd='$ac_pwd' srcdir='$srcdir' INSTALL='$INSTALL' +MKDIR_P='$MKDIR_P' +AWK='$AWK' +test -n "\$AWK" || AWK=awk _ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -# If no file are specified by the user, then we need to provide default -# value. By we need to know if files were specified by the user. +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# The default lists apply if the user does not specify any file. ac_need_defaults=: while test $# != 0 do @@ -5609,34 +5462,40 @@ -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) ac_cs_recheck=: ;; --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - echo "$ac_cs_version"; exit ;; + $as_echo "$ac_cs_version"; exit ;; + --config | --confi | --conf | --con | --co | --c ) + $as_echo "$ac_cs_config"; exit ;; --debug | --debu | --deb | --de | --d | -d ) debug=: ;; --file | --fil | --fi | --f ) $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" + case $ac_optarg in + *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + as_fn_append CONFIG_FILES " '$ac_optarg'" ac_need_defaults=false;; --header | --heade | --head | --hea ) $ac_shift - CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" + case $ac_optarg in + *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + as_fn_append CONFIG_HEADERS " '$ac_optarg'" ac_need_defaults=false;; --he | --h) # Conflict between --help and --header - { echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; };; + as_fn_error "ambiguous option: \`$1' +Try \`$0 --help' for more information.";; --help | --hel | -h ) - echo "$ac_cs_usage"; exit ;; + $as_echo "$ac_cs_usage"; exit ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil | --si | --s) ac_cs_silent=: ;; # This is an error. - -*) { echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } ;; + -*) as_fn_error "unrecognized option: \`$1' +Try \`$0 --help' for more information." ;; - *) ac_config_targets="$ac_config_targets $1" + *) as_fn_append ac_config_targets " $1" ac_need_defaults=false ;; esac @@ -5651,27 +5510,29 @@ fi _ACEOF -cat >>$CONFIG_STATUS <<_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 if \$ac_cs_recheck; then - echo "running CONFIG_SHELL=$SHELL $SHELL $0 "$ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 - CONFIG_SHELL=$SHELL + set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion + shift + \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 + CONFIG_SHELL='$SHELL' export CONFIG_SHELL - exec $SHELL "$0"$ac_configure_args \$ac_configure_extra_args --no-create --no-recursion + exec "\$@" fi _ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 exec 5>>config.log { echo sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX ## Running $as_me. ## _ASBOX - echo "$ac_log" + $as_echo "$ac_log" } >&5 _ACEOF -cat >>$CONFIG_STATUS <<_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # # INIT-COMMANDS # @@ -5679,7 +5540,7 @@ _ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # Handling of arguments. for ac_config_target in $ac_config_targets @@ -5695,9 +5556,7 @@ "em8300setup/Makefile") CONFIG_FILES="$CONFIG_FILES em8300setup/Makefile" ;; "scripts/Makefile") CONFIG_FILES="$CONFIG_FILES scripts/Makefile" ;; - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; + *) as_fn_error "invalid argument: \`$ac_config_target'" "$LINENO" 5;; esac done @@ -5724,7 +5583,7 @@ trap 'exit_status=$? { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status ' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 + trap 'as_fn_exit 1' 1 2 13 15 } # Create a (secure) tmp directory for tmp files. @@ -5735,207 +5594,139 @@ { tmp=./conf$$-$RANDOM (umask 077 && mkdir "$tmp") -} || -{ - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} +} || as_fn_error "cannot create a temporary directory in ." "$LINENO" 5 -# -# Set up the sed scripts for CONFIG_FILES section. -# - -# No need to generate the scripts if there are no CONFIG_FILES. -# This happens for instance when ./config.status config.h +# Set up the scripts for CONFIG_FILES section. +# No need to generate them if there are no CONFIG_FILES. +# This happens for instance with `./config.status config.h'. if test -n "$CONFIG_FILES"; then -_ACEOF - - - -ac_delim='%!_!# ' -for ac_last_try in false false false false false :; do - cat >conf$$subs.sed <<_ACEOF -SHELL!$SHELL$ac_delim -PATH_SEPARATOR!$PATH_SEPARATOR$ac_delim -PACKAGE_NAME!$PACKAGE_NAME$ac_delim -PACKAGE_TARNAME!$PACKAGE_TARNAME$ac_delim -PACKAGE_VERSION!$PACKAGE_VERSION$ac_delim -PACKAGE_STRING!$PACKAGE_STRING$ac_delim -PACKAGE_BUGREPORT!$PACKAGE_BUGREPORT$ac_delim -exec_prefix!$exec_prefix$ac_delim -prefix!$prefix$ac_delim -program_transform_name!$program_transform_name$ac_delim -bindir!$bindir$ac_delim -sbindir!$sbindir$ac_delim -libexecdir!$libexecdir$ac_delim -datarootdir!$datarootdir$ac_delim -datadir!$datadir$ac_delim -sysconfdir!$sysconfdir$ac_delim -sharedstatedir!$sharedstatedir$ac_delim -localstatedir!$localstatedir$ac_delim -includedir!$includedir$ac_delim -oldincludedir!$oldincludedir$ac_delim -docdir!$docdir$ac_delim -infodir!$infodir$ac_delim -htmldir!$htmldir$ac_delim -dvidir!$dvidir$ac_delim -pdfdir!$pdfdir$ac_delim -psdir!$psdir$ac_delim -libdir!$libdir$ac_delim -localedir!$localedir$ac_delim -mandir!$mandir$ac_delim -DEFS!$DEFS$ac_delim -ECHO_C!$ECHO_C$ac_delim -ECHO_N!$ECHO_N$ac_delim -ECHO_T!$ECHO_T$ac_delim -LIBS!$LIBS$ac_delim -build_alias!$build_alias$ac_delim -host_alias!$host_alias$ac_delim -target_alias!$target_alias$ac_delim -EM8300_MAJOR!$EM8300_MAJOR$ac_delim -EM8300_MINOR!$EM8300_MINOR$ac_delim -EM8300_SUB!$EM8300_SUB$ac_delim -TAR_NAME!$TAR_NAME$ac_delim -CC!$CC$ac_delim -CFLAGS!$CFLAGS$ac_delim -LDFLAGS!$LDFLAGS$ac_delim -CPPFLAGS!$CPPFLAGS$ac_delim -ac_ct_CC!$ac_ct_CC$ac_delim -EXEEXT!$EXEEXT$ac_delim -OBJEXT!$OBJEXT$ac_delim -INSTALL_PROGRAM!$INSTALL_PROGRAM$ac_delim -INSTALL_SCRIPT!$INSTALL_SCRIPT$ac_delim -INSTALL_DATA!$INSTALL_DATA$ac_delim -CYGPATH_W!$CYGPATH_W$ac_delim -PACKAGE!$PACKAGE$ac_delim -VERSION!$VERSION$ac_delim -ACLOCAL!$ACLOCAL$ac_delim -AUTOCONF!$AUTOCONF$ac_delim -AUTOMAKE!$AUTOMAKE$ac_delim -AUTOHEADER!$AUTOHEADER$ac_delim -MAKEINFO!$MAKEINFO$ac_delim -install_sh!$install_sh$ac_delim -STRIP!$STRIP$ac_delim -INSTALL_STRIP_PROGRAM!$INSTALL_STRIP_PROGRAM$ac_delim -mkdir_p!$mkdir_p$ac_delim -AWK!$AWK$ac_delim -SET_MAKE!$SET_MAKE$ac_delim -am__leading_dot!$am__leading_dot$ac_delim -AMTAR!$AMTAR$ac_delim -am__tar!$am__tar$ac_delim -am__untar!$am__untar$ac_delim -DEPDIR!$DEPDIR$ac_delim -am__include!$am__include$ac_delim -am__quote!$am__quote$ac_delim -AMDEP_TRUE!$AMDEP_TRUE$ac_delim -AMDEP_FALSE!$AMDEP_FALSE$ac_delim -AMDEPBACKSLASH!$AMDEPBACKSLASH$ac_delim -CCDEPMODE!$CCDEPMODE$ac_delim -am__fastdepCC_TRUE!$am__fastdepCC_TRUE$ac_delim -am__fastdepCC_FALSE!$am__fastdepCC_FALSE$ac_delim -build!$build$ac_delim -build_cpu!$build_cpu$ac_delim -build_vendor!$build_vendor$ac_delim -build_os!$build_os$ac_delim -host!$host$ac_delim -host_cpu!$host_cpu$ac_delim -host_vendor!$host_vendor$ac_delim -host_os!$host_os$ac_delim -CPP!$CPP$ac_delim -GREP!$GREP$ac_delim -EGREP!$EGREP$ac_delim -DEBUG_CFLAGS!$DEBUG_CFLAGS$ac_delim -GLOBAL_CFLAGS!$GLOBAL_CFLAGS$ac_delim -PKG_CONFIG!$PKG_CONFIG$ac_delim -GTK_CFLAGS!$GTK_CFLAGS$ac_delim -GTK_LIBS!$GTK_LIBS$ac_delim -HAVE_GTK_TRUE!$HAVE_GTK_TRUE$ac_delim -HAVE_GTK_FALSE!$HAVE_GTK_FALSE$ac_delim -FIRMWARE_DIR!$FIRMWARE_DIR$ac_delim -_ACEOF - - if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then - break - elif $ac_last_try; then - { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 -echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} - { (exit 1); exit 1; }; } - else - ac_delim="$ac_delim!$ac_delim _$ac_delim!! " - fi -done -ac_eof=`sed -n '/^CEOF[0-9]*$/s/CEOF/0/p' conf$$subs.sed` -if test -n "$ac_eof"; then - ac_eof=`echo "$ac_eof" | sort -nru | sed 1q` - ac_eof=`expr $ac_eof + 1` +ac_cr=`echo X | tr X '\015'` +# On cygwin, bash can eat \r inside `` if the user requested igncr. +# But we know of no other shell where ac_cr would be empty at this +# point, so we can use a bashism as a fallback. +if test "x$ac_cr" = x; then + eval ac_cr=\$\'\\r\' +fi +ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` +if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then + ac_cs_awk_cr='\r' +else + ac_cs_awk_cr=$ac_cr fi -cat >>$CONFIG_STATUS <<_ACEOF -cat >"\$tmp/subs-1.sed" <<\CEOF$ac_eof -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -_ACEOF -sed ' -s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g -s/^/s,@/; s/!/@,|#_!!_#|/ -:n -t n -s/'"$ac_delim"'$/,g/; t -s/$/\\/; p -N; s/^.*\n//; s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g; b n -' >>$CONFIG_STATUS >$CONFIG_STATUS <<_ACEOF -CEOF$ac_eof +echo 'BEGIN {' >"$tmp/subs1.awk" && _ACEOF +{ + echo "cat >conf$$subs.awk <<_ACEOF" && + echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && + echo "_ACEOF" +} >conf$$subs.sh || + as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5 +ac_delim_num=`echo "$ac_subst_vars" | grep -c '$'` ac_delim='%!_!# ' for ac_last_try in false false false false false :; do - cat >conf$$subs.sed <<_ACEOF -ALSA_DIR!$ALSA_DIR$ac_delim -LIBOBJS!$LIBOBJS$ac_delim -LTLIBOBJS!$LTLIBOBJS$ac_delim -_ACEOF + . ./conf$$subs.sh || + as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5 - if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 3; then + ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` + if test $ac_delim_n = $ac_delim_num; then break elif $ac_last_try; then - { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 -echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5 else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi done +rm -f conf$$subs.sh -ac_eof=`sed -n '/^CEOF[0-9]*$/s/CEOF/0/p' conf$$subs.sed` -if test -n "$ac_eof"; then - ac_eof=`echo "$ac_eof" | sort -nru | sed 1q` - ac_eof=`expr $ac_eof + 1` -fi - -cat >>$CONFIG_STATUS <<_ACEOF -cat >"\$tmp/subs-2.sed" <<\CEOF$ac_eof -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b end -_ACEOF -sed ' -s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g -s/^/s,@/; s/!/@,|#_!!_#|/ -:n -t n -s/'"$ac_delim"'$/,g/; t -s/$/\\/; p -N; s/^.*\n//; s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g; b n -' >>$CONFIG_STATUS >$CONFIG_STATUS <<_ACEOF -:end -s/|#_!!_#|//g -CEOF$ac_eof +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +cat >>"\$tmp/subs1.awk" <<\\_ACAWK && _ACEOF +sed -n ' +h +s/^/S["/; s/!.*/"]=/ +p +g +s/^[^!]*!// +:repl +t repl +s/'"$ac_delim"'$// +t delim +:nl +h +s/\(.\{148\}\)..*/\1/ +t more1 +s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ +p +n +b repl +:more1 +s/["\\]/\\&/g; s/^/"/; s/$/"\\/ +p +g +s/.\{148\}// +t nl +:delim +h +s/\(.\{148\}\)..*/\1/ +t more2 +s/["\\]/\\&/g; s/^/"/; s/$/"/ +p +b +:more2 +s/["\\]/\\&/g; s/^/"/; s/$/"\\/ +p +g +s/.\{148\}// +t delim +' >$CONFIG_STATUS || ac_write_fail=1 +rm -f conf$$subs.awk +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +_ACAWK +cat >>"\$tmp/subs1.awk" <<_ACAWK && + for (key in S) S_is_set[key] = 1 + FS = "" + +} +{ + line = $ 0 + nfields = split(line, field, "@") + substed = 0 + len = length(field[1]) + for (i = 2; i < nfields; i++) { + key = field[i] + keylen = length(key) + if (S_is_set[key]) { + value = S[key] + line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) + len += length(value) + length(field[++i]) + substed = 1 + } else + len += 1 + keylen + } + + print line +} +_ACAWK +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then + sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" +else + cat +fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \ + || as_fn_error "could not setup config files machinery" "$LINENO" 5 +_ACEOF # VPATH may cause trouble with some makes, so we remove $(srcdir), # ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and @@ -5952,20 +5743,128 @@ }' fi -cat >>$CONFIG_STATUS <<\_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 fi # test -n "$CONFIG_FILES" +# Set up the scripts for CONFIG_HEADERS section. +# No need to generate them if there are no CONFIG_HEADERS. +# This happens for instance with `./config.status Makefile'. +if test -n "$CONFIG_HEADERS"; then +cat >"$tmp/defines.awk" <<\_ACAWK || +BEGIN { +_ACEOF + +# Transform confdefs.h into an awk script `defines.awk', embedded as +# here-document in config.status, that substitutes the proper values into +# config.h.in to produce config.h. + +# Create a delimiter string that does not exist in confdefs.h, to ease +# handling of long lines. +ac_delim='%!_!# ' +for ac_last_try in false false :; do + ac_t=`sed -n "/$ac_delim/p" confdefs.h` + if test -z "$ac_t"; then + break + elif $ac_last_try; then + as_fn_error "could not make $CONFIG_HEADERS" "$LINENO" 5 + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " + fi +done + +# For the awk script, D is an array of macro values keyed by name, +# likewise P contains macro parameters if any. Preserve backslash +# newline sequences. + +ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* +sed -n ' +s/.\{148\}/&'"$ac_delim"'/g +t rset +:rset +s/^[ ]*#[ ]*define[ ][ ]*/ / +t def +d +:def +s/\\$// +t bsnl +s/["\\]/\\&/g +s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ +D["\1"]=" \3"/p +s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p +d +:bsnl +s/["\\]/\\&/g +s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ +D["\1"]=" \3\\\\\\n"\\/p +t cont +s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p +t cont +d +:cont +n +s/.\{148\}/&'"$ac_delim"'/g +t clear +:clear +s/\\$// +t bsnlc +s/["\\]/\\&/g; s/^/"/; s/$/"/p +d +:bsnlc +s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p +b cont +' >$CONFIG_STATUS || ac_write_fail=1 + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + for (key in D) D_is_set[key] = 1 + FS = "" +} +/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ { + line = \$ 0 + split(line, arg, " ") + if (arg[1] == "#") { + defundef = arg[2] + mac1 = arg[3] + } else { + defundef = substr(arg[1], 2) + mac1 = arg[2] + } + split(mac1, mac2, "(") #) + macro = mac2[1] + prefix = substr(line, 1, index(line, defundef) - 1) + if (D_is_set[macro]) { + # Preserve the white space surrounding the "#". + print prefix "define", macro P[macro] D[macro] + next + } else { + # Replace #undef with comments. This is necessary, for example, + # in the case of _POSIX_SOURCE, which is predefined and required + # on some systems where configure will not decide to define it. + if (defundef == "undef") { + print "/*", prefix defundef, macro, "*/" + next + } + } +} +{ print } +_ACAWK +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + as_fn_error "could not setup config headers machinery" "$LINENO" 5 +fi # test -n "$CONFIG_HEADERS" + -for ac_tag in :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS +eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" +shift +for ac_tag do case $ac_tag in :[FHLC]) ac_mode=$ac_tag; continue;; esac case $ac_mode$ac_tag in :[FHL]*:*);; - :L* | :C*:*) { { echo "$as_me:$LINENO: error: Invalid tag $ac_tag." >&5 -echo "$as_me: error: Invalid tag $ac_tag." >&2;} - { (exit 1); exit 1; }; };; + :L* | :C*:*) as_fn_error "invalid tag \`$ac_tag'" "$LINENO" 5;; :[FH]-) ac_tag=-:-;; :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; esac @@ -5993,26 +5892,34 @@ [\\/$]*) false;; *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; esac || - { { echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5 -echo "$as_me: error: cannot find input file: $ac_f" >&2;} - { (exit 1); exit 1; }; };; + as_fn_error "cannot find input file: \`$ac_f'" "$LINENO" 5;; esac - ac_file_inputs="$ac_file_inputs $ac_f" + case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac + as_fn_append ac_file_inputs " '$ac_f'" done # Let's still pretend it is `configure' which instantiates (i.e., don't # use $as_me), people would be surprised to read: # /* config.h. Generated by config.status. */ - configure_input="Generated from "`IFS=: - echo $* | sed 's|^[^:]*/||;s|:[^:]*/|, |g'`" by configure." + configure_input='Generated from '` + $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' + `' by configure.' if test x"$ac_file" != x-; then configure_input="$ac_file. $configure_input" - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} + { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 +$as_echo "$as_me: creating $ac_file" >&6;} fi + # Neutralize special characters interpreted by sed in replacement strings. + case $configure_input in #( + *\&* | *\|* | *\\* ) + ac_sed_conf_input=`$as_echo "$configure_input" | + sed 's/[\\\\&|]/\\\\&/g'`;; #( + *) ac_sed_conf_input=$configure_input;; + esac case $ac_tag in - *:-:* | *:-) cat >"$tmp/stdin";; + *:-:* | *:-) cat >"$tmp/stdin" \ + || as_fn_error "could not create $ac_file" "$LINENO" 5 ;; esac ;; esac @@ -6022,7 +5929,7 @@ X"$ac_file" : 'X\(//\)[^/]' \| \ X"$ac_file" : 'X\(//\)$' \| \ X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -echo X"$ac_file" | +$as_echo X"$ac_file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q @@ -6040,55 +5947,15 @@ q } s/.*/./; q'` - { as_dir="$ac_dir" - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 -echo "$as_me: error: cannot create directory $as_dir" >&2;} - { (exit 1); exit 1; }; }; } + as_dir="$ac_dir"; as_fn_mkdir_p ac_builddir=. case "$ac_dir" in .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; *) - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` + ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'` + ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` case $ac_top_builddir_sub in "") ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; @@ -6126,14 +5993,19 @@ [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; esac + ac_MKDIR_P=$MKDIR_P + case $MKDIR_P in + [\\/$]* | ?:[\\/]* ) ;; + */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; + esac _ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # If the template does not know about datarootdir, expand it. # FIXME: This hack should be removed a few years after 2.60. ac_datarootdir_hack=; ac_datarootdir_seen= - -case `sed -n '/datarootdir/ { +ac_sed_dataroot=' +/datarootdir/ { p q } @@ -6141,36 +6013,37 @@ /@docdir@/p /@infodir@/p /@localedir@/p -/@mandir@/p -' $ac_file_inputs` in +/@mandir@/p' +case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in *datarootdir*) ac_datarootdir_seen=yes;; *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 +$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} _ACEOF -cat >>$CONFIG_STATUS <<_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_datarootdir_hack=' s&@datadir@&$datadir&g s&@docdir@&$docdir&g s&@infodir@&$infodir&g s&@localedir@&$localedir&g s&@mandir@&$mandir&g - s&\\\${datarootdir}&$datarootdir&g' ;; + s&\\\${datarootdir}&$datarootdir&g' ;; esac _ACEOF # Neutralize VPATH when `$srcdir' = `.'. # Shell code in configure.ac might set extrasub. # FIXME: do we really want to maintain this feature? -cat >>$CONFIG_STATUS <<_ACEOF - sed "$ac_vpsub +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +ac_sed_extra="$ac_vpsub $extrasub _ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 :t /@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s&@configure_input@&$configure_input&;t t +s|@configure_input@|$ac_sed_conf_input|;t t s&@top_builddir@&$ac_top_builddir_sub&;t t +s&@top_build_prefix@&$ac_top_build_prefix&;t t s&@srcdir@&$ac_srcdir&;t t s&@abs_srcdir@&$ac_abs_srcdir&;t t s&@top_srcdir@&$ac_top_srcdir&;t t @@ -6179,136 +6052,67 @@ s&@abs_builddir@&$ac_abs_builddir&;t t s&@abs_top_builddir@&$ac_abs_top_builddir&;t t s&@INSTALL@&$ac_INSTALL&;t t +s&@MKDIR_P@&$ac_MKDIR_P&;t t $ac_datarootdir_hack -" $ac_file_inputs | sed -f "$tmp/subs-1.sed" | sed -f "$tmp/subs-2.sed" >$tmp/out +" +eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \ + || as_fn_error "could not create $ac_file" "$LINENO" 5 test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && - { echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir' + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined." >&5 -echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' +$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined." >&2;} rm -f "$tmp/stdin" case $ac_file in - -) cat "$tmp/out"; rm -f "$tmp/out";; - *) rm -f "$ac_file"; mv "$tmp/out" $ac_file;; - esac + -) cat "$tmp/out" && rm -f "$tmp/out";; + *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";; + esac \ + || as_fn_error "could not create $ac_file" "$LINENO" 5 ;; :H) # # CONFIG_HEADER # -_ACEOF - -# Transform confdefs.h into a sed script `conftest.defines', that -# substitutes the proper values into config.h.in to produce config.h. -rm -f conftest.defines conftest.tail -# First, append a space to every undef/define line, to ease matching. -echo 's/$/ /' >conftest.defines -# Then, protect against being on the right side of a sed subst, or in -# an unquoted here document, in config.status. If some macros were -# called several times there might be several #defines for the same -# symbol, which is useless. But do not sort them, since the last -# AC_DEFINE must be honored. -ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* -# These sed commands are passed to sed as "A NAME B PARAMS C VALUE D", where -# NAME is the cpp macro being defined, VALUE is the value it is being given. -# PARAMS is the parameter list in the macro definition--in most cases, it's -# just an empty string. -ac_dA='s,^\\([ #]*\\)[^ ]*\\([ ]*' -ac_dB='\\)[ (].*,\\1define\\2' -ac_dC=' ' -ac_dD=' ,' - -uniq confdefs.h | - sed -n ' - t rset - :rset - s/^[ ]*#[ ]*define[ ][ ]*// - t ok - d - :ok - s/[\\&,]/\\&/g - s/^\('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/ '"$ac_dA"'\1'"$ac_dB"'\2'"${ac_dC}"'\3'"$ac_dD"'/p - s/^\('"$ac_word_re"'\)[ ]*\(.*\)/'"$ac_dA"'\1'"$ac_dB$ac_dC"'\2'"$ac_dD"'/p - ' >>conftest.defines - -# Remove the space that was appended to ease matching. -# Then replace #undef with comments. This is necessary, for -# example, in the case of _POSIX_SOURCE, which is predefined and required -# on some systems where configure will not decide to define it. -# (The regexp can be short, since the line contains either #define or #undef.) -echo 's/ $// -s,^[ #]*u.*,/* & */,' >>conftest.defines - -# Break up conftest.defines: -ac_max_sed_lines=50 - -# First sed command is: sed -f defines.sed $ac_file_inputs >"$tmp/out1" -# Second one is: sed -f defines.sed "$tmp/out1" >"$tmp/out2" -# Third one will be: sed -f defines.sed "$tmp/out2" >"$tmp/out1" -# et cetera. -ac_in='$ac_file_inputs' -ac_out='"$tmp/out1"' -ac_nxt='"$tmp/out2"' - -while : -do - # Write a here document: - cat >>$CONFIG_STATUS <<_ACEOF - # First, check the format of the line: - cat >"\$tmp/defines.sed" <<\\CEOF -/^[ ]*#[ ]*undef[ ][ ]*$ac_word_re[ ]*\$/b def -/^[ ]*#[ ]*define[ ][ ]*$ac_word_re[( ]/b def -b -:def -_ACEOF - sed ${ac_max_sed_lines}q conftest.defines >>$CONFIG_STATUS - echo 'CEOF - sed -f "$tmp/defines.sed"' "$ac_in >$ac_out" >>$CONFIG_STATUS - ac_in=$ac_out; ac_out=$ac_nxt; ac_nxt=$ac_in - sed 1,${ac_max_sed_lines}d conftest.defines >conftest.tail - grep . conftest.tail >/dev/null || break - rm -f conftest.defines - mv conftest.tail conftest.defines -done -rm -f conftest.defines conftest.tail - -echo "ac_result=$ac_in" >>$CONFIG_STATUS -cat >>$CONFIG_STATUS <<\_ACEOF if test x"$ac_file" != x-; then - echo "/* $configure_input */" >"$tmp/config.h" - cat "$ac_result" >>"$tmp/config.h" - if diff $ac_file "$tmp/config.h" >/dev/null 2>&1; then - { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 -echo "$as_me: $ac_file is unchanged" >&6;} + { + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" + } >"$tmp/config.h" \ + || as_fn_error "could not create $ac_file" "$LINENO" 5 + if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then + { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 +$as_echo "$as_me: $ac_file is unchanged" >&6;} else - rm -f $ac_file - mv "$tmp/config.h" $ac_file + rm -f "$ac_file" + mv "$tmp/config.h" "$ac_file" \ + || as_fn_error "could not create $ac_file" "$LINENO" 5 fi else - echo "/* $configure_input */" - cat "$ac_result" + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \ + || as_fn_error "could not create -" "$LINENO" 5 fi - rm -f "$tmp/out12" -# Compute $ac_file's index in $config_headers. +# Compute "$ac_file"'s index in $config_headers. +_am_arg="$ac_file" _am_stamp_count=1 for _am_header in $config_headers :; do case $_am_header in - $ac_file | $ac_file:* ) + $_am_arg | $_am_arg:* ) break ;; * ) _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done -echo "timestamp for $ac_file" >`$as_dirname -- $ac_file || -$as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X$ac_file : 'X\(//\)[^/]' \| \ - X$ac_file : 'X\(//\)$' \| \ - X$ac_file : 'X\(/\)' \| . 2>/dev/null || -echo X$ac_file | +echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || +$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$_am_arg" : 'X\(//\)[^/]' \| \ + X"$_am_arg" : 'X\(//\)$' \| \ + X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$_am_arg" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q @@ -6328,29 +6132,40 @@ s/.*/./; q'`/stamp-h$_am_stamp_count ;; - :C) { echo "$as_me:$LINENO: executing $ac_file commands" >&5 -echo "$as_me: executing $ac_file commands" >&6;} + :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 +$as_echo "$as_me: executing $ac_file commands" >&6;} ;; esac case $ac_file$ac_mode in - "depfiles":C) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do - # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named `Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # So let's grep whole file. - if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then - dirpart=`$as_dirname -- "$mf" || + "depfiles":C) test x"$AMDEP_TRUE" != x"" || { + # Autoconf 2.62 quotes --file arguments for eval, but not when files + # are listed without --file. Let's play safe and only enable the eval + # if we detect the quoting. + case $CONFIG_FILES in + *\'*) eval set x "$CONFIG_FILES" ;; + *) set x $CONFIG_FILES ;; + esac + shift + for mf + do + # Strip MF so we end up with the name of the file. + mf=`echo "$mf" | sed -e 's/:.*$//'` + # Check whether this is an Automake generated Makefile or not. + # We used to match only the files named `Makefile.in', but + # some people rename them; so instead we look at the file content. + # Grep'ing the first line is not enough: some people post-process + # each Makefile.in and add a new line on top of each file to say so. + # Grep'ing the whole file is not good either: AIX grep has a line + # limit of 2048, but all sed's we know have understand at least 4000. + if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then + dirpart=`$as_dirname -- "$mf" || $as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$mf" : 'X\(//\)[^/]' \| \ X"$mf" : 'X\(//\)$' \| \ X"$mf" : 'X\(/\)' \| . 2>/dev/null || -echo X"$mf" | +$as_echo X"$mf" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q @@ -6368,68 +6183,33 @@ q } s/.*/./; q'` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running `make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n 's/^U = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`$as_dirname -- "$file" || + else + continue + fi + # Extract the definition of DEPDIR, am__include, and am__quote + # from the Makefile without running `make'. + DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` + test -z "$DEPDIR" && continue + am__include=`sed -n 's/^am__include = //p' < "$mf"` + test -z "am__include" && continue + am__quote=`sed -n 's/^am__quote = //p' < "$mf"` + # When using ansi2knr, U may be empty or an underscore; expand it + U=`sed -n 's/^U = //p' < "$mf"` + # Find all dependency output files, they are included files with + # $(DEPDIR) in their names. We invoke sed twice because it is the + # simplest approach to changing $(DEPDIR) to its actual value in the + # expansion. + for file in `sed -n " + s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do + # Make sure the directory exists. + test -f "$dirpart/$file" && continue + fdir=`$as_dirname -- "$file" || $as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$file" : 'X\(//\)[^/]' \| \ X"$file" : 'X\(//\)$' \| \ X"$file" : 'X\(/\)' \| . 2>/dev/null || -echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - { as_dir=$dirpart/$fdir - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -echo X"$as_dir" | +$as_echo X"$file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q @@ -6447,27 +6227,25 @@ q } s/.*/./; q'` - test -d "$as_dir" && break + as_dir=$dirpart/$fdir; as_fn_mkdir_p + # echo "creating $dirpart/$file" + echo '# dummy' > "$dirpart/$file" done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 -echo "$as_me: error: cannot create directory $as_dir" >&2;} - { (exit 1); exit 1; }; }; } - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" done -done +} ;; esac done # for ac_tag -{ (exit 0); exit 0; } +as_fn_exit 0 _ACEOF -chmod +x $CONFIG_STATUS ac_clean_files=$ac_clean_files_save +test $ac_write_fail = 0 || + as_fn_error "write failure creating $CONFIG_STATUS" "$LINENO" 5 + # configure is writing to config.log, and then calls config.status. # config.status does its own redirection, appending to config.log. @@ -6487,6 +6265,10 @@ exec 5>>config.log # Use ||, not &&, to avoid exiting from the if with $? = 1, which # would make configure fail if this is the last instruction. - $ac_cs_success || { (exit 1); exit 1; } + $ac_cs_success || as_fn_exit $? +fi +if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 +$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi diff -Nru em8300-0.16.4/configure.ac em8300-0.18.0/configure.ac --- em8300-0.16.4/configure.ac 1970-01-01 01:00:00.000000000 +0100 +++ em8300-0.18.0/configure.ac 2010-06-28 18:12:31.000000000 +0100 @@ -0,0 +1,101 @@ +dnl Process this file with autoconf to produce a configure script. +AC_INIT([EM8300], [0.18.0-hg]) +AC_CONFIG_SRCDIR([em8300setup/em8300setup.c]) +AC_PREREQ(2.50) +AC_CONFIG_AUX_DIR(autotools) + +AC_PROG_CC + +AM_INIT_AUTOMAKE + +AC_CANONICAL_HOST +AC_CONFIG_HEADERS([include/config.h]) + +AM_MAINTAINER_MODE + +dnl Checks for programs. +AC_PROG_MAKE_SET +AC_PROG_INSTALL + +dnl Checks for header files. +AC_HEADER_STDC +AC_CHECK_HEADERS(fcntl.h sys/ioctl.h unistd.h) + +dnl Checks for typedefs, structures, and compiler characteristics. +AC_C_CONST +AC_C_INLINE +AC_TYPE_OFF_T +AC_TYPE_SIZE_T +AC_HEADER_TIME + +dnl Checks for library functions. +AC_PROG_GCC_TRADITIONAL + +AC_SUBST(DEBUG_CFLAGS) +AC_SUBST(GLOBAL_CFLAGS) + +dnl Common cflags for all platforms +COMMON_CFLAGS="-Wall -D_FILE_OFFSET_BITS=64" + +GLOBAL_CFLAGS="$GLOBAL_CFLAGS $CFLAGS $COMMON_CFLAGS" +DEBUG_CFLAGS="$GLOBAL_CFLAGS $CFLAGS $COMMON_CFLAGS -DDEBUG" + +AM_PATH_GTK_2_0(2.0.0, has_gtk=yes, [has_gtk=no + AC_MSG_RESULT(*** GTK not found ***)]) + +if test x$has_gtk = xyes; then + AC_DEFINE(HAVE_GTK, 1, [Defined if you have GTK]) + old_LIBS="$LIBS" + LIBS="" + AC_SEARCH_LIBS([XSetForeground], [X11]) + AC_SEARCH_LIBS([rint], [m]) + OVERLAY_LIBS="$LIBS" + AC_SUBST(OVERLAY_LIBS) + LIBS="$old_LIBS" +fi +AM_CONDITIONAL(HAVE_GTK, test x$has_gtk = "xyes") + +FIRMWARE_DIR=/lib/firmware +AC_ARG_WITH(firmware-dir, + [AS_HELP_STRING([--with-firmware-dir=DIR],[firmware directory [/lib/firmware]])], + if test "x$withval" != xyes; then FIRMWARE_DIR="$withval"; fi) +AC_SUBST(FIRMWARE_DIR) +AC_DEFINE_UNQUOTED(FIRMWARE_DIR, "$FIRMWARE_DIR", [Define the default path for the firmware.]) + +AC_ARG_WITH(alsa-dir, + [AS_HELP_STRING([--with-alsa-dir=DIR],[ALSA configuration directory [searched]])], + [], + [with_alsa_dir=search]) + +ALSA_DIR= +AS_IF([test "x$with_alsa_dir" != xno], + AS_IF([test "x$with_alsa_dir" = xyes || test "x$with_alsa_dir" = xsearch], + [AC_MSG_CHECKING([for alsa configuration directory]) + for dir in /usr/local/share/alsa /usr/share/alsa /etc/alsa; do + if test -f "${dir}/alsa.conf"; then + ALSA_DIR="$dir" + break + fi + done + if test "x$ALSA_DIR" = x; then + AC_MSG_RESULT([not found]) + else + AC_MSG_RESULT([$ALSA_DIR]) + fi + if test "x$ALSA_DIR" = x && test "x$with_alsa_dir" = xyes; then + AC_MSG_FAILURE( + [--with-alsa-dir was given but configuration directory was not found]) + fi], + [ALSA_DIR="$with_alsa_dir"])) +AC_SUBST(ALSA_DIR) + +AC_CONFIG_FILES([ + Makefile + include/Makefile + include/linux/Makefile + overlay/Makefile + dhc/Makefile + em8300setup/Makefile + scripts/Makefile +]) +AC_OUTPUT diff -Nru em8300-0.16.4/configure.in em8300-0.18.0/configure.in --- em8300-0.16.4/configure.in 2008-02-04 22:40:29.000000000 +0000 +++ em8300-0.18.0/configure.in 1970-01-01 01:00:00.000000000 +0100 @@ -1,101 +0,0 @@ -dnl Process this file with autoconf to produce a configure script. -AC_INIT(em8300setup/em8300setup.c) -dnl AC_PREREQ(2.50) -AC_PREREQ(2.13) -AC_CONFIG_AUX_DIR(autotools) - -EM8300_MAJOR=0 -EM8300_MINOR=16 -EM8300_SUB=4 -#EM8300_PRE=".cvs" -TAR_NAME="em8300-"$EM8300_MAJOR.$EM8300_MINOR.$EM8300_SUB$EM8300_PRE -AC_SUBST(EM8300_MAJOR) -AC_SUBST(EM8300_MINOR) -AC_SUBST(EM8300_SUB) -AC_SUBST(TAR_NAME) - -AC_PROG_CC - -AM_INIT_AUTOMAKE("em8300", $EM8300_MAJOR.$EM8300_MINOR.$EM8300_SUB$EM8300_PRE) - -AC_CANONICAL_HOST -AM_CONFIG_HEADER(include/config.h) - -dnl Checks for programs. -AC_PROG_MAKE_SET -AC_PROG_INSTALL - -dnl Checks for header files. -AC_HEADER_STDC -AC_CHECK_HEADERS(fcntl.h sys/ioctl.h unistd.h) - -dnl Checks for typedefs, structures, and compiler characteristics. -AC_C_CONST -AC_C_INLINE -AC_TYPE_OFF_T -AC_TYPE_SIZE_T -AC_HEADER_TIME - -dnl Checks for library functions. -AC_PROG_GCC_TRADITIONAL - -AC_SUBST(DEBUG_CFLAGS) -AC_SUBST(GLOBAL_CFLAGS) - -dnl Common cflags for all platforms -COMMON_CFLAGS="-Wall -D_FILE_OFFSET_BITS=64" - -GLOBAL_CFLAGS="$GLOBAL_CFLAGS $CFLAGS $COMMON_CFLAGS" -DEBUG_CFLAGS="$GLOBAL_CFLAGS $CFLAGS $COMMON_CFLAGS -DDEBUG" - -AM_PATH_GTK_2_0(2.0.0, has_gtk=yes, [has_gtk=no - AC_MSG_RESULT(*** GTK not found ***)]) - -if test x$has_gtk = xyes; then - AC_DEFINE(HAVE_GTK, 1, [Defined if you have GTK]) -fi -AM_CONDITIONAL(HAVE_GTK, test x$has_gtk = "xyes") - -FIRMWARE_DIR=/lib/firmware -AC_ARG_WITH(firmware-dir, - [AS_HELP_STRING([--with-firmware-dir=DIR],[firmware directory [/lib/firmware]])], - if test "x$withval" != xyes; then FIRMWARE_DIR="$withval"; fi) -AC_SUBST(FIRMWARE_DIR) -AC_DEFINE_UNQUOTED(FIRMWARE_DIR, "$FIRMWARE_DIR", [Define the default path for the firmware.]) - -AC_ARG_WITH(alsa-dir, - [AS_HELP_STRING([--with-alsa-dir=DIR],[ALSA configuration directory [searched]])], - [], - [with_alsa_dir=search]) - -ALSA_DIR= -AS_IF([test "x$with_alsa_dir" != xno], - AS_IF([test "x$with_alsa_dir" = xyes || test "x$with_alsa_dir" = xsearch], - [AC_MSG_CHECKING([for alsa configuration directory]) - for dir in /usr/local/share/alsa /usr/share/alsa /etc/alsa; do - if test -f "${dir}/alsa.conf"; then - ALSA_DIR="$dir" - break - fi - done - if test "x$ALSA_DIR" = x; then - AC_MSG_RESULT([not found]) - else - AC_MSG_RESULT([$ALSA_DIR]) - fi - if test "x$ALSA_DIR" = x && test "x$with_alsa_dir" = xyes; then - AC_MSG_FAILURE( - [--with-alsa-dir was given but configuration directory was not found]) - fi], - [ALSA_DIR="$with_alsa_dir"])) -AC_SUBST(ALSA_DIR) - -AC_OUTPUT([ - Makefile - include/Makefile - include/linux/Makefile - overlay/Makefile - dhc/Makefile - em8300setup/Makefile - scripts/Makefile -]) diff -Nru em8300-0.16.4/debian/changelog em8300-0.18.0/debian/changelog --- em8300-0.16.4/debian/changelog 2010-06-28 19:24:26.000000000 +0100 +++ em8300-0.18.0/debian/changelog 2010-06-28 17:27:30.000000000 +0100 @@ -1,3 +1,34 @@ +em8300 (0.18.0-0yavdr1) lucid; urgency=low + + * New upstream snapshot + + -- Holger Schvestka Mon, 28 Jun 2010 18:27:03 +0200 + +em8300 (0.18.0-0prodeia2~lucid1) lucid; urgency=low + + * debian/control: Added missing build-dependency for cpio + + -- Roman Müllenschläder Mon, 08 Feb 2010 08:37:37 +0100 + +em8300 (0.18.0-0prodeia1~lucid1) lucid; urgency=low + + * New upstream release + * debian/config.h.good: Adapted + * debian/patches/00list: Commented all patches, as they are pre- + upstream patches + * debian/control: Updated standards-version to 3.8.3 + * debian/control: Added as dependency to binary package em8300-bin + for to fullfill debhelpers dependencies + * debian/control: Added as dependency to binary package em8300-source + for to fullfill debhelpers dependencies + * debian/control: Added as dependency to binary package em8300- + headers for to fullfill debhelpers dependencies + * debian/compat: Updated to 5 + * debian/control: Updated build-depend for debhelper to >=5 + * debian/control: Removed duplicate Section entries + + -- Roman Müllenschläder Sat, 06 Feb 2010 11:18:01 +0100 + em8300 (0.16.4-4) unstable; urgency=low * Fix compatibility with linux 2.6.26 by using the relevant mercurial diff -Nru em8300-0.16.4/debian/compat em8300-0.18.0/debian/compat --- em8300-0.16.4/debian/compat 2010-06-28 19:24:26.000000000 +0100 +++ em8300-0.18.0/debian/compat 2010-06-28 17:23:30.000000000 +0100 @@ -1 +1 @@ -4 +5 diff -Nru em8300-0.16.4/debian/config.h.good em8300-0.18.0/debian/config.h.good --- em8300-0.16.4/debian/config.h.good 2010-06-28 19:24:26.000000000 +0100 +++ em8300-0.18.0/debian/config.h.good 2010-06-28 18:34:59.000000000 +0100 @@ -1,5 +1,5 @@ /* include/config.h. Generated from config.h.in by configure. */ -/* include/config.h.in. Generated from configure.in by autoheader. */ +/* include/config.h.in. Generated from configure.ac by autoheader. */ /* Define the default path for the firmware. */ #define FIRMWARE_DIR "/lib/firmware" @@ -40,33 +40,12 @@ /* Define to 1 if you have the header file. */ #define HAVE_UNISTD_H 1 -/* Name of package */ -#define PACKAGE "em8300" - -/* Define to the address where bug reports for this package should be sent. */ -#define PACKAGE_BUGREPORT "" - -/* Define to the full name of this package. */ -#define PACKAGE_NAME "" - -/* Define to the full name and version of this package. */ -#define PACKAGE_STRING "" - -/* Define to the one symbol short name of this package. */ -#define PACKAGE_TARNAME "" - -/* Define to the version of this package. */ -#define PACKAGE_VERSION "" - /* Define to 1 if you have the ANSI C header files. */ #define STDC_HEADERS 1 /* Define to 1 if you can safely include both and . */ #define TIME_WITH_SYS_TIME 1 -/* Version number of package */ -#define VERSION "0.16.4" - /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ diff -Nru em8300-0.16.4/debian/control em8300-0.18.0/debian/control --- em8300-0.16.4/debian/control 2010-06-28 19:24:26.000000000 +0100 +++ em8300-0.18.0/debian/control 2010-06-28 17:23:30.000000000 +0100 @@ -2,11 +2,10 @@ Section: contrib/graphics Priority: optional Maintainer: Nicolas Boullis -Build-Depends: debhelper (>> 4.1.16), libgtk2.0-dev, bzip2, dpatch -Standards-Version: 3.7.3 +Build-Depends: debhelper (>= 5), libgtk2.0-dev, bzip2, dpatch, cpio +Standards-Version: 3.8.3 Package: em8300 -Section: contrib/graphics Architecture: any Depends: ${perl:Depends}, ${misc:Depends}, ucf (>= 0.28), wget Description: Drivers for DXR3/Hollywood+ decoder cards @@ -20,8 +19,8 @@ This package contains programs to setup the card. Package: em8300-source -Section: contrib/graphics Architecture: all +Depends: ${misc:Depends} Recommends: bzip2, linux-source | kernel-source | linux-headers | kernel-headers, kernel-package | module-assistant Description: Kernel module for DXR3/Hollywood+ decoder cards (source) Drivers for MPEG decoder cards based on Sigma Designs' EM8300 chip @@ -34,9 +33,8 @@ Source code of kernel modules needed to access the specified cards. Package: em8300-bin -Section: contrib/graphics Architecture: any -Depends: ${shlibs:Depends}, em8300 (>= ${binary:Version}) +Depends: ${misc:Depends}, ${shlibs:Depends}, em8300 (>= ${binary:Version}) Description: Tools to setup DXR3/Hollywood+ decoder cards Utilities to configure MPEG decoder cards based on Sigma Designs' EM8300 chip (such as the Creative Labs DXR3 or the Sigma Designs Hollywood+). @@ -55,6 +53,7 @@ Package: em8300-headers Architecture: all +Depends: ${misc:Depends} Section: contrib/devel Description: Kernel headers to access DXR3/Hollywood+ decoder cards This package provides header files needed to compile applications that diff -Nru em8300-0.16.4/debian/patches/00list em8300-0.18.0/debian/patches/00list --- em8300-0.16.4/debian/patches/00list 2010-06-28 19:24:26.000000000 +0100 +++ em8300-0.18.0/debian/patches/00list 2010-06-28 17:23:30.000000000 +0100 @@ -1,6 +1,6 @@ -01_compat_2.6.25 -02_compat_2.6.26 -05_modules_Makefile -10_modules_em8300_header -90_modules_defaults_conffile -95_version +#01_compat_2.6.25 +#02_compat_2.6.26 +#05_modules_Makefile +#10_modules_em8300_header +#90_modules_defaults_conffile +#95_version diff -Nru em8300-0.16.4/debian/rules em8300-0.18.0/debian/rules --- em8300-0.16.4/debian/rules 2010-06-28 19:24:26.000000000 +0100 +++ em8300-0.18.0/debian/rules 2010-06-28 19:14:36.000000000 +0100 @@ -141,7 +141,7 @@ dh_installcron -i dh_installman -i dh_installinfo -i - dh_installchangelogs ChangeLog -i +# dh_installchangelogs ChangeLog -i dh_strip -i dh_link -i dh_compress -i @@ -166,7 +166,7 @@ dh_installcron -a dh_installman -a dh_installinfo -a - dh_installchangelogs ChangeLog -a +# dh_installchangelogs ChangeLog -a dh_strip -a dh_link -a dh_compress -a diff -Nru em8300-0.16.4/dhc/Makefile.in em8300-0.18.0/dhc/Makefile.in --- em8300-0.16.4/dhc/Makefile.in 2008-02-04 22:52:20.000000000 +0000 +++ em8300-0.18.0/dhc/Makefile.in 2010-06-28 18:16:35.000000000 +0100 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.9.6 from Makefile.am. +# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -16,15 +17,12 @@ -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = .. +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c @@ -43,22 +41,23 @@ DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/configure.in +am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/include/config.h CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = am__installdirs = "$(DESTDIR)$(bindir)" -binPROGRAMS_INSTALL = $(INSTALL_PROGRAM) PROGRAMS = $(bin_PROGRAMS) am_dhc_OBJECTS = dhc_main.$(OBJEXT) dhc_callback.$(OBJEXT) \ dhc_gui.$(OBJEXT) dhc_OBJECTS = $(am_dhc_OBJECTS) dhc_LDADD = $(LDADD) -DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/include +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include depcomp = $(SHELL) $(top_srcdir)/autotools/depcomp am__depfiles_maybe = depfiles +am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) @@ -72,8 +71,6 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALSA_DIR = @ALSA_DIR@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ @@ -92,17 +89,13 @@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ -EM8300_MAJOR = @EM8300_MAJOR@ -EM8300_MINOR = @EM8300_MINOR@ -EM8300_SUB = @EM8300_SUB@ EXEEXT = @EXEEXT@ FIRMWARE_DIR = @FIRMWARE_DIR@ GLOBAL_CFLAGS = @GLOBAL_CFLAGS@ GREP = @GREP@ GTK_CFLAGS = @GTK_CFLAGS@ GTK_LIBS = @GTK_LIBS@ -HAVE_GTK_FALSE = @HAVE_GTK_FALSE@ -HAVE_GTK_TRUE = @HAVE_GTK_TRUE@ +INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ @@ -111,24 +104,29 @@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ +OVERLAY_LIBS = @OVERLAY_LIBS@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ -TAR_NAME = @TAR_NAME@ VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ @@ -140,6 +138,7 @@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ +builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ @@ -167,8 +166,12 @@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ EXTRA_DIST = dhc.desktop AM_CFLAGS = @GLOBAL_CFLAGS@ $(GTK_CFLAGS) INCLUDES = -I@top_srcdir@/include @@ -181,18 +184,18 @@ .SUFFIXES: .SUFFIXES: .c .o .obj -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu dhc/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu dhc/Makefile + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu dhc/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu dhc/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ @@ -206,36 +209,51 @@ $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(top_srcdir)/configure: $(am__configure_deps) +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) - test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)" - @list='$(bin_PROGRAMS)'; for p in $$list; do \ - p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \ - if test -f $$p \ - ; then \ - f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \ - echo " $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \ - $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \ - else :; fi; \ - done + test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)" + @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ + for p in $$list; do echo "$$p $$p"; done | \ + sed 's/$(EXEEXT)$$//' | \ + while read p p1; do if test -f $$p; \ + then echo "$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \ + -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ + sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) files[d] = files[d] " " $$1; \ + else { print "f", $$3 "/" $$4, $$1; } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \ + $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ + } \ + ; done uninstall-binPROGRAMS: @$(NORMAL_UNINSTALL) - @list='$(bin_PROGRAMS)'; for p in $$list; do \ - f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \ - echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \ - rm -f "$(DESTDIR)$(bindir)/$$f"; \ - done + @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ + -e 's/$$/$(EXEEXT)/' `; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(bindir)" && rm -f $$files clean-binPROGRAMS: -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) dhc$(EXEEXT): $(dhc_OBJECTS) $(dhc_DEPENDENCIES) @rm -f dhc$(EXEEXT) - $(LINK) $(dhc_LDFLAGS) $(dhc_OBJECTS) $(dhc_LDADD) $(LIBS) + $(LINK) $(dhc_OBJECTS) $(dhc_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -248,92 +266,98 @@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dhc_main.Po@am__quote@ .c.o: -@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ -@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: -@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \ -@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` -uninstall-info-am: ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) - tags=; \ + set x; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - test -z "$(CTAGS_ARGS)$$tags$$unique" \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique + $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ - esac; \ + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @@ -342,7 +366,7 @@ all-am: Makefile $(PROGRAMS) $(DATA) $(HEADERS) installdirs: for dir in "$(DESTDIR)$(bindir)"; do \ - test -z "$$dir" || $(mkdir_p) "$$dir"; \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am @@ -364,6 +388,7 @@ distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) clean: clean-am clean-am: clean-binPROGRAMS clean-generic mostlyclean-am @@ -380,18 +405,38 @@ html: html-am +html-am: + info: info-am info-am: install-data-am: +install-dvi: install-dvi-am + +install-dvi-am: + install-exec-am: install-binPROGRAMS +install-html: install-html-am + +install-html-am: + install-info: install-info-am +install-info-am: + install-man: +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + installcheck-am: maintainer-clean: maintainer-clean-am @@ -411,18 +456,22 @@ ps-am: -uninstall-am: uninstall-binPROGRAMS uninstall-info-am +uninstall-am: uninstall-binPROGRAMS + +.MAKE: install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \ clean-generic ctags distclean distclean-compile \ distclean-generic distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-am install-binPROGRAMS \ - install-data install-data-am install-exec install-exec-am \ - install-info install-info-am install-man install-strip \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ - uninstall-am uninstall-binPROGRAMS uninstall-info-am + uninstall-am uninstall-binPROGRAMS dhc.xpm: @@ -440,6 +489,7 @@ -@echo "This command is intended for maintainers to use;" -@echo "it deletes files that may require special tools to rebuild." -rm -f Makefile.in + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: diff -Nru em8300-0.16.4/em8300setup/Makefile.in em8300-0.18.0/em8300setup/Makefile.in --- em8300-0.16.4/em8300setup/Makefile.in 2008-02-04 22:52:20.000000000 +0000 +++ em8300-0.18.0/em8300setup/Makefile.in 2010-06-28 18:16:35.000000000 +0100 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.9.6 from Makefile.am. +# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -15,15 +16,12 @@ @SET_MAKE@ -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = .. +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c @@ -42,27 +40,49 @@ DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/configure.in +am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/include/config.h CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)" -binPROGRAMS_INSTALL = $(INSTALL_PROGRAM) PROGRAMS = $(bin_PROGRAMS) am_em8300setup_OBJECTS = em8300setup.$(OBJEXT) em8300setup_OBJECTS = $(am_em8300setup_OBJECTS) em8300setup_LDADD = $(LDADD) -DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/include +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include depcomp = $(SHELL) $(top_srcdir)/autotools/depcomp am__depfiles_maybe = depfiles +am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ SOURCES = $(em8300setup_SOURCES) DIST_SOURCES = $(em8300setup_SOURCES) +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' man1dir = $(mandir)/man1 NROFF = nroff MANS = $(man_MANS) @@ -72,8 +92,6 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALSA_DIR = @ALSA_DIR@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ @@ -92,17 +110,13 @@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ -EM8300_MAJOR = @EM8300_MAJOR@ -EM8300_MINOR = @EM8300_MINOR@ -EM8300_SUB = @EM8300_SUB@ EXEEXT = @EXEEXT@ FIRMWARE_DIR = @FIRMWARE_DIR@ GLOBAL_CFLAGS = @GLOBAL_CFLAGS@ GREP = @GREP@ GTK_CFLAGS = @GTK_CFLAGS@ GTK_LIBS = @GTK_LIBS@ -HAVE_GTK_FALSE = @HAVE_GTK_FALSE@ -HAVE_GTK_TRUE = @HAVE_GTK_TRUE@ +INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ @@ -111,24 +125,29 @@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ +OVERLAY_LIBS = @OVERLAY_LIBS@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ -TAR_NAME = @TAR_NAME@ VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ @@ -140,6 +159,7 @@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ +builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ @@ -167,8 +187,12 @@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ AM_CFLAGS = @GLOBAL_CFLAGS@ INCLUDES = -I@top_srcdir@/include man_MANS = em8300setup.1 @@ -179,18 +203,18 @@ .SUFFIXES: .SUFFIXES: .c .o .obj -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu em8300setup/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu em8300setup/Makefile + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu em8300setup/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu em8300setup/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ @@ -204,36 +228,51 @@ $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(top_srcdir)/configure: $(am__configure_deps) +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) - test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)" - @list='$(bin_PROGRAMS)'; for p in $$list; do \ - p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \ - if test -f $$p \ - ; then \ - f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \ - echo " $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \ - $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \ - else :; fi; \ - done + test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)" + @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ + for p in $$list; do echo "$$p $$p"; done | \ + sed 's/$(EXEEXT)$$//' | \ + while read p p1; do if test -f $$p; \ + then echo "$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \ + -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ + sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) files[d] = files[d] " " $$1; \ + else { print "f", $$3 "/" $$4, $$1; } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \ + $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ + } \ + ; done uninstall-binPROGRAMS: @$(NORMAL_UNINSTALL) - @list='$(bin_PROGRAMS)'; for p in $$list; do \ - f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \ - echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \ - rm -f "$(DESTDIR)$(bindir)/$$f"; \ - done + @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ + -e 's/$$/$(EXEEXT)/' `; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(bindir)" && rm -f $$files clean-binPROGRAMS: -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) em8300setup$(EXEEXT): $(em8300setup_OBJECTS) $(em8300setup_DEPENDENCIES) @rm -f em8300setup$(EXEEXT) - $(LINK) $(em8300setup_LDFLAGS) $(em8300setup_OBJECTS) $(em8300setup_LDADD) $(LIBS) + $(LINK) $(em8300setup_OBJECTS) $(em8300setup_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -244,137 +283,149 @@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/em8300setup.Po@am__quote@ .c.o: -@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ -@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: -@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \ -@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` -uninstall-info-am: -install-man1: $(man1_MANS) $(man_MANS) +install-man1: $(man_MANS) @$(NORMAL_INSTALL) - test -z "$(man1dir)" || $(mkdir_p) "$(DESTDIR)$(man1dir)" - @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \ - l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ - for i in $$l2; do \ - case "$$i" in \ - *.1*) list="$$list $$i" ;; \ - esac; \ + test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)" + @list=''; test -n "$(man1dir)" || exit 0; \ + { for i in $$list; do echo "$$i"; done; \ + l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ + sed -n '/\.1[a-z]*$$/p'; \ + } | while read p; do \ + if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; echo "$$p"; \ + done | \ + sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \ + -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \ + sed 'N;N;s,\n, ,g' | { \ + list=; while read file base inst; do \ + if test "$$base" = "$$inst"; then list="$$list $$file"; else \ + echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \ + $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \ + fi; \ done; \ - for i in $$list; do \ - if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \ - else file=$$i; fi; \ - ext=`echo $$i | sed -e 's/^.*\\.//'`; \ - case "$$ext" in \ - 1*) ;; \ - *) ext='1' ;; \ - esac; \ - inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ - inst=`echo $$inst | sed -e 's/^.*\///'`; \ - inst=`echo $$inst | sed '$(transform)'`.$$ext; \ - echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \ - $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst"; \ - done + for i in $$list; do echo "$$i"; done | $(am__base_list) | \ + while read files; do \ + test -z "$$files" || { \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \ + done; } + uninstall-man1: @$(NORMAL_UNINSTALL) - @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \ - l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ - for i in $$l2; do \ - case "$$i" in \ - *.1*) list="$$list $$i" ;; \ - esac; \ - done; \ - for i in $$list; do \ - ext=`echo $$i | sed -e 's/^.*\\.//'`; \ - case "$$ext" in \ - 1*) ;; \ - *) ext='1' ;; \ - esac; \ - inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ - inst=`echo $$inst | sed -e 's/^.*\///'`; \ - inst=`echo $$inst | sed '$(transform)'`.$$ext; \ - echo " rm -f '$(DESTDIR)$(man1dir)/$$inst'"; \ - rm -f "$(DESTDIR)$(man1dir)/$$inst"; \ - done + @list=''; test -n "$(man1dir)" || exit 0; \ + files=`{ for i in $$list; do echo "$$i"; done; \ + l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ + sed -n '/\.1[a-z]*$$/p'; \ + } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \ + -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \ + test -z "$$files" || { \ + echo " ( cd '$(DESTDIR)$(man1dir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(man1dir)" && rm -f $$files; } ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) - tags=; \ + set x; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - test -z "$(CTAGS_ARGS)$$tags$$unique" \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique + $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ - esac; \ + @list='$(MANS)'; if test -n "$$list"; then \ + list=`for p in $$list; do \ + if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ + if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \ + if test -n "$$list" && \ + grep 'ab help2man is required to generate this page' $$list >/dev/null; then \ + echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \ + grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \ + echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \ + echo " typically \`make maintainer-clean' will remove them" >&2; \ + exit 1; \ + else :; fi; \ + else :; fi + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @@ -383,7 +434,7 @@ all-am: Makefile $(PROGRAMS) $(MANS) $(HEADERS) installdirs: for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)"; do \ - test -z "$$dir" || $(mkdir_p) "$$dir"; \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am @@ -404,6 +455,7 @@ distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) clean: clean-am clean-am: clean-binPROGRAMS clean-generic mostlyclean-am @@ -420,18 +472,38 @@ html: html-am +html-am: + info: info-am info-am: install-data-am: install-man +install-dvi: install-dvi-am + +install-dvi-am: + install-exec-am: install-binPROGRAMS +install-html: install-html-am + +install-html-am: + install-info: install-info-am +install-info-am: + install-man: install-man1 +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + installcheck-am: maintainer-clean: maintainer-clean-am @@ -451,21 +523,25 @@ ps-am: -uninstall-am: uninstall-binPROGRAMS uninstall-info-am uninstall-man +uninstall-am: uninstall-binPROGRAMS uninstall-man uninstall-man: uninstall-man1 +.MAKE: install-am install-strip + .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \ clean-generic ctags distclean distclean-compile \ distclean-generic distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-am install-binPROGRAMS \ - install-data install-data-am install-exec install-exec-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ install-info install-info-am install-man install-man1 \ + install-pdf install-pdf-am install-ps install-ps-am \ install-strip installcheck installcheck-am installdirs \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \ tags uninstall uninstall-am uninstall-binPROGRAMS \ - uninstall-info-am uninstall-man uninstall-man1 + uninstall-man uninstall-man1 debug: @@ -478,6 +554,7 @@ -@echo "This command is intended for maintainers to use;" -@echo "it deletes files that may require special tools to rebuild." -rm -f Makefile.in + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: diff -Nru em8300-0.16.4/.hgignore em8300-0.18.0/.hgignore --- em8300-0.16.4/.hgignore 1970-01-01 01:00:00.000000000 +0100 +++ em8300-0.18.0/.hgignore 2010-06-28 18:12:31.000000000 +0100 @@ -0,0 +1,39 @@ +~$ +\.o$ +^(.*/)?\.deps/.*\.Po$ +^ChangeLog$ +^INSTALL$ +^Makefile$ +^Makefile\.in$ +^aclocal\.m4$ +^autotools/ +^config\.log$ +^config\.status$ +^configure$ +^dhc/Makefile$ +^dhc/Makefile\.in$ +^dhc/dhc$ +^dhc/dhc\.xpm$ +^em8300-[^/]+\.tar\.gz$ +^em8300setup/Makefile$ +^em8300setup/Makefile\.in$ +^em8300setup/em8300setup$ +^include/Makefile$ +^include/Makefile\.in$ +^include/config\.h$ +^include/config\.h\.in$ +^include/linux/Makefile$ +^include/linux/Makefile\.in$ +^include/stamp-h1$ +^modules/em8300_version.h$ +^modules/Module\.symvers$ +^modules/\.tmp_versions/ +^modules/\..*\.cmd$ +^modules/.*\.ko$ +^modules/.*\.mod\.c$ +^overlay/Makefile$ +^overlay/Makefile\.in$ +^overlay/autocal$ +^overlay/dxr3view$ +^scripts/Makefile$ +^scripts/Makefile\.in$ diff -Nru em8300-0.16.4/.hgtags em8300-0.18.0/.hgtags --- em8300-0.16.4/.hgtags 1970-01-01 01:00:00.000000000 +0100 +++ em8300-0.18.0/.hgtags 2010-06-28 18:12:31.000000000 +0100 @@ -0,0 +1,17 @@ +05c2b69504112e4f0e9df7a38796d5ab8897cfac EM8300-0-16-1 +0641d89eed7508e82f87c1c63e2116092efafb3e EM8300-0-16-3 +2d58c110158d5a46d073eef0a794e03950e63897 EM8300-0-15-3-ALSA +5b407cb86476ca60e6a629a704746eb29ba52f46 EM8300-0-15-1 +5d4c99018e29eee0d9be92dbc655aeb2a0459b01 EM8300-0-15-3 +6bd292dc067f2d0a803f0935f09531fe651808eb EM8300-0-15-2-ALSA +6fb91484f2ef3827b5dba230780037f6f0c0a5c1 EM8300-0-16-0 +78967953c927810e24c261cc8ccf0fd84f665b78 EM8300-0-16-2 +959e08102744d589a3bc8707a2b87dbab5fa098d EM8300-0-16-4 +a07e8f529757723dcc98c15c2cf07571298fbf42 EM8300-0-15-2 +ef5f287951657f2bed6f105df9ce0312820e6fa8 EM8300-0-15-0 +d0f24fd9aac655bf605cde772894d359f2001105 EM8300-0-17-0 +7750fa0b31853e9c06f4e2ff1356e8c07df45cf2 EM8300-0-17-1 +9c1864a75d5857a4d870a00dac3cd664a3305f1f EM8300-0-17-2 +6176f5124394fd0f4a23b79f914733e22ca896a9 EM8300-0-17-3 +2e948ecefdf19430635ae282f9ef03217511352f EM8300-0-17-4 +27ac4f10d8f20bab3c45aadc0f09ee2b2f1f746b EM8300-0-18-0 diff -Nru em8300-0.16.4/include/config.h.in em8300-0.18.0/include/config.h.in --- em8300-0.16.4/include/config.h.in 2008-02-04 22:52:18.000000000 +0000 +++ em8300-0.18.0/include/config.h.in 2010-06-28 18:37:10.000000000 +0100 @@ -1,4 +1,4 @@ -/* include/config.h.in. Generated from configure.in by autoheader. */ +/* include/config.h.in. Generated from configure.ac by autoheader. */ /* Define the default path for the firmware. */ #undef FIRMWARE_DIR @@ -39,33 +39,12 @@ /* Define to 1 if you have the header file. */ #undef HAVE_UNISTD_H -/* Name of package */ -#undef PACKAGE - -/* Define to the address where bug reports for this package should be sent. */ -#undef PACKAGE_BUGREPORT - -/* Define to the full name of this package. */ -#undef PACKAGE_NAME - -/* Define to the full name and version of this package. */ -#undef PACKAGE_STRING - -/* Define to the one symbol short name of this package. */ -#undef PACKAGE_TARNAME - -/* Define to the version of this package. */ -#undef PACKAGE_VERSION - /* Define to 1 if you have the ANSI C header files. */ #undef STDC_HEADERS /* Define to 1 if you can safely include both and . */ #undef TIME_WITH_SYS_TIME -/* Version number of package */ -#undef VERSION - /* Define to empty if `const' does not conform to ANSI C. */ #undef const diff -Nru em8300-0.16.4/include/linux/em8300.h em8300-0.18.0/include/linux/em8300.h --- em8300-0.16.4/include/linux/em8300.h 2008-01-02 23:17:29.000000000 +0000 +++ em8300-0.18.0/include/linux/em8300.h 2010-06-28 18:12:31.000000000 +0100 @@ -1,3 +1,32 @@ +/* + * em8300.h + * + * Copyright (C) 2000 Henrik Johansson + * (C) 2000 Ze'ev Maor + * (C) 2001 Rick Haines + * (C) 2001 Edward Salley + * (C) 2001 Jeremy T. Braun + * (C) 2001 Ralph Zimmermann + * (C) 2001 Daniel Chassot + * (C) 2002 Michael Hunold + * (C) 2002-2003 David Holm + * (C) 2003-2008 Nicolas Boullis + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + #ifndef LINUX_EM8300_H #define LINUX_EM8300_H @@ -54,7 +83,6 @@ #define EM8300_IOCTL_INIT _IOW('C',0,em8300_microcode_t) #define EM8300_IOCTL_READREG _IOWR('C',1,em8300_register_t) #define EM8300_IOCTL_WRITEREG _IOW('C',2,em8300_register_t) -#define EM8300_IOCTL_GETSTATUS _IOR('C',3,char[1024]) #define EM8300_IOCTL_SETBCS _IOW('C',4,em8300_bcs_t) #define EM8300_IOCTL_GETBCS _IOR('C',4,em8300_bcs_t) #define EM8300_IOCTL_SET_ASPECTRATIO _IOW('C',5,int) @@ -85,13 +113,13 @@ #define EM8300_OVERLAY_SIGNAL_WITH_VGA 2 #define EM8300_OVERLAY_VGA_ONLY 3 -#define EM8300_IOCTL_VIDEO_SETPTS 1 +#define EM8300_IOCTL_VIDEO_SETPTS _IOW('C',1,int) #define EM8300_IOCTL_VIDEO_GETSCR _IOR('C',2,unsigned) #define EM8300_IOCTL_VIDEO_SETSCR _IOW('C',2,unsigned) -#define EM8300_IOCTL_SPU_SETPTS 1 -#define EM8300_IOCTL_SPU_SETPALETTE 2 -#define EM8300_IOCTL_SPU_BUTTON 3 +#define EM8300_IOCTL_SPU_SETPTS _IOW('C',1,int) +#define EM8300_IOCTL_SPU_SETPALETTE _IOW('C',2,unsigned[16]) +#define EM8300_IOCTL_SPU_BUTTON _IOW('C',3,em8300_button_t) #define EM8300_ASPECTRATIO_4_3 0 #define EM8300_ASPECTRATIO_16_9 1 @@ -190,328 +218,4 @@ #define ENCODER_ADV7170 2 #define ENCODER_BT865 3 -#ifdef __KERNEL__ - -#define EM8300_MAX 4 - -#define EM8300_MAJOR 121 -#define EM8300_LOGNAME "em8300" -extern int major; - -#include -#include /* ulong, uint32_t */ -#include /* struct i2c_adapter */ -#include /* struct i2c_algo_bit_data */ -#include /* struct timeval */ -#include /* wait_queue_head_t */ -#include /* struct list_head */ - -#if defined(CONFIG_SND) || defined(CONFIG_SND_MODULE) -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) -#define snd_card_t struct snd_card -#else -#include -#include -#include -#endif -#endif - -struct dicom_s { - int luma; - int chroma; - int frametop; - int framebottom; - int frameleft; - int frameright; - int visibletop; - int visiblebottom; - int visibleleft; - int visibleright; - int tvout; -}; - -struct displaybuffer_info_s { - int xsize; - int ysize; - int xsize2; - int flag1,flag2; - int buffer1; - int buffer2; - int unk_present; - int unknown1; - int unknown2; - int unknown3; -}; - -struct em8300_audio_s { - int channels; - int format; - int speed; - int slotsize; - int enable_bits; -}; - -struct em8300_s -{ - char name[40]; - - int chip_revision; - int pci_revision; - - int inuse[4]; - int nonblock[4]; - int ucodeloaded; - - struct pci_dev *dev; - ulong adr; - volatile unsigned *mem; - ulong memsize; - - int playmode; - - /* Sysfs */ -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,46) - struct class_device *classdev; - struct class_device *classdev_mv; - struct class_device *classdev_ma; - struct class_device *classdev_sp; -#endif - -#if defined(CONFIG_SND) || defined(CONFIG_SND_MODULE) - snd_card_t *alsa_card; -#endif - - /* Fifos */ - struct fifo_s *mvfifo; - struct fifo_s *mafifo; - struct fifo_s *spfifo; - int mtrr_reg; - - /* DICOM */ - int dicom_vertoffset; - int dicom_horizoffset; - int dicom_brightness; - int dicom_contrast; - int dicom_saturation; - int dicom_tvout; - struct displaybuffer_info_s dbuf_info; - - /* I2C */ - int i2c_pin_reg; - int i2c_oe_reg; - - /* different between revision 1 and revision 2 boards */ - int mystery_divisor; - - /* I2C bus 1*/ - struct i2c_algo_bit_data i2c_data_1; - struct i2c_adapter i2c_ops_1; - - /* I2C bus 2*/ - struct i2c_algo_bit_data i2c_data_2; - struct i2c_adapter i2c_ops_2; - - /* I2C clients */ - int encoder_type; - struct i2c_client *encoder; - - /* Microcode registers */ - unsigned ucode_regs[MAX_UCODE_REGISTER]; - int var_ucode_reg1; /* These are registers that differ */ - int var_ucode_reg2; /* between versions 1 and 2 of the board */ - int var_ucode_reg3; /* " */ - - /* Interrupt */ - unsigned irqmask; - - /* Clockgenerator */ - int clockgen; - int clockgen_overlaymode; - int clockgen_tvmode; - - /* Timing measurement */ - struct timeval tv, last_status_time; - long irqtimediff; - int irqcount; - int frames; - int scr; - - /* Audio */ - struct em8300_audio_s audio; - int audio_mode; - int pcm_mode; - int dsp_num; - /* Channel status for S/PDIF */ - unsigned int channel_status_pos; - unsigned char channel_status[24]; - - /* Video */ - int video_mode; - int video_playmode; - int aspect_ratio; - int zoom; - uint32_t video_pts; - uint32_t video_lastpts; - int video_ptsvalid,video_offset,video_count; - int video_ptsfifo_ptr; -#if LINUX_VERSION_CODE < 0x020314 - struct wait_queue *video_ptsfifo_wait; - struct wait_queue *vbi_wait; -#else - wait_queue_head_t video_ptsfifo_wait; - wait_queue_head_t vbi_wait; -#endif - int video_ptsfifo_waiting; - int video_first; - int var_video_value; - - /* Sub Picture */ - int sp_pts, sp_ptsvalid, sp_count; - int sp_ptsfifo_ptr; -#if LINUX_VERSION_CODE < 0x020314 - struct wait_queue *sp_ptsfifo_wait; -#else - wait_queue_head_t sp_ptsfifo_wait; -#endif - int sp_ptsfifo_waiting; - int sp_mode; - - int linecounter; - - /* EM9010 overlay processor */ - int overlay_enabled; - int overlay_mode; - int overlay_gamma_enable; - int overlay_xres; - int overlay_yres; - int overlay_frame_xpos; - int overlay_frame_ypos; - int overlay_frame_width; - int overlay_frame_height; - int overlay_a[EM9010_ATTRIBUTE_MAX+1]; - int overlay_double_y; - int overlay_xcorr_default; - int overlay_70; - int overlay_dword_24bb8; - -#if LINUX_VERSION_CODE > KERNEL_VERSION(2,4,0) - /* Memory exported via mmap() */ - struct list_head memory; -#endif - - /* Checksum for the on-board eeprom */ - u8 *eeprom_checksum; - - /* To support different options for different cards */ - unsigned int card_nr; -}; - -#if defined(CONFIG_SND) || defined(CONFIG_SND_MODULE) -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) -#undef snd_card_t -#endif -#endif - -#define TIMEDIFF(a,b) a.tv_usec - b.tv_usec + \ - 1000000 * (a.tv_sec - b.tv_sec) - - -/* - Prototypes -*/ - -/* em8300_i2c.c */ -int em8300_i2c_init1(struct em8300_s *em); -int em8300_i2c_init2(struct em8300_s *em); -void em8300_i2c_exit(struct em8300_s *em); -void em8300_clockgen_write(struct em8300_s *em, int abyte); - -void em9010_write(struct em8300_s *em, int reg, int data); -int em9010_read(struct em8300_s *em, int reg); -int em9010_read16(struct em8300_s *em, int reg); -void em9010_write16(struct em8300_s *em, int reg, int value); - -/* em8300_audio.c */ -int em8300_audio_ioctl(struct em8300_s *em,unsigned int cmd, unsigned long arg); -int em8300_audio_flush(struct em8300_s *em); -int em8300_audio_open(struct em8300_s *em); -int em8300_audio_release(struct em8300_s *em); -int em8300_audio_setup(struct em8300_s *em); -ssize_t em8300_audio_write(struct em8300_s *em, const char * buf, - size_t count, loff_t *ppos); -int mpegaudio_command(struct em8300_s *em, int cmd); - -/* em8300_ucode.c */ -void em8300_ucode_upload(struct em8300_s *em, void *ucode, int ucode_size); -void em8300_require_ucode(struct em8300_s *em); - -/* em8300_misc.c */ -int em8300_setregblock(struct em8300_s *em, int offset, int val, int len); -int em8300_writeregblock(struct em8300_s *em, int offset, unsigned *buf, int len); -int em8300_waitfor(struct em8300_s *em, int reg, int val, int mask); -int em8300_waitfor_not(struct em8300_s *em, int reg, int val, int mask); - -/* em8300_dicom.c */ -void em8300_dicom_setBCS(struct em8300_s *em, int brightness, int contrast, int saturation); -void em8300_dicom_enable(struct em8300_s *em); -void em8300_dicom_disable(struct em8300_s *em); -int em8300_dicom_update(struct em8300_s *em); -void em8300_dicom_init(struct em8300_s *em); -int em8300_dicom_get_dbufinfo(struct em8300_s *em); -void em8300_dicom_fill_dispbuffers(struct em8300_s *em, int xpos, int ypos, int xsize, - int ysize, unsigned int pat1, unsigned int pat2); - -/* em8300_video.c */ -void em8300_video_open(struct em8300_s *em); -int em8300_video_setplaymode(struct em8300_s *em, int mode); -int em8300_video_sync(struct em8300_s *em); -int em8300_video_flush(struct em8300_s *em); -int em8300_video_setup(struct em8300_s *em); -int em8300_video_release(struct em8300_s *em); -void em8300_video_setspeed(struct em8300_s *em, int speed); -ssize_t em8300_video_write(struct em8300_s *em, const char * buf, - size_t count, loff_t *ppos); -int em8300_video_ioctl(struct em8300_s *em, unsigned int cmd, unsigned long arg); -void em8300_video_check_ptsfifo(struct em8300_s *em); - -/* em8300_spu.c */ -ssize_t em8300_spu_write(struct em8300_s *em, const char * buf, - size_t count, loff_t *ppos); -int em8300_spu_open(struct em8300_s *em); -int em8300_spu_ioctl(struct em8300_s *em, unsigned int cmd, unsigned long arg); -int em8300_spu_init(struct em8300_s *em); -void em8300_spu_check_ptsfifo(struct em8300_s *em); -int em8300_ioctl_setspumode(struct em8300_s *em, int mode); -void em8300_spu_release(struct em8300_s *em); - -/* em8300_ioctl.c */ -int em8300_control_ioctl(struct em8300_s *em, int cmd, unsigned long arg); -int em8300_ioctl_setvideomode(struct em8300_s *em, int mode); -int em8300_ioctl_setaspectratio(struct em8300_s *em, int ratio); -int em8300_ioctl_getstatus(struct em8300_s *em, char *usermsg); -int em8300_ioctl_init(struct em8300_s *em, em8300_microcode_t *useruc); -void em8300_ioctl_enable_videoout(struct em8300_s *em, int mode); -int em8300_ioctl_setplaymode(struct em8300_s *em, int mode); -int em8300_ioctl_setaudiomode(struct em8300_s *em, int mode); -int em8300_ioctl_getaudiomode(struct em8300_s *em, long int mode); -int em8300_ioctl_overlay_calibrate(struct em8300_s *em, em8300_overlay_calibrate_t *c); -int em8300_ioctl_overlay_setwindow(struct em8300_s *em,em8300_overlay_window_t *w); -int em8300_ioctl_overlay_setscreen(struct em8300_s *em,em8300_overlay_screen_t *s); -int em8300_ioctl_overlay_setmode(struct em8300_s *em,int val); - -/* em9010.c */ -int em9010_cabledetect(struct em8300_s *em); -int em9010_calibrate_xoffset(struct em8300_s *em); -int em9010_calibrate_yoffset(struct em8300_s *em); -int em9010_init(struct em8300_s *em); -int em9010_overlay_set_signalmode(struct em8300_s *em, int val); -int em9010_overlay_update(struct em8300_s *em); -int em9010_overlay_set_res(struct em8300_s *em, int xres, int yres); -void sub_4288c(struct em8300_s *em, int pa, int pb, int pc, int pd, int pe, int pf, - int pg, int ph); -int em9010_get_attribute(struct em8300_s *em, int attribute); -int em9010_set_attribute(struct em8300_s *em, int attribute, int value); - -#endif /* __KERNEL__ */ - #endif /* LINUX_EM8300_H */ diff -Nru em8300-0.16.4/include/linux/Makefile.in em8300-0.18.0/include/linux/Makefile.in --- em8300-0.16.4/include/linux/Makefile.in 2008-02-04 22:52:21.000000000 +0000 +++ em8300-0.18.0/include/linux/Makefile.in 2010-06-28 18:16:35.000000000 +0100 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.9.6 from Makefile.am. +# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -14,15 +15,12 @@ @SET_MAKE@ -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = ../.. +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c @@ -40,12 +38,13 @@ DIST_COMMON = $(em8300inc_HEADERS) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/configure.in +am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/include/config.h CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -53,17 +52,29 @@ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; -am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__installdirs = "$(DESTDIR)$(em8300incdir)" -em8300incHEADERS_INSTALL = $(INSTALL_HEADER) HEADERS = $(em8300inc_HEADERS) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALSA_DIR = @ALSA_DIR@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ @@ -82,17 +93,13 @@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ -EM8300_MAJOR = @EM8300_MAJOR@ -EM8300_MINOR = @EM8300_MINOR@ -EM8300_SUB = @EM8300_SUB@ EXEEXT = @EXEEXT@ FIRMWARE_DIR = @FIRMWARE_DIR@ GLOBAL_CFLAGS = @GLOBAL_CFLAGS@ GREP = @GREP@ GTK_CFLAGS = @GTK_CFLAGS@ GTK_LIBS = @GTK_LIBS@ -HAVE_GTK_FALSE = @HAVE_GTK_FALSE@ -HAVE_GTK_TRUE = @HAVE_GTK_TRUE@ +INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ @@ -101,24 +108,29 @@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ +OVERLAY_LIBS = @OVERLAY_LIBS@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ -TAR_NAME = @TAR_NAME@ VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ @@ -130,6 +142,7 @@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ +builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ @@ -157,25 +170,29 @@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ em8300incdir = $(includedir)/linux em8300inc_HEADERS = em8300.h all: all-am .SUFFIXES: -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu include/linux/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu include/linux/Makefile + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu include/linux/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu include/linux/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ @@ -189,101 +206,111 @@ $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(top_srcdir)/configure: $(am__configure_deps) +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -uninstall-info-am: +$(am__aclocal_m4_deps): install-em8300incHEADERS: $(em8300inc_HEADERS) @$(NORMAL_INSTALL) - test -z "$(em8300incdir)" || $(mkdir_p) "$(DESTDIR)$(em8300incdir)" - @list='$(em8300inc_HEADERS)'; for p in $$list; do \ + test -z "$(em8300incdir)" || $(MKDIR_P) "$(DESTDIR)$(em8300incdir)" + @list='$(em8300inc_HEADERS)'; test -n "$(em8300incdir)" || list=; \ + for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - f=$(am__strip_dir) \ - echo " $(em8300incHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(em8300incdir)/$$f'"; \ - $(em8300incHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(em8300incdir)/$$f"; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(em8300incdir)'"; \ + $(INSTALL_HEADER) $$files "$(DESTDIR)$(em8300incdir)" || exit $$?; \ done uninstall-em8300incHEADERS: @$(NORMAL_UNINSTALL) - @list='$(em8300inc_HEADERS)'; for p in $$list; do \ - f=$(am__strip_dir) \ - echo " rm -f '$(DESTDIR)$(em8300incdir)/$$f'"; \ - rm -f "$(DESTDIR)$(em8300incdir)/$$f"; \ - done + @list='$(em8300inc_HEADERS)'; test -n "$(em8300incdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + test -n "$$files" || exit 0; \ + echo " ( cd '$(DESTDIR)$(em8300incdir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(em8300incdir)" && rm -f $$files ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) - tags=; \ + set x; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - test -z "$(CTAGS_ARGS)$$tags$$unique" \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique + $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ - esac; \ + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @@ -292,7 +319,7 @@ all-am: Makefile $(HEADERS) installdirs: for dir in "$(DESTDIR)$(em8300incdir)"; do \ - test -z "$$dir" || $(mkdir_p) "$$dir"; \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am @@ -314,6 +341,7 @@ distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @@ -332,18 +360,38 @@ html: html-am +html-am: + info: info-am info-am: install-data-am: install-em8300incHEADERS +install-dvi: install-dvi-am + +install-dvi-am: + install-exec-am: +install-html: install-html-am + +install-html-am: + install-info: install-info-am +install-info-am: + install-man: +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + installcheck-am: maintainer-clean: maintainer-clean-am @@ -362,22 +410,26 @@ ps-am: -uninstall-am: uninstall-em8300incHEADERS uninstall-info-am +uninstall-am: uninstall-em8300incHEADERS + +.MAKE: install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ ctags distclean distclean-generic distclean-tags distdir dvi \ dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-em8300incHEADERS \ - install-exec install-exec-am install-info install-info-am \ - install-man install-strip installcheck installcheck-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-em8300incHEADERS install-exec install-exec-am \ + install-html install-html-am install-info install-info-am \ + install-man install-pdf install-pdf-am install-ps \ + install-ps-am install-strip installcheck installcheck-am \ installdirs maintainer-clean maintainer-clean-generic \ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \ - uninstall uninstall-am uninstall-em8300incHEADERS \ - uninstall-info-am + uninstall uninstall-am uninstall-em8300incHEADERS debug: $(MAKE) CFLAGS="$(DEBUG_CFLAGS)" + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: diff -Nru em8300-0.16.4/include/Makefile.in em8300-0.18.0/include/Makefile.in --- em8300-0.16.4/include/Makefile.in 2008-02-04 22:52:21.000000000 +0000 +++ em8300-0.18.0/include/Makefile.in 2010-06-28 18:16:35.000000000 +0100 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.9.6 from Makefile.am. +# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -13,15 +14,12 @@ # PARTICULAR PURPOSE. @SET_MAKE@ -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = .. +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c @@ -39,28 +37,58 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(srcdir)/config.h.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/configure.in +am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = config.h CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ - install-exec-recursive install-info-recursive \ - install-recursive installcheck-recursive installdirs-recursive \ - pdf-recursive ps-recursive uninstall-info-recursive \ - uninstall-recursive + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ + $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ + distdir ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +am__relativize = \ + dir0=`pwd`; \ + sed_first='s,^\([^/]*\)/.*$$,\1,'; \ + sed_rest='s,^[^/]*/*,,'; \ + sed_last='s,^.*/\([^/]*\)$$,\1,'; \ + sed_butlast='s,/*[^/]*$$,,'; \ + while test -n "$$dir1"; do \ + first=`echo "$$dir1" | sed -e "$$sed_first"`; \ + if test "$$first" != "."; then \ + if test "$$first" = ".."; then \ + dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ + dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ + else \ + first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ + if test "$$first2" = "$$first"; then \ + dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ + else \ + dir2="../$$dir2"; \ + fi; \ + dir0="$$dir0"/"$$first"; \ + fi; \ + fi; \ + dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ + done; \ + reldir="$$dir2" ACLOCAL = @ACLOCAL@ ALSA_DIR = @ALSA_DIR@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ @@ -79,17 +107,13 @@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ -EM8300_MAJOR = @EM8300_MAJOR@ -EM8300_MINOR = @EM8300_MINOR@ -EM8300_SUB = @EM8300_SUB@ EXEEXT = @EXEEXT@ FIRMWARE_DIR = @FIRMWARE_DIR@ GLOBAL_CFLAGS = @GLOBAL_CFLAGS@ GREP = @GREP@ GTK_CFLAGS = @GTK_CFLAGS@ GTK_LIBS = @GTK_LIBS@ -HAVE_GTK_FALSE = @HAVE_GTK_FALSE@ -HAVE_GTK_TRUE = @HAVE_GTK_TRUE@ +INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ @@ -98,24 +122,29 @@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ +OVERLAY_LIBS = @OVERLAY_LIBS@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ -TAR_NAME = @TAR_NAME@ VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ @@ -127,6 +156,7 @@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ +builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ @@ -154,25 +184,29 @@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ SUBDIRS = linux all: config.h $(MAKE) $(AM_MAKEFLAGS) all-recursive .SUFFIXES: -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu include/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu include/Makefile + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu include/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu include/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ @@ -186,28 +220,28 @@ $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(top_srcdir)/configure: $(am__configure_deps) +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): config.h: stamp-h1 @if test ! -f $@; then \ rm -f stamp-h1; \ - $(MAKE) stamp-h1; \ + $(MAKE) $(AM_MAKEFLAGS) stamp-h1; \ else :; fi stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status @rm -f stamp-h1 cd $(top_builddir) && $(SHELL) ./config.status include/config.h -$(srcdir)/config.h.in: $(am__configure_deps) - cd $(top_srcdir) && $(AUTOHEADER) +$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + ($(am__cd) $(top_srcdir) && $(AUTOHEADER)) rm -f stamp-h1 touch $@ distclean-hdr: -rm -f config.h stamp-h1 -uninstall-info-am: # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. @@ -216,7 +250,7 @@ # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. $(RECURSIVE_TARGETS): - @failcom='exit 1'; \ + @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ @@ -233,16 +267,15 @@ else \ local_target="$$target"; \ fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" -mostlyclean-recursive clean-recursive distclean-recursive \ -maintainer-clean-recursive: - @failcom='exit 1'; \ +$(RECURSIVE_CLEAN_TARGETS): + @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ @@ -268,16 +301,16 @@ else \ local_target="$$target"; \ fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) @@ -285,14 +318,14 @@ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) - tags=; \ + set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ @@ -304,81 +337,101 @@ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ - tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ + set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - test -z "$(CTAGS_ARGS)$$tags$$unique" \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique + $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ - esac; \ + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done - list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ - || $(mkdir_p) "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ - distdir=`$(am__cd) $(distdir) && pwd`; \ - top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ - (cd $$subdir && \ + fi; \ + done + @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ + $(am__relativize); \ + new_distdir=$$reldir; \ + dir1=$$subdir; dir2="$(top_distdir)"; \ + $(am__relativize); \ + new_top_distdir=$$reldir; \ + echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ + echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ + ($(am__cd) $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="$$top_distdir" \ - distdir="$$distdir/$$subdir" \ + top_distdir="$$new_top_distdir" \ + distdir="$$new_distdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + am__skip_mode_fix=: \ distdir) \ || exit 1; \ fi; \ @@ -408,6 +461,7 @@ distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @@ -426,18 +480,38 @@ html: html-recursive +html-am: + info: info-recursive info-am: install-data-am: +install-dvi: install-dvi-recursive + +install-dvi-am: + install-exec-am: +install-html: install-html-recursive + +install-html-am: + install-info: install-info-recursive +install-info-am: + install-man: +install-pdf: install-pdf-recursive + +install-pdf-am: + +install-ps: install-ps-recursive + +install-ps-am: + installcheck-am: maintainer-clean: maintainer-clean-recursive @@ -456,21 +530,24 @@ ps-am: -uninstall-am: uninstall-info-am +uninstall-am: -uninstall-info: uninstall-info-recursive +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all \ + ctags-recursive install-am install-strip tags-recursive -.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \ - clean clean-generic clean-recursive ctags ctags-recursive \ - distclean distclean-generic distclean-hdr distclean-recursive \ +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am check check-am clean clean-generic ctags \ + ctags-recursive distclean distclean-generic distclean-hdr \ distclean-tags distdir dvi dvi-am html html-am info info-am \ - install install-am install-data install-data-am install-exec \ - install-exec-am install-info install-info-am install-man \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ install-strip installcheck installcheck-am installdirs \ installdirs-am maintainer-clean maintainer-clean-generic \ - maintainer-clean-recursive mostlyclean mostlyclean-generic \ - mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \ - uninstall uninstall-am uninstall-info-am + mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \ + tags-recursive uninstall uninstall-am + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff -Nru em8300-0.16.4/INSTALL em8300-0.18.0/INSTALL --- em8300-0.16.4/INSTALL 2008-02-04 22:52:21.000000000 +0000 +++ em8300-0.18.0/INSTALL 2010-06-28 18:16:35.000000000 +0100 @@ -1,16 +1,25 @@ Installation Instructions ************************* -Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free -Software Foundation, Inc. +Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005, +2006, 2007, 2008, 2009 Free Software Foundation, Inc. -This file is free documentation; the Free Software Foundation gives -unlimited permission to copy, distribute and modify it. + Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. This file is offered as-is, +without warranty of any kind. Basic Installation ================== -These are generic installation instructions. + Briefly, the shell commands `./configure; make; make install' should +configure, build, and install this package. The following +more-detailed instructions are generic; see the `README' file for +instructions specific to this package. Some packages provide this +`INSTALL' file but do not implement all of the features documented +below. The lack of an optional feature in a given package is not +necessarily a bug. More recommendations for GNU packages can be found +in *note Makefile Conventions: (standards)Makefile Conventions. The `configure' shell script attempts to guess correct values for various system-dependent variables used during compilation. It uses @@ -23,9 +32,9 @@ It can also use an optional file (typically called `config.cache' and enabled with `--cache-file=config.cache' or simply `-C') that saves -the results of its tests to speed up reconfiguring. (Caching is +the results of its tests to speed up reconfiguring. Caching is disabled by default to prevent problems with accidental use of stale -cache files.) +cache files. If you need to do unusual things to compile the package, please try to figure out how `configure' could check whether to do them, and mail @@ -35,30 +44,37 @@ may remove or edit it. The file `configure.ac' (or `configure.in') is used to create -`configure' by a program called `autoconf'. You only need -`configure.ac' if you want to change it or regenerate `configure' using -a newer version of `autoconf'. +`configure' by a program called `autoconf'. You need `configure.ac' if +you want to change it or regenerate `configure' using a newer version +of `autoconf'. -The simplest way to compile this package is: + The simplest way to compile this package is: 1. `cd' to the directory containing the package's source code and type - `./configure' to configure the package for your system. If you're - using `csh' on an old version of System V, you might need to type - `sh ./configure' instead to prevent `csh' from trying to execute - `configure' itself. + `./configure' to configure the package for your system. - Running `configure' takes awhile. While running, it prints some - messages telling which features it is checking for. + Running `configure' might take a while. While running, it prints + some messages telling which features it is checking for. 2. Type `make' to compile the package. 3. Optionally, type `make check' to run any self-tests that come with - the package. + the package, generally using the just-built uninstalled binaries. 4. Type `make install' to install the programs and any data files and - documentation. + documentation. When installing into a prefix owned by root, it is + recommended that the package be configured and built as a regular + user, and only the `make install' phase executed with root + privileges. + + 5. Optionally, type `make installcheck' to repeat any self-tests, but + this time using the binaries in their final installed location. + This target does not install anything. Running this target as a + regular user, particularly if the prior `make install' required + root privileges, verifies that the installation completed + correctly. - 5. You can remove the program binaries and object files from the + 6. You can remove the program binaries and object files from the source code directory by typing `make clean'. To also remove the files that `configure' created (so you can compile the package for a different kind of computer), type `make distclean'. There is @@ -67,45 +83,69 @@ all sorts of other programs in order to regenerate files that came with the distribution. + 7. Often, you can also type `make uninstall' to remove the installed + files again. In practice, not all packages have tested that + uninstallation works correctly, even though it is required by the + GNU Coding Standards. + + 8. Some packages, particularly those that use Automake, provide `make + distcheck', which can by used by developers to test that all other + targets like `make install' and `make uninstall' work correctly. + This target is generally not run by end users. + Compilers and Options ===================== -Some systems require unusual options for compilation or linking that the -`configure' script does not know about. Run `./configure --help' for -details on some of the pertinent environment variables. + Some systems require unusual options for compilation or linking that +the `configure' script does not know about. Run `./configure --help' +for details on some of the pertinent environment variables. You can give `configure' initial values for configuration parameters by setting variables in the command line or in the environment. Here is an example: - ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix + ./configure CC=c99 CFLAGS=-g LIBS=-lposix *Note Defining Variables::, for more details. Compiling For Multiple Architectures ==================================== -You can compile the package for more than one kind of computer at the + You can compile the package for more than one kind of computer at the same time, by placing the object files for each architecture in their -own directory. To do this, you must use a version of `make' that -supports the `VPATH' variable, such as GNU `make'. `cd' to the +own directory. To do this, you can use GNU `make'. `cd' to the directory where you want the object files and executables to go and run the `configure' script. `configure' automatically checks for the -source code in the directory that `configure' is in and in `..'. +source code in the directory that `configure' is in and in `..'. This +is known as a "VPATH" build. - If you have to use a `make' that does not support the `VPATH' -variable, you have to compile the package for one architecture at a -time in the source code directory. After you have installed the -package for one architecture, use `make distclean' before reconfiguring -for another architecture. + With a non-GNU `make', it is safer to compile the package for one +architecture at a time in the source code directory. After you have +installed the package for one architecture, use `make distclean' before +reconfiguring for another architecture. + + On MacOS X 10.5 and later systems, you can create libraries and +executables that work on multiple system types--known as "fat" or +"universal" binaries--by specifying multiple `-arch' options to the +compiler but only a single `-arch' option to the preprocessor. Like +this: + + ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ + CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ + CPP="gcc -E" CXXCPP="g++ -E" + + This is not guaranteed to produce working output in all cases, you +may have to build one architecture at a time and combine the results +using the `lipo' tool if you have problems. Installation Names ================== -By default, `make install' installs the package's commands under + By default, `make install' installs the package's commands under `/usr/local/bin', include files under `/usr/local/include', etc. You can specify an installation prefix other than `/usr/local' by giving -`configure' the option `--prefix=PREFIX'. +`configure' the option `--prefix=PREFIX', where PREFIX must be an +absolute file name. You can specify separate installation prefixes for architecture-specific files and architecture-independent files. If you @@ -116,16 +156,47 @@ In addition, if you use an unusual directory layout you can give options like `--bindir=DIR' to specify different values for particular kinds of files. Run `configure --help' for a list of the directories -you can set and what kinds of files go in them. +you can set and what kinds of files go in them. In general, the +default for these options is expressed in terms of `${prefix}', so that +specifying just `--prefix' will affect all of the other directory +specifications that were not explicitly provided. + + The most portable way to affect installation locations is to pass the +correct locations to `configure'; however, many packages provide one or +both of the following shortcuts of passing variable assignments to the +`make install' command line to change installation locations without +having to reconfigure or recompile. + + The first method involves providing an override variable for each +affected directory. For example, `make install +prefix=/alternate/directory' will choose an alternate location for all +directory configuration variables that were expressed in terms of +`${prefix}'. Any directories that were specified during `configure', +but not in terms of `${prefix}', must each be overridden at install +time for the entire installation to be relocated. The approach of +makefile variable overrides for each directory variable is required by +the GNU Coding Standards, and ideally causes no recompilation. +However, some platforms have known limitations with the semantics of +shared libraries that end up requiring recompilation when using this +method, particularly noticeable in packages that use GNU Libtool. + + The second method involves providing the `DESTDIR' variable. For +example, `make install DESTDIR=/alternate/directory' will prepend +`/alternate/directory' before all installation names. The approach of +`DESTDIR' overrides is not required by the GNU Coding Standards, and +does not work on platforms that have drive letters. On the other hand, +it does better at avoiding recompilation issues, and works well even +when some directory options were not specified in terms of `${prefix}' +at `configure' time. + +Optional Features +================= If the package supports it, you can cause programs to be installed with an extra prefix or suffix on their names by giving `configure' the option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. -Optional Features -================= - -Some packages pay attention to `--enable-FEATURE' options to + Some packages pay attention to `--enable-FEATURE' options to `configure', where FEATURE indicates an optional part of the package. They may also pay attention to `--with-PACKAGE' options, where PACKAGE is something like `gnu-as' or `x' (for the X Window System). The @@ -137,14 +208,53 @@ you can use the `configure' options `--x-includes=DIR' and `--x-libraries=DIR' to specify their locations. + Some packages offer the ability to configure how verbose the +execution of `make' will be. For these packages, running `./configure +--enable-silent-rules' sets the default to minimal output, which can be +overridden with `make V=1'; while running `./configure +--disable-silent-rules' sets the default to verbose, which can be +overridden with `make V=0'. + +Particular systems +================== + + On HP-UX, the default C compiler is not ANSI C compatible. If GNU +CC is not installed, it is recommended to use the following options in +order to use an ANSI C compiler: + + ./configure CC="cc -Ae -D_XOPEN_SOURCE=500" + +and if that doesn't work, install pre-built binaries of GCC for HP-UX. + + On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot +parse its `' header file. The option `-nodtk' can be used as +a workaround. If GNU CC is not installed, it is therefore recommended +to try + + ./configure CC="cc" + +and if that doesn't work, try + + ./configure CC="cc -nodtk" + + On Solaris, don't put `/usr/ucb' early in your `PATH'. This +directory contains several dysfunctional programs; working variants of +these programs are available in `/usr/bin'. So, if you need `/usr/ucb' +in your `PATH', put it _after_ `/usr/bin'. + + On Haiku, software installed for all users goes in `/boot/common', +not `/usr/local'. It is recommended to use the following options: + + ./configure --prefix=/boot/common + Specifying the System Type ========================== -There may be some features `configure' cannot figure out automatically, -but needs to determine by the type of machine the package will run on. -Usually, assuming the package is built to be run on the _same_ -architectures, `configure' can figure that out, but if it prints a -message saying it cannot guess the machine type, give it the + There may be some features `configure' cannot figure out +automatically, but needs to determine by the type of machine the package +will run on. Usually, assuming the package is built to be run on the +_same_ architectures, `configure' can figure that out, but if it prints +a message saying it cannot guess the machine type, give it the `--build=TYPE' option. TYPE can either be a short name for the system type, such as `sun4', or a canonical name which has the form: @@ -152,7 +262,8 @@ where SYSTEM can have one of these forms: - OS KERNEL-OS + OS + KERNEL-OS See the file `config.sub' for the possible values of each field. If `config.sub' isn't included in this package, then this package doesn't @@ -170,9 +281,9 @@ Sharing Defaults ================ -If you want to set default values for `configure' scripts to share, you -can create a site shell script called `config.site' that gives default -values for variables like `CC', `cache_file', and `prefix'. + If you want to set default values for `configure' scripts to share, +you can create a site shell script called `config.site' that gives +default values for variables like `CC', `cache_file', and `prefix'. `configure' looks for `PREFIX/share/config.site' if it exists, then `PREFIX/etc/config.site' if it exists. Or, you can set the `CONFIG_SITE' environment variable to the location of the site script. @@ -181,7 +292,7 @@ Defining Variables ================== -Variables not defined in a site shell script can be set in the + Variables not defined in a site shell script can be set in the environment passed to `configure'. However, some packages may run configure again during the build, and the customized values of these variables may be lost. In order to avoid this problem, you should set @@ -190,21 +301,29 @@ ./configure CC=/usr/local2/bin/gcc causes the specified `gcc' to be used as the C compiler (unless it is -overridden in the site shell script). Here is a another example: +overridden in the site shell script). - /bin/bash ./configure CONFIG_SHELL=/bin/bash +Unfortunately, this technique does not work for `CONFIG_SHELL' due to +an Autoconf bug. Until the bug is fixed you can use this workaround: -Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent -configuration-related scripts to be executed by `/bin/bash'. + CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash `configure' Invocation ====================== -`configure' recognizes the following options to control how it operates. + `configure' recognizes the following options to control how it +operates. `--help' `-h' - Print a summary of the options to `configure', and exit. + Print a summary of all of the options to `configure', and exit. + +`--help=short' +`--help=recursive' + Print a summary of the options unique to this package's + `configure', and exit. The `short' variant lists options used + only in the top level, while the `recursive' variant lists options + also present in any nested packages. `--version' `-V' @@ -231,6 +350,16 @@ Look for the package's source code in directory DIR. Usually `configure' can determine that directory automatically. +`--prefix=DIR' + Use DIR as the installation prefix. *note Installation Names:: + for more details, including other options available for fine-tuning + the installation locations. + +`--no-create' +`-n' + Run the configure checks, but stop before creating any output + files. + `configure' also accepts some other, not widely useful, options. Run `configure --help' for more details. diff -Nru em8300-0.16.4/Makefile.am em8300-0.18.0/Makefile.am --- em8300-0.16.4/Makefile.am 2006-11-26 23:46:09.000000000 +0000 +++ em8300-0.18.0/Makefile.am 2010-06-28 18:12:31.000000000 +0100 @@ -7,15 +7,56 @@ $(srcdir)/modules/EM8300.conf \ $(srcdir)/modules/INSTALL \ $(srcdir)/modules/Makefile \ + $(srcdir)/modules/Kbuild \ $(srcdir)/modules/README* \ - $(srcdir)/modules/*.c \ - $(srcdir)/modules/*.h \ + $(srcdir)/modules/adv717x.c \ + $(srcdir)/modules/adv717x.h \ + $(srcdir)/modules/bt865.c \ + $(srcdir)/modules/bt865.h \ + $(srcdir)/modules/em8300_alsa.c \ + $(srcdir)/modules/em8300_alsa.h \ + $(srcdir)/modules/em8300_audio.c \ + $(srcdir)/modules/em8300_compat24.h \ + $(srcdir)/modules/em8300_devfs.c \ + $(srcdir)/modules/em8300_devfs.h \ + $(srcdir)/modules/em8300_dicom.c \ + $(srcdir)/modules/em8300_eeprom.c \ + $(srcdir)/modules/em8300_eeprom.h \ + $(srcdir)/modules/em8300_fifo.c \ + $(srcdir)/modules/em8300_fifo.h \ + $(srcdir)/modules/em8300_i2c.c \ + $(srcdir)/modules/em8300_ioctl.c \ + $(srcdir)/modules/em8300_ioctl32.c \ + $(srcdir)/modules/em8300_ioctl32.h \ + $(srcdir)/modules/em8300_main.c \ + $(srcdir)/modules/em8300_misc.c \ + $(srcdir)/modules/em8300_models.c \ + $(srcdir)/modules/em8300_models.h \ + $(srcdir)/modules/em8300_params.c \ + $(srcdir)/modules/em8300_params.h \ + $(srcdir)/modules/em8300_procfs.c \ + $(srcdir)/modules/em8300_procfs.h \ + $(srcdir)/modules/em8300_reg.c \ + $(srcdir)/modules/em8300_reg.h \ + $(srcdir)/modules/em8300_registration.c \ + $(srcdir)/modules/em8300_registration.h \ + $(srcdir)/modules/em8300_spu.c \ + $(srcdir)/modules/em8300_sysfs.c \ + $(srcdir)/modules/em8300_sysfs.h \ + $(srcdir)/modules/em8300_ucode.c \ + $(srcdir)/modules/em8300_udev.c \ + $(srcdir)/modules/em8300_udev.h \ + $(srcdir)/modules/em8300_video.c \ + $(srcdir)/modules/em9010.c \ + $(srcdir)/modules/encoder.h \ + $(srcdir)/modules/encoder_output_mode.h \ $(srcdir)/modules/devices.sh \ $(srcdir)/modules/em8300-udev.rules \ $(srcdir)/modules/em8300.uc \ $(srcdir)/modules/ldm \ $(srcdir)/modules/rmm \ - shinit.sh + shinit.sh \ + ChangeLog.old if HAVE_GTK SUBDIRS = include overlay dhc scripts em8300setup @@ -37,3 +78,18 @@ uninstall-local: rm -f "$(DESTDIR)$(firmwaredir)/em8300.bin" test -z "$(alsadir)" || rm -f "$(DESTDIR)$(alsadir)/cards/EM8300.conf" + +ChangeLog: + hg log -R $(top_srcdir) --follow --style changelog > $@ + +dist-hook: + version="$(VERSION)"; \ + if [ "$${version:(-3)}" == "-hg" ]; then \ + version="hg-$$(hg id -R $(top_srcdir) -i)"; \ + fi; \ + printf '#define EM8300_VERSION "%s"\n' "$$version" > $(distdir)/modules/em8300_version.h + +if MAINTAINER_MODE +.PHONY: ChangeLog +ACLOCAL_AMFLAGS = -I autotools +endif diff -Nru em8300-0.16.4/Makefile.in em8300-0.18.0/Makefile.in --- em8300-0.16.4/Makefile.in 2008-02-04 22:52:22.000000000 +0000 +++ em8300-0.18.0/Makefile.in 2010-06-28 18:16:36.000000000 +0100 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.9.6 from Makefile.am. +# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -13,15 +14,12 @@ # PARTICULAR PURPOSE. @SET_MAKE@ -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = . +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c @@ -35,29 +33,36 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ +subdir = . DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in $(top_srcdir)/configure AUTHORS COPYING \ ChangeLog INSTALL NEWS autotools/README autotools/config.guess \ autotools/config.sub autotools/depcomp autotools/install-sh \ autotools/missing -subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/configure.in +am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ - configure.lineno configure.status.lineno + configure.lineno config.status.lineno mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/include/config.h CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ - install-exec-recursive install-info-recursive \ - install-recursive installcheck-recursive installdirs-recursive \ - pdf-recursive ps-recursive uninstall-info-recursive \ - uninstall-recursive + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ + $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \ + distdir dist dist-all distcheck ETAGS = etags CTAGS = ctags DIST_SUBDIRS = include scripts em8300setup overlay dhc @@ -65,17 +70,40 @@ distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) am__remove_distdir = \ - { test ! -d $(distdir) \ - || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \ - && rm -fr $(distdir); }; } + { test ! -d "$(distdir)" \ + || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \ + && rm -fr "$(distdir)"; }; } +am__relativize = \ + dir0=`pwd`; \ + sed_first='s,^\([^/]*\)/.*$$,\1,'; \ + sed_rest='s,^[^/]*/*,,'; \ + sed_last='s,^.*/\([^/]*\)$$,\1,'; \ + sed_butlast='s,/*[^/]*$$,,'; \ + while test -n "$$dir1"; do \ + first=`echo "$$dir1" | sed -e "$$sed_first"`; \ + if test "$$first" != "."; then \ + if test "$$first" = ".."; then \ + dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ + dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ + else \ + first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ + if test "$$first2" = "$$first"; then \ + dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ + else \ + dir2="../$$dir2"; \ + fi; \ + dir0="$$dir0"/"$$first"; \ + fi; \ + fi; \ + dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ + done; \ + reldir="$$dir2" DIST_ARCHIVES = $(distdir).tar.gz GZIP_ENV = --best distuninstallcheck_listfiles = find . -type f -print distcleancheck_listfiles = find . -type f -print ACLOCAL = @ACLOCAL@ ALSA_DIR = @ALSA_DIR@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ @@ -94,17 +122,13 @@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ -EM8300_MAJOR = @EM8300_MAJOR@ -EM8300_MINOR = @EM8300_MINOR@ -EM8300_SUB = @EM8300_SUB@ EXEEXT = @EXEEXT@ FIRMWARE_DIR = @FIRMWARE_DIR@ GLOBAL_CFLAGS = @GLOBAL_CFLAGS@ GREP = @GREP@ GTK_CFLAGS = @GTK_CFLAGS@ GTK_LIBS = @GTK_LIBS@ -HAVE_GTK_FALSE = @HAVE_GTK_FALSE@ -HAVE_GTK_TRUE = @HAVE_GTK_TRUE@ +INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ @@ -113,24 +137,29 @@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ +OVERLAY_LIBS = @OVERLAY_LIBS@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ -TAR_NAME = @TAR_NAME@ VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ @@ -142,6 +171,7 @@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ +builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ @@ -169,8 +199,12 @@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ AUTOMAKE_OPTIONS = 1.8 firmwaredir = @FIRMWARE_DIR@ alsadir = @ALSA_DIR@ @@ -178,36 +212,78 @@ $(srcdir)/modules/EM8300.conf \ $(srcdir)/modules/INSTALL \ $(srcdir)/modules/Makefile \ + $(srcdir)/modules/Kbuild \ $(srcdir)/modules/README* \ - $(srcdir)/modules/*.c \ - $(srcdir)/modules/*.h \ + $(srcdir)/modules/adv717x.c \ + $(srcdir)/modules/adv717x.h \ + $(srcdir)/modules/bt865.c \ + $(srcdir)/modules/bt865.h \ + $(srcdir)/modules/em8300_alsa.c \ + $(srcdir)/modules/em8300_alsa.h \ + $(srcdir)/modules/em8300_audio.c \ + $(srcdir)/modules/em8300_compat24.h \ + $(srcdir)/modules/em8300_devfs.c \ + $(srcdir)/modules/em8300_devfs.h \ + $(srcdir)/modules/em8300_dicom.c \ + $(srcdir)/modules/em8300_eeprom.c \ + $(srcdir)/modules/em8300_eeprom.h \ + $(srcdir)/modules/em8300_fifo.c \ + $(srcdir)/modules/em8300_fifo.h \ + $(srcdir)/modules/em8300_i2c.c \ + $(srcdir)/modules/em8300_ioctl.c \ + $(srcdir)/modules/em8300_ioctl32.c \ + $(srcdir)/modules/em8300_ioctl32.h \ + $(srcdir)/modules/em8300_main.c \ + $(srcdir)/modules/em8300_misc.c \ + $(srcdir)/modules/em8300_models.c \ + $(srcdir)/modules/em8300_models.h \ + $(srcdir)/modules/em8300_params.c \ + $(srcdir)/modules/em8300_params.h \ + $(srcdir)/modules/em8300_procfs.c \ + $(srcdir)/modules/em8300_procfs.h \ + $(srcdir)/modules/em8300_reg.c \ + $(srcdir)/modules/em8300_reg.h \ + $(srcdir)/modules/em8300_registration.c \ + $(srcdir)/modules/em8300_registration.h \ + $(srcdir)/modules/em8300_spu.c \ + $(srcdir)/modules/em8300_sysfs.c \ + $(srcdir)/modules/em8300_sysfs.h \ + $(srcdir)/modules/em8300_ucode.c \ + $(srcdir)/modules/em8300_udev.c \ + $(srcdir)/modules/em8300_udev.h \ + $(srcdir)/modules/em8300_video.c \ + $(srcdir)/modules/em9010.c \ + $(srcdir)/modules/encoder.h \ + $(srcdir)/modules/encoder_output_mode.h \ $(srcdir)/modules/devices.sh \ $(srcdir)/modules/em8300-udev.rules \ $(srcdir)/modules/em8300.uc \ $(srcdir)/modules/ldm \ $(srcdir)/modules/rmm \ - shinit.sh + shinit.sh \ + ChangeLog.old @HAVE_GTK_FALSE@SUBDIRS = include scripts em8300setup @HAVE_GTK_TRUE@SUBDIRS = include overlay dhc scripts em8300setup +@MAINTAINER_MODE_TRUE@ACLOCAL_AMFLAGS = -I autotools all: all-recursive .SUFFIXES: am--refresh: @: -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ - echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \ - cd $(srcdir) && $(AUTOMAKE) --gnu \ + echo ' cd $(srcdir) && $(AUTOMAKE) --gnu'; \ + $(am__cd) $(srcdir) && $(AUTOMAKE) --gnu \ && exit 0; \ exit 1;; \ esac; \ done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu Makefile + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ @@ -222,11 +298,11 @@ $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) $(SHELL) ./config.status --recheck -$(top_srcdir)/configure: $(am__configure_deps) - cd $(srcdir) && $(AUTOCONF) -$(ACLOCAL_M4): $(am__aclocal_m4_deps) - cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) -uninstall-info-am: +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + $(am__cd) $(srcdir) && $(AUTOCONF) +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) +$(am__aclocal_m4_deps): # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. @@ -235,7 +311,7 @@ # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. $(RECURSIVE_TARGETS): - @failcom='exit 1'; \ + @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ @@ -252,16 +328,15 @@ else \ local_target="$$target"; \ fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" -mostlyclean-recursive clean-recursive distclean-recursive \ -maintainer-clean-recursive: - @failcom='exit 1'; \ +$(RECURSIVE_CLEAN_TARGETS): + @fail= failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ @@ -287,16 +362,16 @@ else \ local_target="$$target"; \ fi; \ - (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ + test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) @@ -304,14 +379,14 @@ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) - tags=; \ + set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ @@ -323,93 +398,117 @@ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ - tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ + set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - test -z "$(CTAGS_ARGS)$$tags$$unique" \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique + $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) $(am__remove_distdir) - mkdir $(distdir) - $(mkdir_p) $(distdir)/$(srcdir)/modules $(distdir)/autotools - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ - esac; \ + test -d "$(distdir)" || mkdir "$(distdir)" + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done - list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ - || $(mkdir_p) "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ - distdir=`$(am__cd) $(distdir) && pwd`; \ - top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ - (cd $$subdir && \ + fi; \ + done + @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ + $(am__relativize); \ + new_distdir=$$reldir; \ + dir1=$$subdir; dir2="$(top_distdir)"; \ + $(am__relativize); \ + new_top_distdir=$$reldir; \ + echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ + echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ + ($(am__cd) $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ - top_distdir="$$top_distdir" \ - distdir="$$distdir/$$subdir" \ + top_distdir="$$new_top_distdir" \ + distdir="$$new_distdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + am__skip_mode_fix=: \ distdir) \ || exit 1; \ fi; \ done - -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$(top_distdir)" distdir="$(distdir)" \ + dist-hook + -test -n "$(am__skip_mode_fix)" \ + || find "$(distdir)" -type d ! -perm -755 \ + -exec chmod u+rwx,go+rx {} \; -o \ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ - ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \ - || chmod -R a+r $(distdir) + ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ + || chmod -R a+r "$(distdir)" dist-gzip: distdir tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__remove_distdir) @@ -418,6 +517,14 @@ tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2 $(am__remove_distdir) +dist-lzma: distdir + tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma + $(am__remove_distdir) + +dist-xz: distdir + tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz + $(am__remove_distdir) + dist-tarZ: distdir tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z $(am__remove_distdir) @@ -441,13 +548,17 @@ distcheck: dist case '$(DIST_ARCHIVES)' in \ *.tar.gz*) \ - GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\ + GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ - bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\ + bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ + *.tar.lzma*) \ + lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\ + *.tar.xz*) \ + xz -dc $(distdir).tar.xz | $(am__untar) ;;\ *.tar.Z*) \ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ *.shar.gz*) \ - GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\ + GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\ *.zip*) \ unzip $(distdir).zip ;;\ esac @@ -455,9 +566,11 @@ mkdir $(distdir)/_build mkdir $(distdir)/_inst chmod a-w $(distdir) + test -d $(distdir)/_build || exit 0; \ dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ - && cd $(distdir)/_build \ + && am__cwd=`pwd` \ + && $(am__cd) $(distdir)/_build \ && ../configure --srcdir=.. --prefix="$$dc_install_base" \ $(DISTCHECK_CONFIGURE_FLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) \ @@ -479,13 +592,15 @@ && rm -rf "$$dc_destdir" \ && $(MAKE) $(AM_MAKEFLAGS) dist \ && rm -rf $(DIST_ARCHIVES) \ - && $(MAKE) $(AM_MAKEFLAGS) distcleancheck + && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \ + && cd "$$am__cwd" \ + || exit 1 $(am__remove_distdir) @(echo "$(distdir) archives ready for distribution: "; \ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ - sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}' + sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' distuninstallcheck: - @cd $(distuninstallcheck_dir) \ + @$(am__cd) '$(distuninstallcheck_dir)' \ && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \ || { echo "ERROR: files left after uninstall:" ; \ if test -n "$(DESTDIR)"; then \ @@ -527,6 +642,7 @@ distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @@ -546,18 +662,38 @@ html: html-recursive +html-am: + info: info-recursive info-am: install-data-am: install-data-local +install-dvi: install-dvi-recursive + +install-dvi-am: + install-exec-am: +install-html: install-html-recursive + +install-html-am: + install-info: install-info-recursive +install-info-am: + install-man: +install-pdf: install-pdf-recursive + +install-pdf-am: + +install-ps: install-ps-recursive + +install-ps-am: + installcheck-am: maintainer-clean: maintainer-clean-recursive @@ -578,24 +714,26 @@ ps-am: -uninstall-am: uninstall-info-am uninstall-local +uninstall-am: uninstall-local -uninstall-info: uninstall-info-recursive +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \ + install-am install-strip tags-recursive -.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am am--refresh check \ - check-am clean clean-generic clean-recursive ctags \ - ctags-recursive dist dist-all dist-bzip2 dist-gzip dist-shar \ - dist-tarZ dist-zip distcheck distclean distclean-generic \ - distclean-recursive distclean-tags distcleancheck distdir \ - distuninstallcheck dvi dvi-am html html-am info info-am \ - install install-am install-data install-data-am \ - install-data-local install-exec install-exec-am install-info \ - install-info-am install-man install-strip installcheck \ - installcheck-am installdirs installdirs-am maintainer-clean \ - maintainer-clean-generic maintainer-clean-recursive \ - mostlyclean mostlyclean-generic mostlyclean-recursive pdf \ - pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \ - uninstall-info-am uninstall-local +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am am--refresh check check-am clean clean-generic \ + ctags ctags-recursive dist dist-all dist-bzip2 dist-gzip \ + dist-hook dist-lzma dist-shar dist-tarZ dist-xz dist-zip \ + distcheck distclean distclean-generic distclean-tags \ + distcleancheck distdir distuninstallcheck dvi dvi-am html \ + html-am info info-am install install-am install-data \ + install-data-am install-data-local install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs installdirs-am \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-generic pdf pdf-am ps ps-am tags tags-recursive \ + uninstall uninstall-am uninstall-local debug: @@ -612,6 +750,19 @@ uninstall-local: rm -f "$(DESTDIR)$(firmwaredir)/em8300.bin" test -z "$(alsadir)" || rm -f "$(DESTDIR)$(alsadir)/cards/EM8300.conf" + +ChangeLog: + hg log -R $(top_srcdir) --follow --style changelog > $@ + +dist-hook: + version="$(VERSION)"; \ + if [ "$${version:(-3)}" == "-hg" ]; then \ + version="hg-$$(hg id -R $(top_srcdir) -i)"; \ + fi; \ + printf '#define EM8300_VERSION "%s"\n' "$$version" > $(distdir)/modules/em8300_version.h + +@MAINTAINER_MODE_TRUE@.PHONY: ChangeLog + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: diff -Nru em8300-0.16.4/modules/adv717x.c em8300-0.18.0/modules/adv717x.c --- em8300-0.16.4/modules/adv717x.c 2007-12-10 21:45:13.000000000 +0000 +++ em8300-0.18.0/modules/adv717x.c 2010-06-28 18:12:31.000000000 +0100 @@ -2,7 +2,7 @@ ADV7175A - Analog Devices ADV7175A video encoder driver version 0.0.3 Copyright (C) 2000 Henrik Johannson - Copyright (C) 2007 Nicolas Boullis + Copyright (C) 2007, 2009 Nicolas Boullis This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -44,15 +44,18 @@ #include #include -#include + +#include #include "em8300_compat24.h" #include "em8300_reg.h" -#include +#include "em8300_driver.h" #include "adv717x.h" #include "encoder.h" +#include "em8300_version.h" + MODULE_SUPPORTED_DEVICE("adv717x"); MODULE_LICENSE("GPL"); #ifdef MODULE_VERSION @@ -61,11 +64,7 @@ EXPORT_NO_SYMBOLS; -#ifdef CONFIG_ADV717X_PIXELPORT16BIT -int pixelport_16bit[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = 1 }; -#else -int pixelport_16bit[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = 0 }; -#endif +int pixelport_16bit[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = -1 }; #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) MODULE_PARM(pixelport_16bit, "1-" __MODULE_STRING(EM8300_MAX) "i"); #else @@ -73,11 +72,7 @@ #endif MODULE_PARM_DESC(pixelport_16bit, "Changes how the ADV717x expects its input data to be formatted. If the colours on the TV appear green, try changing this. Defaults to 1."); -#ifdef CONFIG_ADV717X_PIXELPORTPAL -int pixelport_other_pal[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = 1 }; -#else -int pixelport_other_pal[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = 0 }; -#endif +int pixelport_other_pal[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = -1 }; #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) MODULE_PARM(pixelport_other_pal, "1-" __MODULE_STRING(EM8300_MAX) "i"); #else @@ -85,7 +80,7 @@ #endif MODULE_PARM_DESC(pixelport_other_pal, "If this is set to 1, then the pixelport setting is swapped for PAL from the setting given with pixelport_16bit. Defaults to 1."); -int pixeldata_adjust_ntsc[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = 1 }; +int pixeldata_adjust_ntsc[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = -1 }; #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) MODULE_PARM(pixeldata_adjust_ntsc, "1-" __MODULE_STRING(EM8300_MAX) "i"); #else @@ -93,7 +88,7 @@ #endif MODULE_PARM_DESC(pixeldata_adjust_ntsc, "If your red and blue colours are swapped in NTSC, try setting this to 0,1,2 or 3. Defaults to 1."); -int pixeldata_adjust_pal[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = 1 }; +int pixeldata_adjust_pal[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = -1 }; #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) MODULE_PARM(pixeldata_adjust_pal, "1-" __MODULE_STRING(EM8300_MAX) "i"); #else @@ -190,9 +185,13 @@ #define ADV7170_REG_PCR3 0x15 #define ADV7170_REG_TTXRQ_CTRL 0x19 -static int adv717x_attach_adapter(struct i2c_adapter *adapter); -int adv717x_detach_client(struct i2c_client *client); -int adv717x_command(struct i2c_client *client, unsigned int cmd, void *arg); +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,26) +#define adv717x_probe(client, id) adv717x_probe(client) +#endif + +static int adv717x_probe(struct i2c_client *client, const struct i2c_device_id *id); +static int adv717x_remove(struct i2c_client *client); +static int adv717x_command(struct i2c_client *client, unsigned int cmd, void *arg); static const mode_info_t mode_info[] = { [ MODE_COMPOSITE_SVIDEO ] = { "comp+svideo" , { 0, 0, 0, 0, 0, 1, 0, 0, 0 } }, @@ -216,6 +215,7 @@ struct adv717x_data_s { int chiptype; + int chiprev; int mode; int enableoutput; @@ -225,6 +225,87 @@ struct mode_config_s *conf; }; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,26) +static struct i2c_device_id adv717x_idtable[] = { + { "adv717x", 0 }, + { } +}; + +MODULE_DEVICE_TABLE(i2c, adv717x_idtable); +#endif + +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22) +static struct i2c_driver adv717x_driver; + +static int adv717x_attach_adapter(struct i2c_adapter *adapter) +{ + struct i2c_client *new_client; + int reg, result; + + if (!i2c_check_functionality(adapter, I2C_FUNC_SMBUS_BYTE_DATA)) + return 0; + + if (!(new_client = kmalloc(sizeof(struct i2c_client), GFP_KERNEL))) + return -ENOMEM; + + memset(new_client, 0, sizeof(struct i2c_client)); + new_client->addr = 0x6a; + new_client->adapter = adapter; + new_client->driver = &adv717x_driver; + + for (reg = 0; reg < 0x25; reg++) { + result = i2c_smbus_read_byte_data(new_client, reg); + if (result < 0) + goto cleanup; + } + + result = i2c_smbus_read_byte_data(new_client, 0x25); + if (result >= 0) { + for (reg = 0x26; reg < 0x30; reg++) { + result = i2c_smbus_read_byte_data(new_client, reg); + if (result < 0) + goto cleanup; + } + + result = i2c_smbus_read_byte_data(new_client, 0x30); + if (result >= 0) + goto cleanup; + } + + if (adv717x_probe(new_client, NULL)) + goto cleanup; + + if (i2c_attach_client(new_client)) { + adv717x_remove(new_client); + goto cleanup; + } + + return 0; + + cleanup: + kfree(new_client); + return 0; +} + +static int adv717x_detach_client(struct i2c_client *client) +{ + int err; + + if ((err = i2c_detach_client(client))) { + printk(KERN_ERR "adv717x.o: Client deregistration failed, client not detached.\n"); + return err; + } + + if ((err = adv717x_remove(client))) { + printk(KERN_ERR "adv717x.o: Client removal failed, client not detached.\n"); + return err; + } + + kfree(client); + return 0; +} +#endif + /* This is the driver that will be inserted */ static struct i2c_driver adv717x_driver = { #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) @@ -238,9 +319,16 @@ .name = "adv717x", .flags = I2C_DF_NOTIFY, #endif - .id = I2C_DRIVERID_ADV717X, +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22) .attach_adapter = &adv717x_attach_adapter, .detach_client = &adv717x_detach_client, +#else +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,26) + .id_table = adv717x_idtable, +#endif + .probe = &adv717x_probe, + .remove = &adv717x_remove, +#endif .command = &adv717x_command }; @@ -674,106 +762,85 @@ return 0; } -static int adv717x_detect(struct i2c_adapter *adapter, int address) +static int adv717x_probe(struct i2c_client *client, + const struct i2c_device_id *id) { struct adv717x_data_s *data; - struct i2c_client *new_client; - int mr0, mr1; - int err; + int result; + int err = 0; - if (!i2c_check_functionality(adapter, I2C_FUNC_SMBUS_READ_BYTE | I2C_FUNC_SMBUS_WRITE_BYTE_DATA)) { +/* + if (!i2c_check_functionality(client->adapter, I2C_FUNC_SMBUS_READ_BYTE | I2C_FUNC_SMBUS_WRITE_BYTE_DATA)) { return 0; } +*/ - if (!(new_client = kmalloc(sizeof(struct i2c_client) + sizeof(struct adv717x_data_s), GFP_KERNEL))) { + if (!(data = kmalloc(sizeof(struct adv717x_data_s), GFP_KERNEL))) { return -ENOMEM; } - memset(new_client, 0, sizeof(struct i2c_client) + sizeof(struct adv717x_data_s)); - data = (struct adv717x_data_s *) (((struct i2c_client *) new_client) + 1); - new_client->addr = address; - new_client->adapter = adapter; - new_client->driver = &adv717x_driver; - new_client->flags = 0; - - i2c_set_clientdata(new_client, data); + memset(data, 0, sizeof(struct adv717x_data_s)); - i2c_smbus_write_byte_data(new_client, ADV717X_REG_MR1, 0x55); - mr1=i2c_smbus_read_byte_data(new_client, ADV717X_REG_MR1); + i2c_set_clientdata(client, data); - if (mr1 == 0x55) { - mr0 = i2c_smbus_read_byte_data(new_client, ADV717X_REG_MR0); - - if (mr0 & 0x20) { - strcpy(new_client->name, "ADV7175A chip"); - data->chiptype = CHIP_ADV7175A; - printk(KERN_NOTICE "adv717x.o: ADV7175A chip detected\n"); - if ((err = adv7175a_setup(new_client))) { - kfree(new_client); - return err; - } - } else { - strcpy(new_client->name, "ADV7170 chip"); - data->chiptype = CHIP_ADV7170; - printk(KERN_NOTICE "adv717x.o: ADV7170 chip detected\n"); - if ((err = adv7170_setup(new_client))) { - kfree(new_client); - return err; - } + /* Registers 0x25 to 0x2f are implemented on ADV7170 but not on ADV7175A chips */ + result = i2c_smbus_read_byte_data(client, 0x25); + data->chiptype = (result < 0)?CHIP_ADV7175A:CHIP_ADV7170; + + switch (data->chiptype) { + case CHIP_ADV7175A: + result = i2c_smbus_read_byte_data(client, ADV7175_REG_MR3); + if (result < 0) { + err = -ENODEV; + goto cleanup; } - -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,12) - new_client->id = adv717x_id++; -#endif - - /* - if (strncmp(adapter->name, "EM8300", 6) == 0) - adv717x_em8300_setup(new_client); - */ - - if ((err = i2c_attach_client(new_client))) { - kfree(new_client); - return err; + data->chiprev = result & 0x1; + strcpy(client->name, "ADV7175A chip"); + printk(KERN_NOTICE "adv717x.o: ADV7175A rev. %d chip probed\n", data->chiprev); + if ((err = adv7175a_setup(client))) + goto cleanup; + break; + case CHIP_ADV7170: + result = i2c_smbus_read_byte_data(client, ADV7170_REG_MR3); + if (result < 0) { + err = -ENODEV; + goto cleanup; } + data->chiprev = result & 0x3; + strcpy(client->name, "ADV7170 chip"); + printk(KERN_NOTICE "adv717x.o: ADV7170 rev. %d chip probed\n", data->chiprev); + if ((err = adv7170_setup(client))) + goto cleanup; + break; + default: + printk(KERN_ERR "adv717x.o: WTF!?\n"); + goto cleanup; + } - adv717x_update(new_client); - - EM8300_MOD_INC_USE_COUNT; + adv717x_update(client); - return 0; - } - kfree(new_client); + EM8300_MOD_INC_USE_COUNT; return 0; -} -static int adv717x_attach_adapter(struct i2c_adapter *adapter) -{ - adv717x_detect(adapter, 0x6a); - adv717x_detect(adapter, 0x7a); - adv717x_detect(adapter, 0xa); - return 0; -} + cleanup: + kfree(data); + return err; +} -int adv717x_detach_client(struct i2c_client *client) +static int adv717x_remove(struct i2c_client *client) { - int err; struct adv717x_data_s *data = i2c_get_clientdata(client); - if ((err = i2c_detach_client(client))) { - printk(KERN_ERR "adv717x.o: Client deregistration failed, client not detached.\n"); - return err; - } - EM8300_MOD_DEC_USE_COUNT; kfree(data->conf); - kfree(client); + kfree(data); return 0; } -int adv717x_command(struct i2c_client *client, unsigned int cmd, void *arg) +static int adv717x_command(struct i2c_client *client, unsigned int cmd, void *arg) { int ret = 0; struct adv717x_data_s *data = i2c_get_clientdata(client); diff -Nru em8300-0.16.4/modules/adv717x.h em8300-0.18.0/modules/adv717x.h --- em8300-0.16.4/modules/adv717x.h 2007-12-02 23:33:45.000000000 +0000 +++ em8300-0.18.0/modules/adv717x.h 2010-06-28 18:12:31.000000000 +0100 @@ -1,3 +1,23 @@ +/* + * adv717x.h + * + * Copyright (C) 2000 Henrik Johansson + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + #if !defined(I2C_DRIVERID_ADV717X) #define I2C_DRIVERID_ADV717X 0xf000 #endif diff -Nru em8300-0.16.4/modules/bt865.c em8300-0.18.0/modules/bt865.c --- em8300-0.16.4/modules/bt865.c 2006-11-16 23:11:36.000000000 +0000 +++ em8300-0.18.0/modules/bt865.c 2010-06-28 18:12:31.000000000 +0100 @@ -48,12 +48,14 @@ #include #include -#include #include "em8300_compat24.h" #include "bt865.h" #include "encoder.h" +#include "em8300_driver.h" +#include "em8300_version.h" + MODULE_SUPPORTED_DEVICE("bt865"); MODULE_LICENSE("GPL"); #ifdef MODULE_VERSION @@ -91,9 +93,13 @@ #endif MODULE_PARM_DESC(output_mode, "Specifies the output mode to use for the BT865 video encoder. See the README-modoptions file for the list of mode names to use. Default is SVideo + composite (\"comp+svideo\")."); -static int bt865_attach_adapter(struct i2c_adapter *adapter); -int bt865_detach_client(struct i2c_client *client); -int bt865_command(struct i2c_client *client, unsigned int cmd, void *arg); +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,26) +#define bt865_probe(client, id) bt865_probe(client) +#endif + +static int bt865_probe(struct i2c_client *client, const struct i2c_device_id *id); +static int bt865_remove(struct i2c_client *client); +static int bt865_command(struct i2c_client *client, unsigned int cmd, void *arg); static int bt865_setup(struct i2c_client *client); static const mode_info_t mode_info[] = { @@ -112,6 +118,74 @@ int configlen; }; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,26) +static struct i2c_device_id bt865_idtable[] = { + { "bt865", 0 }, + { } +}; + +MODULE_DEVICE_TABLE(i2c, bt865_idtable); +#endif + +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22) +static struct i2c_driver bt865_driver; + +static int bt865_attach_adapter(struct i2c_adapter *adapter) +{ + struct i2c_client *new_client; + int result; + + if (!i2c_check_functionality(adapter, I2C_FUNC_SMBUS_READ_BYTE | I2C_FUNC_SMBUS_WRITE_BYTE_DATA)) + return 0; + + if (!(new_client = kmalloc(sizeof(struct i2c_client), GFP_KERNEL))) + return -ENOMEM; + + memset(new_client, 0, sizeof(struct i2c_client)); + new_client->addr = 0x45; + new_client->adapter = adapter; + new_client->driver = &bt865_driver; + + result = i2c_smbus_read_byte(new_client); + if (result < 0) + goto cleanup; + if ((result & 0xe0) != 0xa0) + goto cleanup; + + if (bt865_probe(new_client, NULL)) + goto cleanup; + + if (i2c_attach_client(new_client)) { + bt865_remove(new_client); + goto cleanup; + } + + return 0; + + cleanup: + kfree(new_client); + return 0; +} + +static int bt865_detach_client(struct i2c_client *client) +{ + int err; + + if ((err = i2c_detach_client(client))) { + printk(KERN_ERR "bt865.o: Client deregistration failed, client not detached.\n"); + return err; + } + + if ((err = bt865_remove(client))) { + printk(KERN_ERR "bt865.o: Client removal failed, client not detached.\n"); + return err; + } + + kfree(client); + return 0; +} +#endif + /* This is the driver that will be inserted */ static struct i2c_driver bt865_driver = { #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) @@ -125,9 +199,16 @@ .name = "bt865", .flags = I2C_DF_NOTIFY, #endif - .id = I2C_DRIVERID_BT865, +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22) .attach_adapter = &bt865_attach_adapter, .detach_client = &bt865_detach_client, +#else +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,26) + .id_table = bt865_idtable, +#endif + .probe = &bt865_probe, + .remove = &bt865_remove, +#endif .command = &bt865_command }; @@ -896,90 +977,51 @@ return 0; } -static int bt865_detect(struct i2c_adapter *adapter, int address) +static int bt865_probe(struct i2c_client *client, + const struct i2c_device_id *id) { struct bt865_data_s *data; - struct i2c_client *new_client; - int err, chk = 0; - - chk = i2c_check_functionality(adapter, - I2C_FUNC_SMBUS_READ_BYTE | I2C_FUNC_SMBUS_WRITE_BYTE_DATA); + int err = 0; - if (!chk) { +/* + if (!i2c_check_functionality(client->adapter, I2C_FUNC_SMBUS_READ_BYTE | I2C_FUNC_SMBUS_WRITE_BYTE_DATA)) { return 0; } +*/ - new_client = kmalloc(sizeof(struct i2c_client) + sizeof(struct bt865_data_s), - GFP_KERNEL); - - if (!new_client) { + if (!(data = kmalloc(sizeof(struct bt865_data_s), GFP_KERNEL))) return -ENOMEM; - } - memset(new_client, 0, sizeof(struct i2c_client) + sizeof(struct bt865_data_s)); - data = (struct bt865_data_s *) (((struct i2c_client *) new_client) + 1); - new_client->addr = address; - new_client->adapter = adapter; - new_client->driver = &bt865_driver; - new_client->flags = 0; + memset(data, 0, sizeof(struct bt865_data_s)); - i2c_set_clientdata(new_client, data); + i2c_set_clientdata(client, data); -// i2c_smbus_write_byte_data(new_client,0xa6, 0x80/*b1*/); -// the write is not needed -// from the left we have three bits identifying the chip -// which is a 4 (100) for the bt864 and a 5 (101) for the bt865 -// followed by 5 bits for the version number. in this case 17 (1 0001) -// thus 1011 0001 (0xb1) is correct for the bt865a version 17 - if (i2c_smbus_read_byte_data(new_client, 0) == 0xb1) { - strcpy(new_client->name, "BT865 chip"); - printk(KERN_NOTICE "bt865.o: BT865 chip detected\n"); + strcpy(client->name, "BT865 chip"); + printk(KERN_NOTICE "bt865.o: BT865 chip detected\n"); -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,12) - new_client->id = bt865_id++; -#endif + if ((err = bt865_setup(client))) + goto cleanup; - if ((err = i2c_attach_client(new_client))) { - kfree(new_client); - return err; - } - - if (bt865_setup(new_client)) { - return -1; - } + EM8300_MOD_INC_USE_COUNT; - EM8300_MOD_INC_USE_COUNT; - - return 0; - } - - kfree(new_client); return 0; -} -static int bt865_attach_adapter(struct i2c_adapter *adapter) -{ - bt865_detect(adapter, 0x45); - return 0; + cleanup: + kfree(data); + return err; } - -int bt865_detach_client(struct i2c_client *client) +static int bt865_remove(struct i2c_client *client) { - int err; - - if ((err = i2c_detach_client(client))) { - printk(KERN_ERR "bt865.o: Client deregistration failed, client not detached.\n"); - return err; - } + struct bt865_data_s *data = i2c_get_clientdata(client); EM8300_MOD_DEC_USE_COUNT; - kfree(client); + kfree(data); return 0; } -int bt865_command(struct i2c_client *client, unsigned int cmd, void *arg) +static int bt865_command(struct i2c_client *client, unsigned int cmd, void *arg) { struct bt865_data_s *data = i2c_get_clientdata(client); diff -Nru em8300-0.16.4/modules/bt865.h em8300-0.18.0/modules/bt865.h --- em8300-0.16.4/modules/bt865.h 2004-03-26 22:19:27.000000000 +0000 +++ em8300-0.18.0/modules/bt865.h 2010-06-28 18:12:31.000000000 +0100 @@ -1,3 +1,23 @@ +/* + * bt865.h + * + * Copyright (C) 2000 Henrik Johansson + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + #if !defined(I2C_DRIVERID_BT865) #define I2C_DRIVERID_BT865 0xf001 #endif diff -Nru em8300-0.16.4/modules/em8300_alsa.c em8300-0.18.0/modules/em8300_alsa.c --- em8300-0.16.4/modules/em8300_alsa.c 2007-03-16 22:02:31.000000000 +0000 +++ em8300-0.18.0/modules/em8300_alsa.c 2010-06-28 18:12:31.000000000 +0100 @@ -1,4 +1,4 @@ -/* $Id: em8300_alsa.c,v 1.10 2007/03/16 22:02:31 nboullis Exp $ +/* $Id$ * * em8300_alsa.c -- alsa interface to the audio part of the em8300 chip * Copyright (C) 2004-2006 Nicolas Boullis @@ -22,7 +22,9 @@ #if defined(CONFIG_SND) || defined(CONFIG_SND_MODULE) +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,25) #include +#endif #include #include #include @@ -30,7 +32,11 @@ #include #include #include +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,27) +#include +#else #include +#endif #include "em8300_reg.h" @@ -48,6 +54,14 @@ #define snd_device_ops_t struct snd_device_ops #endif +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30) +#define snd_card_create(idx, xid, module, extra_size, card_ret) \ +({ \ + *(card_ret) = snd_card_new(idx, xid, module, extra_size); \ + *(card_ret) == NULL?-1:0; \ +}) +#endif + typedef struct snd_em8300_pcm_indirect { unsigned int hw_buffer_size; /* Byte size of hardware buffer */ unsigned int hw_queue_size; /* Max queue size of hw buffer (0 = buffer size) */ @@ -112,9 +126,19 @@ if (!em->ucodeloaded) return -ENODEV; + down(&em->audio_driver_style_lock); + if (em->audio_driver_style != NONE) { + up(&em->audio_driver_style_lock); + return -EBUSY; + } + em->audio_driver_style = ALSA; + up(&em->audio_driver_style_lock); + down(&em8300_alsa->lock); if (em8300_alsa->substream) { up(&em8300_alsa->lock); + printk("em8300-%d: snd_em8300_playback_open: em->audio_driver_style == NONE but em8300_alsa->substream is not NULL !?\n", em->card_nr); + em->audio_driver_style = NONE; return -EBUSY; } em8300_alsa->substream = substream; @@ -126,7 +150,7 @@ snd_em8300_playback_hw.formats = SNDRV_PCM_FMTBIT_IEC958_SUBFRAME_BE; runtime->hw = snd_em8300_playback_hw; -// printk("snd_em8300_playback_open called.\n"); +// printk("em8300-%d: snd_em8300_playback_open called.\n", em->card_nr); em->clockgen &= ~CLOCKGEN_OUTMASK; if (substream->pcm->device == EM8300_ALSA_ANALOG_DEVICENUM) @@ -138,8 +162,7 @@ if (substream->pcm->device == EM8300_ALSA_ANALOG_DEVICENUM) { write_register(EM8300_AUDIO_RATE, 0x62); em8300_setregblock(em, 2 * ucregister(Mute_Pattern), 0, 0x600); - } - else { + } else { write_register(EM8300_AUDIO_RATE, 0x3a0); } write_ucregister(MA_Threshold, 6); @@ -150,21 +173,23 @@ static int snd_em8300_playback_close(snd_pcm_substream_t *substream) { em8300_alsa_t *em8300_alsa = snd_pcm_substream_chip(substream); + struct em8300_s *em = em8300_alsa->em; em8300_alsa->substream = NULL; -// printk("snd_em8300_playback_close called.\n"); + em->audio_driver_style = NONE; +// printk("em8300-%d: snd_em8300_playback_close called.\n", em->card_nr); return 0; } static int snd_em8300_pcm_hw_params(snd_pcm_substream_t *substream, snd_pcm_hw_params_t *hw_params) { -// printk("snd_em8300_pcm_hw_params called.\n"); +// printk("em8300-%d: snd_em8300_pcm_hw_params called.\n", em->card_nr); return snd_pcm_lib_malloc_pages(substream, params_buffer_bytes(hw_params)); } static int snd_em8300_pcm_hw_free(snd_pcm_substream_t *substream) { -// printk("snd_em8300_pcm_hw_free called.\n"); +// printk("em8300-%d: snd_em8300_pcm_hw_free called.\n", em->card_nr); return snd_pcm_lib_free_pages(substream); } @@ -173,24 +198,24 @@ em8300_alsa_t *em8300_alsa = snd_pcm_substream_chip(substream); struct em8300_s *em = em8300_alsa->em; snd_pcm_runtime_t *runtime = substream->runtime; -// printk("snd_em8300_pcm_prepare called.\n"); +// printk("em8300-%d: snd_em8300_pcm_prepare called.\n", em->card_nr); em->clockgen &= ~CLOCKGEN_SAMPFREQ_MASK; switch (runtime->rate) { case 48000: -// printk("runtime->rate set to 48000\n"); +// printk("em8300-%d: runtime->rate set to 48000\n", em->card_nr); em->clockgen |= CLOCKGEN_SAMPFREQ_48; break; case 44100: -// printk("runtime->rate set to 44100\n"); +// printk("em8300-%d: runtime->rate set to 44100\n", em->card_nr); em->clockgen |= CLOCKGEN_SAMPFREQ_44; break; case 32000: -// printk("runtime->rate set to 32000\n"); +// printk("em8300-%d: runtime->rate set to 32000\n", em->card_nr); em->clockgen |= CLOCKGEN_SAMPFREQ_32; break; default: -// printk("bad runtime->rate\n"); +// printk("em8300-%d: bad runtime->rate\n", em->card_nr); em->clockgen |= CLOCKGEN_SAMPFREQ_48; } em8300_clockgen_write(em, em->clockgen); @@ -215,7 +240,7 @@ em8300_alsa_t *em8300_alsa = snd_pcm_substream_chip(substream); struct em8300_s *em = em8300_alsa->em; // snd_pcm_runtime_t *runtime = substream->runtime; -// printk("snd_em8300_pcm_trigger(%d) called.\n", cmd); +// printk("em8300-%d: snd_em8300_pcm_trigger(%d) called.\n", em->card_nr, cmd); switch (cmd) { case SNDRV_PCM_TRIGGER_START: em8300_alsa->indirect.hw_io = @@ -273,7 +298,7 @@ // snd_pcm_uframes_t ret = snd_pcm_indirect_playback_pointer(substream, // &em8300_alsa->indirect, // hw_ptr); -// printk("snd_em8300_pcm_pointer called: %d\n", ret); +// printk("em8300-%d: snd_em8300_pcm_pointer called: %d\n", em->card_nr, ret); // return ret; return snd_em8300_pcm_indirect_playback_pointer(substream, &em8300_alsa->indirect, @@ -297,11 +322,11 @@ ((uint32_t *)ucregister_ptr(MA_PCIStart))+3*writeindex+2); writeindex += 1; writeindex %= read_ucregister(MA_PCISize) / 3; -// printk("snd_em8300_pcm_trans_dma(%d) called.\n", bytes); +// printk("em8300-%d: snd_em8300_pcm_trans_dma(%d) called.\n", em->card_nr, bytes); if (readindex != writeindex) write_ucregister(MA_PCIWrPtr, ucregister(MA_PCIStart) - 0x1000 + writeindex * 3); else - printk("snd_em8300_pcm_trans_dma failed.\n"); + printk("em8300-%d: snd_em8300_pcm_trans_dma failed.\n", em->card_nr); } static inline void @@ -330,7 +355,7 @@ bytes = sw_to_end; if (8192 < bytes) bytes = 8192; - if (! bytes) + if (!bytes) break; copy(substream, rec, bytes); rec->hw_data += bytes; @@ -344,9 +369,10 @@ } } -static int snd_em8300_pcm_ack(snd_pcm_substream_t *substream) { +static int snd_em8300_pcm_ack(snd_pcm_substream_t *substream) +{ em8300_alsa_t *em8300_alsa = snd_pcm_substream_chip(substream); -// printk("snd_em8300_pcm_ack called.\n"); +// printk("em8300-%d: snd_em8300_pcm_ack called.\n", em->card_nr); snd_em8300_pcm_indirect_playback_transfer(substream, &em8300_alsa->indirect, snd_em8300_pcm_trans_dma); return 0; @@ -377,7 +403,7 @@ snd_pcm_t *pcm; int err; - if ((err = snd_pcm_new(em8300_alsa->card, "EM8300/" __stringify(EM8300_ALSA_ANALOG_DEVICENUM), EM8300_ALSA_ANALOG_DEVICENUM, 1, 0, &pcm))<0) + if ((err = snd_pcm_new(em8300_alsa->card, "EM8300/" __stringify(EM8300_ALSA_ANALOG_DEVICENUM), EM8300_ALSA_ANALOG_DEVICENUM, 1, 0, &pcm)) < 0) return err; snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_em8300_playback_ops); @@ -411,7 +437,7 @@ snd_pcm_t *pcm; int err; - if ((err = snd_pcm_new(em8300_alsa->card, "EM8300/" __stringify(EM8300_ALSA_DIGITAL_DEVICENUM), EM8300_ALSA_DIGITAL_DEVICENUM, 1, 0, &pcm))<0) + if ((err = snd_pcm_new(em8300_alsa->card, "EM8300/" __stringify(EM8300_ALSA_DIGITAL_DEVICENUM), EM8300_ALSA_DIGITAL_DEVICENUM, 1, 0, &pcm)) < 0) return err; snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK, &snd_em8300_playback_ops); @@ -483,13 +509,9 @@ em8300_alsa_t *em8300_alsa; int err; - if (audio_driver_nr[em->card_nr] != AUDIO_DRIVER_ALSA) - return; - em->alsa_card = NULL; - card = snd_card_new(alsa_index[em->card_nr], alsa_id[em->card_nr], THIS_MODULE, 0); - if (card == NULL) + if ((err = snd_card_create(alsa_index[em->card_nr], alsa_id[em->card_nr], THIS_MODULE, 0, &card)) < 0) return; if ((err = snd_em8300_create(card, em, &em8300_alsa)) < 0) { @@ -511,7 +533,8 @@ strcpy(card->driver, "EM8300"); strcpy(card->shortname, "Sigma Designs' EM8300"); - sprintf(card->longname, "%s", card->shortname); + sprintf(card->longname, "%s at %#lx irq %d", + card->shortname, (unsigned long int)em->mem, em->dev->irq); if ((err = snd_card_register(card)) < 0) { snd_card_free(card); @@ -523,29 +546,25 @@ static void em8300_alsa_disable_card(struct em8300_s *em) { - if (audio_driver_nr[em->card_nr] != AUDIO_DRIVER_ALSA) - return; - if (em->alsa_card) snd_card_free(em->alsa_card); } void em8300_alsa_audio_interrupt(struct em8300_s *em) { - if (audio_driver_nr[em->card_nr] != AUDIO_DRIVER_ALSA) + if (em->audio_driver_style != ALSA) return; if (em->alsa_card) { em8300_alsa_t *em8300_alsa = (em8300_alsa_t *)(em->alsa_card->private_data); if (em8300_alsa->substream) { -// printk("calling snd_pcm_period_elapsed\n"); +// printk("em8300-%d: calling snd_pcm_period_elapsed\n", em->card_nr); snd_pcm_period_elapsed(em8300_alsa->substream); } } } -struct em8300_registrar_s em8300_alsa_registrar = -{ +struct em8300_registrar_s em8300_alsa_registrar = { .register_driver = NULL, .register_card = NULL, .enable_card = &em8300_alsa_enable_card, @@ -559,8 +578,7 @@ #else -struct em8300_registrar_s em8300_alsa_registrar = -{ +struct em8300_registrar_s em8300_alsa_registrar = { .register_driver = NULL, .register_card = NULL, .enable_card = NULL, diff -Nru em8300-0.16.4/modules/em8300_alsa.h em8300-0.18.0/modules/em8300_alsa.h --- em8300-0.16.4/modules/em8300_alsa.h 2006-04-10 23:31:14.000000000 +0100 +++ em8300-0.18.0/modules/em8300_alsa.h 2010-06-28 18:12:31.000000000 +0100 @@ -1,4 +1,4 @@ -/* $Id: em8300_alsa.h,v 1.2 2006/04/10 22:31:14 nboullis Exp $ +/* $Id$ * * em8300_alsa.h -- alsa interface to the audio part of the em8300 chip * Copyright (C) 2004 Nicolas Boullis diff -Nru em8300-0.16.4/modules/em8300_audio.c em8300-0.18.0/modules/em8300_audio.c --- em8300-0.16.4/modules/em8300_audio.c 2008-01-05 22:52:28.000000000 +0000 +++ em8300-0.18.0/modules/em8300_audio.c 2010-06-28 18:12:31.000000000 +0100 @@ -1,3 +1,30 @@ +/* + * em8300_audio.c + * + * Copyright (C) 2000 Henrik Johansson + * (C) 2000 Ze'ev Maor + * (C) 2001 Rick Haines + * (C) 2001 Mattias Svensson + * (C) 2001-2002 Steven Brookes + * (C) 2002 Daniel Holm + * (C) 2002 Michael Roitzsch + * (C) 2003-2008 Nicolas Boullis + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + #define __NO_VERSION__ #include @@ -21,6 +48,7 @@ #include "em8300_reg.h" #include +#include "em8300_driver.h" #include "em8300_fifo.h" #ifndef AFMT_AC3 @@ -46,15 +74,15 @@ unsigned int in_value; unsigned int out_value; int channel_status_bit = (em->channel_status[em->channel_status_pos/8] & (0x80 >> (em->channel_status_pos%8))) != 0; - in_value = mute?0:__be16_to_cpu(*(in++)); - out_value = ((em->channel_status_pos == 0)?SPDIF_PREAMBLE_B:SPDIF_PREAMBLE_M) + in_value = mute ? 0 : __be16_to_cpu(*(in++)); + out_value = ((em->channel_status_pos == 0) ? SPDIF_PREAMBLE_B : SPDIF_PREAMBLE_M) | (in_value << 12) - | (channel_status_bit?0x40000000UL:0x00000000UL); + | (channel_status_bit ? 0x40000000UL : 0x00000000UL); *(out++) = __cpu_to_be32(out_value); - in_value = mute?0:__be16_to_cpu(*(in++)); + in_value = mute ? 0:__be16_to_cpu(*(in++)); out_value = SPDIF_PREAMBLE_W | (in_value << 12) - | (channel_status_bit?0x40000000UL:0x00000000UL); + | (channel_status_bit ? 0x40000000UL : 0x00000000UL); *(out++) = __cpu_to_be32(out_value); em->channel_status_pos++; em->channel_status_pos %= 192; @@ -111,12 +139,12 @@ if (em->audio.format == AFMT_S16_LE || em->audio.format == AFMT_AC3) { if (em->audio.channels == 2) { - for(i = 0; i < inlength; i += 2) { + for (i = 0; i < inlength; i += 2) { get_user(em->mafifo->preprocess_buffer[i + 1], inbuf_user++); get_user(em->mafifo->preprocess_buffer[i + 0], inbuf_user++); } } else { - for(i = 0; i < inlength; i += 2) { + for (i = 0; i < inlength; i += 2) { get_user(em->mafifo->preprocess_buffer[2 * i + 1], inbuf_user++); get_user(em->mafifo->preprocess_buffer[2 * i + 0], inbuf_user++); em->mafifo->preprocess_buffer[2 * i + 3] = em->mafifo->preprocess_buffer[2 * i + 1]; @@ -128,7 +156,7 @@ if (em->audio.channels == 2) { (void)copy_from_user(em->mafifo->preprocess_buffer, inbuf_user, inlength); } else { - for(i = 0; i < inlength; i += 2) { + for (i = 0; i < inlength; i += 2) { get_user(em->mafifo->preprocess_buffer[2 * i + 0], inbuf_user++); get_user(em->mafifo->preprocess_buffer[2 * i + 1], inbuf_user++); em->mafifo->preprocess_buffer[2 * i + 2] = em->mafifo->preprocess_buffer[2 * i + 0]; @@ -156,7 +184,7 @@ { em8300_waitfor(em, ucregister(MA_Command), 0xffff, 0xffff); - pr_debug("MA_Command: %d\n", cmd); + pr_debug("em8300-%d: MA_Command: %d\n", em->card_nr, cmd); write_ucregister(MA_Command, cmd); return em8300_waitfor(em, ucregister(MA_Status), cmd, 0xffff); @@ -250,7 +278,7 @@ return em->audio.format; } -int em8300_audio_ioctl(struct em8300_s *em,unsigned int cmd, unsigned long arg) +int em8300_audio_ioctl(struct em8300_s *em, unsigned int cmd, unsigned long arg) { int len = 0; int val = 0; @@ -277,12 +305,12 @@ switch (cmd) { case SNDCTL_DSP_RESET: /* reset device */ - pr_debug("em8300_audio.o: SNDCTL_DSP_RESET\n"); + pr_debug("em8300-%d: SNDCTL_DSP_RESET\n", em->card_nr); em8300_audio_flush(em); return 0; case SNDCTL_DSP_SYNC: /* wait until last byte is played and reset device */ - pr_debug("em8300_audio.o: SNDCTL_DSP_SYNC\n"); + pr_debug("em8300-%d: SNDCTL_DSP_SYNC\n", em->card_nr); em8300_fifo_sync(em->mafifo); return 0; @@ -290,13 +318,13 @@ if (get_user(val, (int *) arg)) { return -EFAULT; } - pr_debug("em8300_audio.o: SNDCTL_DSP_SPEED %i ", val); + pr_debug("em8300-%d: SNDCTL_DSP_SPEED %i ", em->card_nr, val); val = set_speed(em, val); pr_debug("%i\n", val); break; case SOUND_PCM_READ_RATE: /* read sample rate */ - pr_debug("em8300_audio.o: SNDCTL_DSP_RATE %i ", val); + pr_debug("em8300-%d: SNDCTL_DSP_RATE %i ", em->card_nr, val); val = em->audio.speed; pr_debug("%i\n", val); break; @@ -308,13 +336,13 @@ if (val > 1 || val < 0) { return -EINVAL; } - pr_debug("em8300_audio.o: SNDCTL_DSP_STEREO %i\n", val); + pr_debug("em8300-%d: SNDCTL_DSP_STEREO %i\n", em->card_nr, val); set_channels(em, val + 1); break; case SNDCTL_DSP_GETBLKSIZE: /* get fragment size */ val = em->audio.slotsize; - pr_debug("em8300_audio.o: SNDCTL_DSP_GETBLKSIZE %i\n", val); + pr_debug("em8300-%d: SNDCTL_DSP_GETBLKSIZE %i\n", em->card_nr, val); break; case SNDCTL_DSP_CHANNELS: /* set number of channels */ @@ -324,24 +352,24 @@ if (val > 2 || val < 1) { return -EINVAL; } - pr_debug("em8300_audio.o: SNDCTL_DSP_CHANNELS %i\n", val); + pr_debug("em8300-%d: SNDCTL_DSP_CHANNELS %i\n", em->card_nr, val); set_channels(em, val); break; case SOUND_PCM_READ_CHANNELS: /* read number of channels */ val = em->audio.channels; - pr_debug("em8300_audio.o: SOUND_PCM_READ_CHANNELS %i\n", val); + pr_debug("em8300-%d: SOUND_PCM_READ_CHANNELS %i\n", em->card_nr, val); break; case SNDCTL_DSP_POST: /* "there is likely to be a pause in the output" */ - pr_debug("em8300_audio.o: SNDCTL_DSP_POST\n"); - pr_debug("em8300_audio.o: SNDCTL_DSP_GETPOST not implemented yet\n"); + pr_debug("em8300-%d: SNDCTL_DSP_POST\n", em->card_nr); + pr_debug("em8300-%d: SNDCTL_DSP_GETPOST not implemented yet\n", em->card_nr); return -ENOSYS; break; case SNDCTL_DSP_SETFRAGMENT: /* set fragment size */ - pr_debug("em8300_audio.o: SNDCTL_DSP_SETFRAGMENT %i\n", val); - pr_debug("em8300_audio.o: SNDCTL_DSP_SETFRAGMENT not supported by hardware!\n"); + pr_debug("em8300-%d: SNDCTL_DSP_SETFRAGMENT %i\n", em->card_nr, val); + pr_debug("em8300-%d: SNDCTL_DSP_SETFRAGMENT not supported by hardware!\n", em->card_nr); break; case SNDCTL_DSP_GETFMTS: /* get possible formats */ @@ -350,35 +378,34 @@ #else val = AFMT_S16_BE | AFMT_S16_LE; #endif - pr_debug("em8300_audio.o: SNDCTL_DSP_GETFMTS\n"); + pr_debug("em8300-%d: SNDCTL_DSP_GETFMTS\n", em->card_nr); break; case SNDCTL_DSP_SETFMT: /* set sample format */ if (get_user(val, (int *) arg)) { return -EFAULT; } - pr_debug("em8300_audio.o: SNDCTL_DSP_SETFMT %i ", val); + pr_debug("em8300-%d: SNDCTL_DSP_SETFMT %i ", em->card_nr, val); val = set_format(em, val); pr_debug("%i\n", val); break; case SOUND_PCM_READ_BITS: /* read sample format */ val = em->audio.format; - pr_debug("em8300_audio.o: SOUND_PCM_READ_BITS\n"); + pr_debug("em8300-%d: SOUND_PCM_READ_BITS\n", em->card_nr); break; case SNDCTL_DSP_GETOSPACE: { audio_buf_info buf_info; - switch(em->audio_mode) - { + switch (em->audio_mode) { case EM8300_AUDIOMODE_ANALOG: - buf_info.fragments= + buf_info.fragments = em8300_fifo_freeslots(em->mafifo) - em->mafifo->nslots / 2; break; default: - buf_info.fragments= + buf_info.fragments = em8300_fifo_freeslots(em->mafifo) / 2; break; } @@ -386,25 +413,25 @@ buf_info.fragstotal = em->mafifo->nslots / 2; buf_info.fragsize = em->audio.slotsize; buf_info.bytes = em->mafifo->nslots * em->audio.slotsize / 2; - pr_debug("em8300_audio.o: SNDCTL_DSP_GETOSPACE\n"); + pr_debug("em8300-%d: SNDCTL_DSP_GETOSPACE\n", em->card_nr); if (copy_to_user((void *) arg, &buf_info, sizeof(audio_buf_info))) return -EFAULT; return 0; } case SNDCTL_DSP_GETISPACE: - pr_debug("em8300_audio.o: SNDCTL_DSP_GETISPACE\n"); + pr_debug("em8300-%d: SNDCTL_DSP_GETISPACE\n", em->card_nr); return -ENOSYS; break; case SNDCTL_DSP_GETCAPS: val = DSP_CAP_REALTIME | DSP_CAP_BATCH | DSP_CAP_TRIGGER; - pr_debug("em8300_audio.o: SNDCTL_DSP_GETCAPS\n"); + pr_debug("em8300-%d: SNDCTL_DSP_GETCAPS\n", em->card_nr); break; case SNDCTL_DSP_GETTRIGGER: val = em->audio.enable_bits; - pr_debug("em8300_audio.o: SNDCTL_DSP_GETTRIGGER\n"); + pr_debug("em8300-%d: SNDCTL_DSP_GETTRIGGER\n", em->card_nr); break; case SNDCTL_DSP_SETTRIGGER: @@ -414,12 +441,12 @@ mpegaudio_command(em, MACOMMAND_PLAY); } } - pr_debug("em8300_audio.o: SNDCTL_DSP_SETTRIGGER\n"); - pr_info("em8300_audio.o: SNDCTL_DSP_SETTRIGGER not implemented properly yet\n"); + pr_debug("em8300-%d: SNDCTL_DSP_SETTRIGGER\n", em->card_nr); + pr_info("em8300-%d: SNDCTL_DSP_SETTRIGGER not implemented properly yet\n", em->card_nr); break; case SNDCTL_DSP_GETIPTR: - pr_debug("em8300_audio.o: SNDCTL_DSP_GETIPTR\n"); + pr_debug("em8300-%d: SNDCTL_DSP_GETIPTR\n", em->card_nr); return -ENOSYS; break; @@ -430,18 +457,18 @@ if (ci.bytes < 0) ci.bytes = 0; ci.blocks = 0; ci.ptr = 0; - pr_debug("em8300_audio.o: SNDCTL_DSP_GETOPTR %i\n", ci.bytes); + pr_debug("em8300-%d: SNDCTL_DSP_GETOPTR %i\n", em->card_nr, ci.bytes); if (copy_to_user((void *) arg, &ci, sizeof(count_info))) return -EFAULT; return 0; } case SNDCTL_DSP_GETODELAY: val = em8300_audio_calcbuffered(em); - pr_debug("em8300_audio.o: SNDCTL_DSP_GETODELAY %i\n", val); + pr_debug("em8300-%d: SNDCTL_DSP_GETODELAY %i\n", em->card_nr, val); break; default: - pr_info("em8300_audio.o: unknown ioctl called\n"); + pr_info("em8300-%d: unknown audio ioctl called\n", em->card_nr); return -EINVAL; } @@ -465,6 +492,9 @@ return -ENODEV; } + set_speed(em, em->audio.speed); + set_audiomode(em, em->audio_mode); + em->mafifo->bytes = 0; return audio_start(em); @@ -481,6 +511,9 @@ { em->audio_mode = mode; + if (em->audio_driver_style != OSS) + return 0; + em->clockgen &= ~CLOCKGEN_OUTMASK; if (em->audio_mode == EM8300_AUDIOMODE_ANALOG) { @@ -514,7 +547,7 @@ write_register(EM8300_AUDIO_RATE, 0x62); em8300_setregblock(em, 2 * ucregister(Mute_Pattern), 0, 0x600); - printk(KERN_NOTICE "em8300_audio.o: Analog audio enabled\n"); + printk(KERN_NOTICE "em8300-%d: Analog audio enabled\n", em->card_nr); break; case EM8300_AUDIOMODE_DIGITALPCM: em->pcm_mode = EM8300_AUDIOMODE_DIGITALPCM; @@ -526,7 +559,7 @@ em8300_writeregblock(em, 2*ucregister(Mute_Pattern), (unsigned *)em->mafifo->preprocess_buffer, em->mafifo->slotsize); - printk(KERN_NOTICE "em8300_audio.o: Digital PCM audio enabled\n"); + printk(KERN_NOTICE "em8300-%d: Digital PCM audio enabled\n", em->card_nr); break; case EM8300_AUDIOMODE_DIGITALAC3: write_register(EM8300_AUDIO_RATE, 0x3a0); @@ -535,7 +568,7 @@ sub_prepare_SPDIF(em, (uint32_t *)em->mafifo->preprocess_buffer, NULL, 192); em8300_writeregblock(em, 2*ucregister(Mute_Pattern), (unsigned *)em->mafifo->preprocess_buffer, em->mafifo->slotsize); - printk(KERN_NOTICE "em8300_audio.o: Digital AC3 audio enabled\n"); + printk(KERN_NOTICE "em8300-%d: Digital AC3 audio enabled\n", em->card_nr); break; } return 0; @@ -549,16 +582,16 @@ em->audio.format = AFMT_S16_NE; em->audio.slotsize = em->mafifo->slotsize; - set_speed(em, 48000); + em->audio.speed = 48000; - set_audiomode(em, EM8300_AUDIOMODE_DEFAULT); + em->audio_mode = EM8300_AUDIOMODE_DEFAULT; ret = em8300_audio_flush(em); setup_mafifo(em); if (ret) { - printk(KERN_ERR "em8300_audio.o: Couldn't zero audio buffer\n"); + printk(KERN_ERR "em8300-%d: Couldn't zero audio buffer\n", em->card_nr); return ret; } @@ -586,7 +619,7 @@ em->mafifo->preprocess_ratio; } -ssize_t em8300_audio_write(struct em8300_s *em, const char * buf, size_t count, loff_t *ppos) +ssize_t em8300_audio_write(struct em8300_s *em, const char *buf, size_t count, loff_t *ppos) { if (em->nonblock[1]) { return em8300_fifo_write(em->mafifo, count, buf, 0); @@ -599,10 +632,12 @@ int em8300_ioctl_setaudiomode(struct em8300_s *em, int mode) { - em8300_audio_flush(em); + if (em->audio_driver_style == OSS) + em8300_audio_flush(em); set_audiomode(em, mode); setup_mafifo(em); - mpegaudio_command(em, MACOMMAND_PLAY); + if (em->audio_driver_style == OSS) + mpegaudio_command(em, MACOMMAND_PLAY); em->audio.enable_bits = PCM_ENABLE_OUTPUT; return 0; } diff -Nru em8300-0.16.4/modules/em8300_compat24.h em8300-0.18.0/modules/em8300_compat24.h --- em8300-0.16.4/modules/em8300_compat24.h 2007-12-03 22:59:09.000000000 +0000 +++ em8300-0.18.0/modules/em8300_compat24.h 2010-06-28 18:12:31.000000000 +0100 @@ -1,4 +1,4 @@ -/* $Id: em8300_compat24.h,v 1.6 2007/12/03 22:59:09 nboullis Exp $ +/* $Id$ * * em8300_compat24.h -- compatibility layer for 2.4 and some 2.5 kernels * Copyright (C) 2004 Andreas Schultz @@ -24,7 +24,7 @@ #define _EM8300_COMPAT24_H_ /* Interrupt handler backwards compatibility stuff */ -#ifndef IRQ_NONE +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0) && !defined(IRQ_NONE) #define IRQ_NONE #define IRQ_HANDLED typedef void irqreturn_t; @@ -67,8 +67,8 @@ #define EM8300_MOD_INC_USE_COUNT MOD_INC_USE_COUNT #define EM8300_MOD_DEC_USE_COUNT MOD_DEC_USE_COUNT #else -#define EM8300_MOD_INC_USE_COUNT do { } while(0) -#define EM8300_MOD_DEC_USE_COUNT do { } while(0) +#define EM8300_MOD_INC_USE_COUNT do { } while (0) +#define EM8300_MOD_DEC_USE_COUNT do { } while (0) #endif #if !defined(MODULE_LICENSE) @@ -90,6 +90,21 @@ #define EM8300_IMINOR(inode) (minor((inode)->i_rdev)) #endif +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,14) +#define kzalloc(size, flags) \ +({ \ + void *__ret = kmalloc(size, flags); \ + if (__ret) \ + memset(__ret, 0, size); \ + __ret; \ +}) +#endif + +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24) +#define pr_warning(fmt, arg...) \ + printk(KERN_WARNING fmt, ##arg) +#endif + #ifdef _LINUX_WAIT_H /* Macros backported from linux-2.6/include/linux/wait.h */ diff -Nru em8300-0.16.4/modules/em8300_devfs.c em8300-0.18.0/modules/em8300_devfs.c --- em8300-0.16.4/modules/em8300_devfs.c 2007-03-02 23:00:35.000000000 +0000 +++ em8300-0.18.0/modules/em8300_devfs.c 2010-06-28 18:12:31.000000000 +0100 @@ -35,7 +35,7 @@ { #if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,70) char devname[64]; - sprintf(devname, "%s-%d", EM8300_LOGNAME, em->card_nr ); + sprintf(devname, "%s-%d", EM8300_LOGNAME, em->card_nr); em8300_handle[em->card_nr * 4] = devfs_register(NULL, devname, DEVFS_FL_DEFAULT, major, em->card_nr * 4, S_IFCHR | S_IRUGO | S_IWUGO, &em8300_fops, NULL); #else @@ -49,28 +49,22 @@ { #if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,70) char devname[64]; - sprintf(devname, "%s_mv-%d", EM8300_LOGNAME, em->card_nr ); + sprintf(devname, "%s_mv-%d", EM8300_LOGNAME, em->card_nr); em8300_handle[(em->card_nr * 4) + 1] = devfs_register(NULL, devname, DEVFS_FL_DEFAULT, major, (em->card_nr * 4) + 1, S_IFCHR | S_IRUGO | S_IWUGO, &em8300_fops, NULL); - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) { - sprintf(devname, "%s_ma-%d", EM8300_LOGNAME, em->card_nr ); - em8300_handle[(em->card_nr * 4) + 2] = devfs_register(NULL, devname, DEVFS_FL_DEFAULT, major, - (em->card_nr * 4) + 2, S_IFCHR | S_IRUGO | S_IWUGO, &em8300_fops, NULL); - } - sprintf(devname, "%s_sp-%d", EM8300_LOGNAME, em->card_nr ); + sprintf(devname, "%s_ma-%d", EM8300_LOGNAME, em->card_nr); + em8300_handle[(em->card_nr * 4) + 2] = devfs_register(NULL, devname, DEVFS_FL_DEFAULT, major, + (em->card_nr * 4) + 2, S_IFCHR | S_IRUGO | S_IWUGO, &em8300_fops, NULL); + sprintf(devname, "%s_sp-%d", EM8300_LOGNAME, em->card_nr); em8300_handle[(em->card_nr * 4) + 3] = devfs_register(NULL, devname, DEVFS_FL_DEFAULT, major, (em->card_nr * 4) + 3, S_IFCHR | S_IRUGO | S_IWUGO, &em8300_fops, NULL); #else devfs_mk_cdev(MKDEV(major, (em->card_nr * 4) + 1), S_IFCHR | S_IRUGO | S_IWUGO, "%s_mv-%d", EM8300_LOGNAME, em->card_nr); - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) { - devfs_mk_cdev(MKDEV(major, (em->card_nr * 4) + 2), - S_IFCHR | S_IRUGO | S_IWUGO, - "%s_ma-%d", EM8300_LOGNAME, em->card_nr); - } + devfs_mk_cdev(MKDEV(major, (em->card_nr * 4) + 2), + S_IFCHR | S_IRUGO | S_IWUGO, + "%s_ma-%d", EM8300_LOGNAME, em->card_nr); devfs_mk_cdev(MKDEV(major, (em->card_nr * 4) + 3), S_IFCHR | S_IRUGO | S_IWUGO, "%s_sp-%d", EM8300_LOGNAME, em->card_nr); @@ -81,15 +75,11 @@ { #if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,69) devfs_unregister(em8300_handle[(em->card_nr * 4) + 1]); - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) - devfs_unregister(em8300_handle[(em->card_nr * 4) + 2]); + devfs_unregister(em8300_handle[(em->card_nr * 4) + 2]); devfs_unregister(em8300_handle[(em->card_nr * 4) + 3]); #else devfs_remove("%s_mv-%d", EM8300_LOGNAME, em->card_nr); - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) - devfs_remove("%s_ma-%d", EM8300_LOGNAME, em->card_nr); + devfs_remove("%s_ma-%d", EM8300_LOGNAME, em->card_nr); devfs_remove("%s_sp-%d", EM8300_LOGNAME, em->card_nr); #endif } @@ -103,8 +93,7 @@ #endif } -struct em8300_registrar_s em8300_devfs_registrar = -{ +struct em8300_registrar_s em8300_devfs_registrar = { .register_driver = NULL, .postregister_driver = NULL, .register_card = &em8300_devfs_register_card, @@ -120,8 +109,7 @@ #else /* CONFIG_DEVFS_FS */ -struct em8300_registrar_s em8300_devfs_registrar = -{ +struct em8300_registrar_s em8300_devfs_registrar = { .register_driver = NULL, .postregister_driver = NULL, .register_card = NULL, diff -Nru em8300-0.16.4/modules/em8300_devfs.h em8300-0.18.0/modules/em8300_devfs.h --- em8300-0.16.4/modules/em8300_devfs.h 2006-04-10 23:31:14.000000000 +0100 +++ em8300-0.18.0/modules/em8300_devfs.h 2010-06-28 18:12:31.000000000 +0100 @@ -1,4 +1,4 @@ -/* $Id: em8300_devfs.h,v 1.3 2006/04/10 22:31:14 nboullis Exp $ +/* $Id$ * * em8300_devfs.h -- interface to the devfs filesystem * Copyright (C) 2004 Nicolas Boullis diff -Nru em8300-0.16.4/modules/em8300_dicom.c em8300-0.18.0/modules/em8300_dicom.c --- em8300-0.16.4/modules/em8300_dicom.c 2008-01-02 23:07:03.000000000 +0000 +++ em8300-0.18.0/modules/em8300_dicom.c 2010-06-28 18:12:31.000000000 +0100 @@ -1,3 +1,28 @@ +/* + * em8300_dicom.c + * + * Copyright (C) 2000-2001 Henrik Johansson + * (C) 2000 Ze'ev Maor + * (C) 2001 Rick Haines + * (C) 2001 Chris C. Hoover + * (C) 2001 Jonas Birme + * (C) 2003-2008 Nicolas Boullis + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + #define __NO_VERSION__ #include @@ -19,6 +44,7 @@ #include "em8300_reg.h" #include +#include "em8300_driver.h" #include "em8300_params.h" @@ -70,7 +96,7 @@ int ret; int vmode_ntsc = 1; - if (dicom_other_pal[em->card_nr]) { + if (em->config.model.dicom_other_pal) { vmode_ntsc = (em->video_mode == EM8300_VIDEOMODE_NTSC); } @@ -167,25 +193,25 @@ write_register(0x1f47, 0x18); if (vmode_ntsc) { - if (dicom_fix[em->card_nr]) { + if (em->config.model.dicom_fix) { write_register(0x1f5e, 0x1efe); } else { write_register(0x1f5e, 0x1afe); } - if (dicom_control[em->card_nr]) { + if (em->config.model.dicom_control) { write_ucregister(DICOM_Control, 0x9efe); } else { write_ucregister(DICOM_Control, 0x9afe); } } else { - if (dicom_fix[em->card_nr]) { + if (em->config.model.dicom_fix) { write_register(0x1f5e, 0x1afe); } else { write_register(0x1f5e, 0x1efe); } - if (dicom_control[em->card_nr]) { + if (em->config.model.dicom_control) { write_ucregister(DICOM_Control, 0x9afe); } else { write_ucregister(DICOM_Control, 0x9efe); @@ -194,17 +220,25 @@ } } - pr_debug("em8300_dicom.o: vmode_ntsc: %d\n", vmode_ntsc); - pr_debug("em8300_dicom.o: dicom_other_pal: %d\n", dicom_other_pal[em->card_nr]); - pr_debug("em8300_dicom.o: dicom_control: %d\n", dicom_control[em->card_nr]); - pr_debug("em8300_dicom.o: dicom_fix: %d\n", dicom_fix[em->card_nr]); + pr_debug("em8300-%d: vmode_ntsc: %d\n", em->card_nr, vmode_ntsc); + pr_debug("em8300-%d: dicom_other_pal: %d\n", em->card_nr, em->config.model.dicom_other_pal); + pr_debug("em8300-%d: dicom_control: %d\n", em->card_nr, em->config.model.dicom_control); + pr_debug("em8300-%d: dicom_fix: %d\n", em->card_nr, em->config.model.dicom_fix); write_ucregister(DICOM_UpdateFlag, 1); return em8300_waitfor(em, ucregister(DICOM_UpdateFlag), 0, 1); } - +void em8300_dicom_update_aspect_ratio(struct em8300_s *em) +{ + if (em->aspect_ratio == EM8300_ASPECTRATIO_16_9) { + em->dicom_tvout |= 0x10; + } else { + em->dicom_tvout &= ~0x10; + } + write_ucregister(DICOM_TvOut, em->dicom_tvout); +} void em8300_dicom_disable(struct em8300_s *em) { @@ -242,7 +276,7 @@ di->flag1 = read_register(displaybuffer+2) & 0x8000; di->flag2 = read_ucregister(Vsync_DBuf) & 0x4000; - if(read_ucregister(MicroCodeVersion) <= 0xf) { + if (read_ucregister(MicroCodeVersion) <= 0xf) { di->buffer1 = (read_register(displaybuffer + 3) | (read_register(displaybuffer + 4) << 16)) << 4; di->buffer2 = (read_register(displaybuffer + 5) | (read_register(displaybuffer + 6) << 16)) << 4; } else { @@ -250,12 +284,12 @@ di->buffer2 = read_register(displaybuffer + 4) << 6; } - if(displaybuffer == ucregister(Width_Buf3)) { + if (displaybuffer == ucregister(Width_Buf3)) { di->unk_present = 1; if(read_ucregister(MicroCodeVersion) <= 0xf) { di->unknown1 = read_register(displaybuffer + 7); - di->unknown2 = (read_register(displaybuffer + 8) | (read_register(displaybuffer + 9) <<16)) << 4; - di->unknown3 = (read_register(displaybuffer + 0xa) | (read_register(displaybuffer + 0xb) <<16)) << 4; + di->unknown2 = (read_register(displaybuffer + 8) | (read_register(displaybuffer + 9) << 16)) << 4; + di->unknown3 = (read_register(displaybuffer + 0xa) | (read_register(displaybuffer + 0xb) << 16)) << 4; } else { di->unknown2 = read_register(displaybuffer + 6); di->unknown3 = read_register(displaybuffer + 7); @@ -264,17 +298,17 @@ di->unk_present = 0; } - pr_debug("DICOM buffer: xsize=0x%x(%d)\n", di->xsize, di->xsize); - pr_debug(" ysize=0x%x(%d)\n", di->ysize, di->ysize); - pr_debug(" xsize2=0x%x(%d)\n", di->xsize2, di->xsize2); - pr_debug(" flag1=%d, flag2=%d\n", di->flag1, di->flag2); - pr_debug(" buffer1=0x%x(%d)\n", di->buffer1, di->buffer1); - pr_debug(" buffer2=0x%x(%d)\n", di->buffer2, di->buffer2); + pr_debug("em8300-%d: DICOM buffer: xsize=0x%x(%d)\n", em->card_nr, di->xsize, di->xsize); + pr_debug("em8300-%d: ysize=0x%x(%d)\n", em->card_nr, di->ysize, di->ysize); + pr_debug("em8300-%d: xsize2=0x%x(%d)\n", em->card_nr, di->xsize2, di->xsize2); + pr_debug("em8300-%d: flag1=%d, flag2=%d\n", em->card_nr, di->flag1, di->flag2); + pr_debug("em8300-%d: buffer1=0x%x(%d)\n", em->card_nr, di->buffer1, di->buffer1); + pr_debug("em8300-%d: buffer2=0x%x(%d)\n", em->card_nr, di->buffer2, di->buffer2); if (di->unk_present) { - pr_debug(" unknown1=0x%x(%d)\n", di->unknown1, di->unknown1); - pr_debug(" unknown2=0x%x(%d)\n", di->unknown2, di->unknown2); - pr_debug(" unknown3=0x%x(%d)\n", di->unknown3, di->unknown3); + pr_debug("em8300-%d: unknown1=0x%x(%d)\n", em->card_nr, di->unknown1, di->unknown1); + pr_debug("em8300-%d: unknown2=0x%x(%d)\n", em->card_nr, di->unknown2, di->unknown2); + pr_debug("em8300-%d: unknown3=0x%x(%d)\n", em->card_nr, di->unknown3, di->unknown3); } return 0; } @@ -292,8 +326,8 @@ { int i; - pr_debug("ysize: %d, xsize: %d\n", ysize, xsize); - pr_debug("buffer1: %d, buffer2: %d\n", em->dbuf_info.buffer1, em->dbuf_info.buffer2); + pr_debug("em8300-%d: ysize: %d, xsize: %d\n", em->card_nr, ysize, xsize); + pr_debug("em8300-%d: buffer1: %d, buffer2: %d\n", em->card_nr, em->dbuf_info.buffer1, em->dbuf_info.buffer2); for (i = 0; i < ysize; i++) { em8300_setregblock(em, em->dbuf_info.buffer1 + xpos + (ypos + i) * em->dbuf_info.xsize, pat1, xsize); diff -Nru em8300-0.16.4/modules/em8300_driver.h em8300-0.18.0/modules/em8300_driver.h --- em8300-0.16.4/modules/em8300_driver.h 1970-01-01 01:00:00.000000000 +0100 +++ em8300-0.18.0/modules/em8300_driver.h 2010-06-28 18:12:31.000000000 +0100 @@ -0,0 +1,376 @@ +/* + * em8300_driver.h + * + * Copyright (C) 2000 Henrik Johansson + * (C) 2000 Ze'ev Maor + * (C) 2001 Rick Haines + * (C) 2001 Edward Salley + * (C) 2001 Jeremy T. Braun + * (C) 2001 Ralph Zimmermann + * (C) 2001 Daniel Chassot + * (C) 2002 Michael Hunold + * (C) 2002-2003 David Holm + * (C) 2003-2008 Nicolas Boullis + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#ifndef EM8300_DRIVER_H +#define EM8300_DRIVER_H + +#define EM8300_MAX 4 + +#define EM8300_MAJOR 121 +#define EM8300_LOGNAME "em8300" +extern int major; + +#include +#include /* ulong, uint32_t */ +#include /* struct i2c_adapter */ +#include /* struct i2c_algo_bit_data */ +#include /* struct timeval */ +#include /* wait_queue_head_t */ +#include /* struct list_head */ + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34) +#include /* struct semaphore */ +#endif + +#if defined(CONFIG_SND) || defined(CONFIG_SND_MODULE) +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) +#define snd_card_t struct snd_card +#else +#include +#include +#include +#endif +#endif + +struct dicom_s { + int luma; + int chroma; + int frametop; + int framebottom; + int frameleft; + int frameright; + int visibletop; + int visiblebottom; + int visibleleft; + int visibleright; + int tvout; +}; + +struct displaybuffer_info_s { + int xsize; + int ysize; + int xsize2; + int flag1,flag2; + int buffer1; + int buffer2; + int unk_present; + int unknown1; + int unknown2; + int unknown3; +}; + +struct em8300_audio_s { + int channels; + int format; + int speed; + int slotsize; + int enable_bits; +}; + +struct em8300_model_config_s { + int use_bt865; + int dicom_other_pal; + int dicom_fix; + int dicom_control; + int bt865_ucode_timeout; + int activate_loopback; +}; + +struct adv717x_model_config_s { + int pixelport_16bit; + int pixelport_other_pal; + int pixeldata_adjust_ntsc; + int pixeldata_adjust_pal; +}; + +struct bt865_model_config_s { +}; + +struct em8300_config_s { + struct em8300_model_config_s model; + struct adv717x_model_config_s adv717x_model; + struct bt865_model_config_s bt865_model; +}; + +struct em8300_s +{ + char name[40]; + + int chip_revision; + int pci_revision; + + int inuse[4]; + int nonblock[4]; + int ucodeloaded; + + struct pci_dev *dev; + ulong adr; + volatile unsigned *mem; + ulong memsize; + + int playmode; + +#if defined(CONFIG_SND) || defined(CONFIG_SND_MODULE) + snd_card_t *alsa_card; +#endif + + /* Fifos */ + struct fifo_s *mvfifo; + struct fifo_s *mafifo; + struct fifo_s *spfifo; + int mtrr_reg; + + /* DICOM */ + int dicom_vertoffset; + int dicom_horizoffset; + int dicom_brightness; + int dicom_contrast; + int dicom_saturation; + int dicom_tvout; + struct displaybuffer_info_s dbuf_info; + + /* I2C */ + int i2c_pin_reg; + int i2c_oe_reg; + struct i2c_adapter i2c_adap[2]; + struct i2c_algo_bit_data i2c_algo[2]; + + /* different between revision 1 and revision 2 boards */ + int mystery_divisor; + + /* I2C clients */ + int encoder_type; + struct i2c_client *encoder; + struct i2c_client *eeprom; + + /* Microcode registers */ + unsigned ucode_regs[MAX_UCODE_REGISTER]; + int var_ucode_reg1; /* These are registers that differ */ + int var_ucode_reg2; /* between versions 1 and 2 of the board */ + int var_ucode_reg3; /* " */ + + /* Interrupt */ + unsigned irqmask; + + /* Clockgenerator */ + int clockgen; + int clockgen_overlaymode; + int clockgen_tvmode; + + /* Timing measurement */ + struct timeval tv, last_status_time; + long irqtimediff; + int irqcount; + int frames; + int scr; + + /* Audio */ + struct em8300_audio_s audio; + int audio_mode; + int pcm_mode; + int dsp_num; + /* Channel status for S/PDIF */ + unsigned int channel_status_pos; + unsigned char channel_status[24]; + enum { NONE, OSS, ALSA } audio_driver_style; + struct semaphore audio_driver_style_lock; + + /* Video */ + int video_mode; + int video_playmode; + int aspect_ratio; + int zoom; + uint32_t video_pts; + uint32_t video_lastpts; + int video_ptsvalid,video_offset,video_count; + int video_ptsfifo_ptr; +#if LINUX_VERSION_CODE < 0x020314 + struct wait_queue *video_ptsfifo_wait; + struct wait_queue *vbi_wait; +#else + wait_queue_head_t video_ptsfifo_wait; + wait_queue_head_t vbi_wait; +#endif + int video_ptsfifo_waiting; + int video_first; + int var_video_value; + + /* Sub Picture */ + int sp_pts, sp_ptsvalid, sp_count; + int sp_ptsfifo_ptr; +#if LINUX_VERSION_CODE < 0x020314 + struct wait_queue *sp_ptsfifo_wait; +#else + wait_queue_head_t sp_ptsfifo_wait; +#endif + int sp_ptsfifo_waiting; + int sp_mode; + + int linecounter; + + /* EM9010 overlay processor */ + int overlay_enabled; + int overlay_mode; + int overlay_gamma_enable; + int overlay_xres; + int overlay_yres; + int overlay_frame_xpos; + int overlay_frame_ypos; + int overlay_frame_width; + int overlay_frame_height; + int overlay_a[EM9010_ATTRIBUTE_MAX+1]; + int overlay_double_y; + int overlay_xcorr_default; + int overlay_70; + int overlay_dword_24bb8; + +#if LINUX_VERSION_CODE > KERNEL_VERSION(2,4,0) + /* Memory exported via mmap() */ + struct list_head memory; +#endif + + /* Checksum for the on-board eeprom */ + u8 *eeprom_checksum; + + int model; + + struct em8300_config_s config; + + /* To support different options for different cards */ + unsigned int card_nr; +}; + +#if defined(CONFIG_SND) || defined(CONFIG_SND_MODULE) +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) +#undef snd_card_t +#endif +#endif + +#define TIMEDIFF(a,b) a.tv_usec - b.tv_usec + \ + 1000000 * (a.tv_sec - b.tv_sec) + + +/* + Prototypes +*/ + +/* em8300_i2c.c */ +int em8300_i2c_init1(struct em8300_s *em); +int em8300_i2c_init2(struct em8300_s *em); +void em8300_i2c_exit(struct em8300_s *em); +void em8300_clockgen_write(struct em8300_s *em, int abyte); + +void em9010_write(struct em8300_s *em, int reg, int data); +int em9010_read(struct em8300_s *em, int reg); +int em9010_read16(struct em8300_s *em, int reg); +void em9010_write16(struct em8300_s *em, int reg, int value); + +/* em8300_audio.c */ +int em8300_audio_ioctl(struct em8300_s *em,unsigned int cmd, unsigned long arg); +int em8300_audio_flush(struct em8300_s *em); +int em8300_audio_open(struct em8300_s *em); +int em8300_audio_release(struct em8300_s *em); +int em8300_audio_setup(struct em8300_s *em); +ssize_t em8300_audio_write(struct em8300_s *em, const char * buf, + size_t count, loff_t *ppos); +int mpegaudio_command(struct em8300_s *em, int cmd); + +/* em8300_ucode.c */ +void em8300_ucode_upload(struct em8300_s *em, void *ucode, int ucode_size); +void em8300_require_ucode(struct em8300_s *em); + +/* em8300_misc.c */ +int em8300_setregblock(struct em8300_s *em, int offset, int val, int len); +int em8300_writeregblock(struct em8300_s *em, int offset, unsigned *buf, int len); +int em8300_waitfor(struct em8300_s *em, int reg, int val, int mask); +int em8300_waitfor_not(struct em8300_s *em, int reg, int val, int mask); + +/* em8300_dicom.c */ +void em8300_dicom_setBCS(struct em8300_s *em, int brightness, int contrast, int saturation); +void em8300_dicom_enable(struct em8300_s *em); +void em8300_dicom_disable(struct em8300_s *em); +int em8300_dicom_update(struct em8300_s *em); +void em8300_dicom_update_aspect_ratio(struct em8300_s *em); +void em8300_dicom_init(struct em8300_s *em); +int em8300_dicom_get_dbufinfo(struct em8300_s *em); +void em8300_dicom_fill_dispbuffers(struct em8300_s *em, int xpos, int ypos, int xsize, + int ysize, unsigned int pat1, unsigned int pat2); + +/* em8300_video.c */ +void em8300_video_open(struct em8300_s *em); +int em8300_video_setplaymode(struct em8300_s *em, int mode); +int em8300_video_sync(struct em8300_s *em); +int em8300_video_flush(struct em8300_s *em); +int em8300_video_setup(struct em8300_s *em); +int em8300_video_release(struct em8300_s *em); +void em8300_video_setspeed(struct em8300_s *em, int speed); +ssize_t em8300_video_write(struct em8300_s *em, const char * buf, + size_t count, loff_t *ppos); +int em8300_video_ioctl(struct em8300_s *em, unsigned int cmd, unsigned long arg); +void em8300_video_check_ptsfifo(struct em8300_s *em); + +/* em8300_spu.c */ +ssize_t em8300_spu_write(struct em8300_s *em, const char * buf, + size_t count, loff_t *ppos); +int em8300_spu_open(struct em8300_s *em); +int em8300_spu_ioctl(struct em8300_s *em, unsigned int cmd, unsigned long arg); +int em8300_spu_init(struct em8300_s *em); +void em8300_spu_check_ptsfifo(struct em8300_s *em); +int em8300_ioctl_setspumode(struct em8300_s *em, int mode); +void em8300_spu_release(struct em8300_s *em); + +/* em8300_ioctl.c */ +int em8300_control_ioctl(struct em8300_s *em, int cmd, unsigned long arg); +int em8300_ioctl_setvideomode(struct em8300_s *em, int mode); +int em8300_ioctl_setaspectratio(struct em8300_s *em, int ratio); +int em8300_ioctl_getstatus(struct em8300_s *em, char *usermsg); +int em8300_ioctl_init(struct em8300_s *em, em8300_microcode_t *useruc); +void em8300_ioctl_enable_videoout(struct em8300_s *em, int mode); +int em8300_ioctl_setplaymode(struct em8300_s *em, int mode); +int em8300_ioctl_setaudiomode(struct em8300_s *em, int mode); +int em8300_ioctl_getaudiomode(struct em8300_s *em, long int mode); +int em8300_ioctl_overlay_calibrate(struct em8300_s *em, em8300_overlay_calibrate_t *c); +int em8300_ioctl_overlay_setwindow(struct em8300_s *em,em8300_overlay_window_t *w); +int em8300_ioctl_overlay_setscreen(struct em8300_s *em,em8300_overlay_screen_t *s); +int em8300_ioctl_overlay_setmode(struct em8300_s *em,int val); + +/* em9010.c */ +int em9010_cabledetect(struct em8300_s *em); +int em9010_calibrate_xoffset(struct em8300_s *em); +int em9010_calibrate_yoffset(struct em8300_s *em); +int em9010_init(struct em8300_s *em); +int em9010_overlay_set_signalmode(struct em8300_s *em, int val); +int em9010_overlay_update(struct em8300_s *em); +int em9010_overlay_set_res(struct em8300_s *em, int xres, int yres); +void sub_4288c(struct em8300_s *em, int pa, int pb, int pc, int pd, int pe, int pf, + int pg, int ph); +int em9010_get_attribute(struct em8300_s *em, int attribute); +int em9010_set_attribute(struct em8300_s *em, int attribute, int value); + +#endif /*EM8300_DRIVER_H*/ diff -Nru em8300-0.16.4/modules/em8300_eeprom.c em8300-0.18.0/modules/em8300_eeprom.c --- em8300-0.16.4/modules/em8300_eeprom.c 2007-08-07 13:47:48.000000000 +0100 +++ em8300-0.18.0/modules/em8300_eeprom.c 2010-06-28 18:12:31.000000000 +0100 @@ -1,4 +1,4 @@ -/* $Id: em8300_eeprom.c,v 1.7 2007/08/07 12:47:48 nboullis Exp $ +/* $Id$ * * em8300_eeprom.c -- read the eeprom on em8300-based boards * Copyright (C) 2007 Nicolas Boullis @@ -20,6 +20,7 @@ #include "em8300_eeprom.h" #include +#include "em8300_driver.h" #include #include #include @@ -64,7 +65,7 @@ } }; - if (i2c_transfer(&em->i2c_ops_2, message, 2) == 2) + if (i2c_transfer(&em->i2c_adap[1], message, 2) == 2) return 0; return -1; diff -Nru em8300-0.16.4/modules/em8300_eeprom.h em8300-0.18.0/modules/em8300_eeprom.h --- em8300-0.16.4/modules/em8300_eeprom.h 2007-03-06 23:04:32.000000000 +0000 +++ em8300-0.18.0/modules/em8300_eeprom.h 2010-06-28 18:12:31.000000000 +0100 @@ -1,4 +1,4 @@ -/* $Id: em8300_eeprom.h,v 1.1 2007/03/06 23:04:32 nboullis Exp $ +/* $Id$ * * em8300_eeprom.h -- read the eeprom on em8300-based boards * Copyright (C) 2007 Nicolas Boullis diff -Nru em8300-0.16.4/modules/em8300_fifo.c em8300-0.18.0/modules/em8300_fifo.c --- em8300-0.16.4/modules/em8300_fifo.c 2005-11-04 01:13:37.000000000 +0000 +++ em8300-0.18.0/modules/em8300_fifo.c 2010-06-28 18:12:31.000000000 +0100 @@ -47,6 +47,7 @@ #include "em8300_reg.h" #include +#include "em8300_driver.h" #include "em8300_fifo.h" #include "em8300_compat24.h" @@ -63,8 +64,8 @@ f->type = fifotype; - f->writeptr = (unsigned * volatile) ucregister_ptr(wrptr); - f->readptr = (unsigned * volatile) ucregister_ptr(rdptr); + f->writeptr = (unsigned *volatile) ucregister_ptr(wrptr); + f->readptr = (unsigned *volatile) ucregister_ptr(rdptr); switch (f->type) { case FIFOTYPE_AUDIO: @@ -124,10 +125,10 @@ void em8300_fifo_free(struct fifo_s *f) { if (f) { - if(f->valid && f->fifobuffer) { + if (f->valid && f->fifobuffer) { pci_free_consistent(f->em->dev, f->nslots * f->slotsize, f->fifobuffer, f->phys_base); } - if(f->valid && f->preprocess_buffer) { + if (f->valid && f->preprocess_buffer) { kfree(f->preprocess_buffer); } kfree(f); @@ -165,10 +166,9 @@ long ret; ret = wait_event_interruptible_timeout(fifo->wait, readl(fifo->writeptr) == readl(fifo->readptr), 3 * HZ); if (ret == 0) { - printk(KERN_ERR "em8300.o: FIFO sync timeout during sync\n"); + printk(KERN_ERR "em8300-%d: FIFO sync timeout during sync\n", fifo->em->card_nr); return -EINTR; - } - else if (ret > 0) + } else if (ret > 0) return 0; else return ret; @@ -255,7 +255,7 @@ struct em8300_s *em = fifo->em; int running = 1; - //printk("Fifo Full %p\n", fifo); + //printk("em8300-%d: Fifo Full %p\n", em->card_nr, fifo); running = (running && (read_ucregister(MV_SCRSpeed) > 0)); running = (running && (em->video_playmode == EM8300_PLAYMODE_PLAY)); @@ -263,34 +263,32 @@ if (running) { int i; - for (i=0; i<2; i++) { + for (i = 0; i < 2; i++) { ret = wait_event_interruptible_timeout(fifo->wait, em8300_fifo_freeslots(fifo), 2 * HZ); if (ret > 0) break; else if (ret == 0) { - printk("Fifo still full, trying stop\n"); + printk("em8300-%d: Fifo still full, trying stop\n", fifo->em->card_nr); em8300_video_setplaymode(em, EM8300_PLAYMODE_STOPPED); em8300_video_setplaymode(em, EM8300_PLAYMODE_PLAY); - } - else - return (total_bytes_written>0)?total_bytes_written:ret; + } else + return (total_bytes_written>0) ? total_bytes_written : ret; } if (ret == 0) { - printk(KERN_ERR "em8300.o: FIFO sync timeout during blocking write\n"); + printk(KERN_ERR "em8300-%d: FIFO sync timeout during blocking write\n", fifo->em->card_nr); return (total_bytes_written>0)?total_bytes_written:-EINTR; } - } - else { + } else { if ((ret = wait_event_interruptible(fifo->wait, em8300_fifo_freeslots(fifo)))) - return (total_bytes_written>0)?total_bytes_written:ret; + return (total_bytes_written>0) ? total_bytes_written : ret; } } } - // printk(KERN_ERR "em8300.o: count = %d\n", total_bytes_written); - // printk(KERN_ERR "em8300.o: time = %d\n", jiffies - safe_jiff); + // printk(KERN_ERR "em8300-%d: count = %d\n", em->card_nr, total_bytes_written); + // printk(KERN_ERR "em8300-%d: time = %d\n", em->card_nr, jiffies - safe_jiff); return total_bytes_written; } @@ -311,7 +309,7 @@ void em8300_fifo_statusmsg(struct fifo_s *fifo, char *str) { int freeslots = em8300_fifo_freeslots(fifo); - sprintf(str,"Free slots: %d/%d", freeslots, fifo->nslots); + sprintf(str, "Free slots: %d/%d", freeslots, fifo->nslots); } int em8300_fifo_calcbuffered(struct fifo_s *fifo) diff -Nru em8300-0.16.4/modules/em8300_fifo.h em8300-0.18.0/modules/em8300_fifo.h --- em8300-0.16.4/modules/em8300_fifo.h 2004-03-14 20:00:19.000000000 +0000 +++ em8300-0.18.0/modules/em8300_fifo.h 2010-06-28 18:12:31.000000000 +0100 @@ -1,7 +1,33 @@ +/* + * em8300_fifo.h + * + * Copyright (C) 2000 Henrik Johansson + * (C) 2001-2002 Rick Haines + * (C) 2003-2004 Nicolas Boullis + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + #ifndef EM8300_FIFO_H #define EM8300_FIFO_H +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,27) +#include +#else #include +#endif #define FIFOTYPE_AUDIO 1 #define FIFOTYPE_VIDEO 2 diff -Nru em8300-0.16.4/modules/em8300_i2c.c em8300-0.18.0/modules/em8300_i2c.c --- em8300-0.16.4/modules/em8300_i2c.c 2008-01-07 22:57:40.000000000 +0000 +++ em8300-0.18.0/modules/em8300_i2c.c 2010-06-28 18:12:31.000000000 +0100 @@ -1,3 +1,26 @@ +/* + * em8300_i2c.c + * + * Copyright (C) 2000-2001 Henrik Johansson + * (C) 2001 Rick Haines + * (C) 2004 Hakon Skjelten + * (C) 2003-2009 Nicolas Boullis + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + #define __NO_VERSION__ #include @@ -19,12 +42,13 @@ #include "em8300_compat24.h" #include "em8300_reg.h" +#include "em8300_models.h" #include +#include "em8300_driver.h" #include "adv717x.h" #include "bt865.h" #include "encoder.h" -//#include #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0) #define sysfs_create_link(kobj, target, name) 0 @@ -47,14 +71,14 @@ /* software I2C functions */ -static void em8300_setscl(void *data,int state) +static void em8300_setscl(void *data, int state) { struct private_data_s *p = (struct private_data_s *) data; struct em8300_s *em = p->em; int sel = p->clk << 8; - writel(sel | p->clk, &em->mem[em->i2c_oe_reg]); - writel(sel | (state ? p->clk : 0), &em->mem[em->i2c_pin_reg]); + write_register(em->i2c_oe_reg, (sel | p->clk)); + write_register(em->i2c_pin_reg, sel | (state ? p->clk : 0)); } static void em8300_setsda(void *data, int state) @@ -63,8 +87,8 @@ struct em8300_s *em = p->em; int sel = p->data << 8; - writel(sel | p->data, &em->mem[em->i2c_oe_reg]); - writel(sel | (state ? p->data : 0), &em->mem[em->i2c_pin_reg]); + write_register(em->i2c_oe_reg, (sel | p->data)); + write_register(em->i2c_pin_reg, sel | (state ? p->data : 0)); } static int em8300_getscl(void *data) @@ -72,7 +96,7 @@ struct private_data_s *p = (struct private_data_s *)data; struct em8300_s *em = p->em; - return readl(&em->mem[em->i2c_pin_reg]) & (p->clk << 8); + return read_register(em->i2c_pin_reg) & (p->clk << 8); } static int em8300_getsda(void *data) @@ -80,111 +104,165 @@ struct private_data_s *p = (struct private_data_s *)data; struct em8300_s *em = p->em; - return readl(&em->mem[em->i2c_pin_reg]) & (p->data << 8); + return read_register(em->i2c_pin_reg) & (p->data << 8); } +/* template for i2c_algo_bit */ +static const struct i2c_algo_bit_data em8300_i2c_algo_template = { + .setscl = em8300_setscl, + .setsda = em8300_setsda, + .getscl = em8300_getscl, + .getsda = em8300_getsda, + .udelay = 10, + .timeout = 100, +}; + static int em8300_i2c_lock_client(struct i2c_client *client) { + struct em8300_s *em = i2c_get_adapdata(client->adapter); + #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,54) #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) - if (!try_module_get(client->driver->driver.owner)) { + if (!try_module_get(client->driver->driver.owner)) #else - if (!try_module_get(client->driver->owner)) { + if (!try_module_get(client->driver->owner)) #endif - printk(KERN_ERR "em8300_i2c: Unable to lock client module\n"); + { + printk(KERN_ERR "em8300-%d: i2c: Unable to lock client module\n", em->card_nr); return -ENODEV; } #endif return 0; } -#define EM8300_I2C_MAKE_LINK(link_name) \ - do { \ - if (sysfs_create_link(&em->dev->dev.kobj, &client->dev.kobj, link_name)) \ - printk(KERN_WARNING "em8300_i2c: unable to create the %s link\n", link_name); \ - } while (0) +static void em8300_i2c_unlock_client(struct i2c_client *client) +{ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,54) +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) + module_put(client->driver->driver.owner); +#else + module_put(client->driver->owner); +#endif +#endif +} + +static void em8300_adv717x_setup(struct em8300_s *em, + struct i2c_client *client) +{ + struct getconfig_s data; + struct setparam_s param; + + if (!((client->driver) && (client->driver->command))) { + printk("em8300-%d: cannot configure adv717x encoder: " + "no client->driver->command\n", em->card_nr); + return; + } + + client->driver->command(client, ENCODER_CMD_ENABLEOUTPUT, (void *)0); + data.card_nr = em->card_nr; + if (client->driver->command(client, ENCODER_CMD_GETCONFIG, + (void *) &data) != 0) { + printk("em8300-%d: ENCODER_CMD_GETCONFIG failed\n", + em->card_nr); + return; + } + + if (data.config[0] >= 0) + em->config.adv717x_model.pixelport_16bit = + data.config[0]; + if (data.config[1] >= 0) + em->config.adv717x_model.pixelport_other_pal = + data.config[1]; + if (data.config[2] >= 0) + em->config.adv717x_model.pixeldata_adjust_ntsc = + data.config[2]; + if (data.config[3] >= 0) + em->config.adv717x_model.pixeldata_adjust_pal = + data.config[3]; + + param.param = ENCODER_PARAM_COLORBARS; + param.modes = (uint32_t)-1; + param.val = data.config[4] ? 1 : 0; + client->driver->command(client, ENCODER_CMD_SETPARAM, + ¶m); + param.param = ENCODER_PARAM_OUTPUTMODE; + param.val = data.config[5]; + client->driver->command(client, ENCODER_CMD_SETPARAM, + ¶m); + param.param = ENCODER_PARAM_PPORT; + param.modes = NTSC_MODES_MASK; + param.val = em->config.adv717x_model.pixelport_16bit ? 1 : 0; + client->driver->command(client, ENCODER_CMD_SETPARAM, + ¶m); + param.modes = PAL_MODES_MASK; + param.val = em->config.adv717x_model.pixelport_other_pal + ? (em->config.adv717x_model.pixelport_16bit ? 0 : 1) + : (em->config.adv717x_model.pixelport_16bit ? 1 : 0); + client->driver->command(client, ENCODER_CMD_SETPARAM, + ¶m); + param.param = ENCODER_PARAM_PDADJ; + param.modes = NTSC_MODES_MASK; + param.val = em->config.adv717x_model.pixeldata_adjust_ntsc; + client->driver->command(client, ENCODER_CMD_SETPARAM, + ¶m); + param.modes = PAL_MODES_MASK; + param.val = em->config.adv717x_model.pixeldata_adjust_pal; + client->driver->command(client, ENCODER_CMD_SETPARAM, + ¶m); +} + +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,27) static int em8300_i2c_reg(struct i2c_client *client) { struct em8300_s *em = i2c_get_adapdata(client->adapter); - switch (client->driver->id) { - case I2C_DRIVERID_ADV717X: - if (em8300_i2c_lock_client(client)) { + switch (client->addr) { + case 0x50: + if (em->eeprom) { + printk(KERN_WARNING "em8300-%d: second eeprom found!?\n", em->card_nr); return -ENODEV; } - if (!strncmp(client->name, "ADV7175", 7)) { - em->encoder_type = ENCODER_ADV7175; + em->eeprom = client; + if (sysfs_create_link(&em->dev->dev.kobj, &client->dev.kobj, "eeprom")) + printk(KERN_WARNING "em8300-%d: unable to create the eeprom link\n", em->card_nr); + break; +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22) + case 0x6a: + if (em->encoder) { + printk(KERN_WARNING "em8300-%d: second encoder found!?\n", em->card_nr); + return -ENODEV; } - if (!strncmp(client->name, "ADV7170", 7)) { + if (!strncmp(client->name, "ADV7175", 7)) + em->encoder_type = ENCODER_ADV7175; + else if (!strncmp(client->name, "ADV7170", 7)) em->encoder_type = ENCODER_ADV7170; + else { + printk(KERN_WARNING "em8300-%d: unknown i2c chip found @0x6a\n", em->card_nr); + return -ENODEV; } + em8300_i2c_lock_client(client); + em8300_adv717x_setup(em, client); em->encoder = client; - EM8300_I2C_MAKE_LINK("encoder"); - client->driver->command(client, ENCODER_CMD_ENABLEOUTPUT, (void *)0); - do { - struct getconfig_s data; - struct setparam_s param; - data.card_nr = em->card_nr; - if (client->driver->command(client, - ENCODER_CMD_GETCONFIG, - (void *) &data) != 0) { - printk("ENCODER_CMD_GETCONFIG failed\n"); - break; - } - param.param = ENCODER_PARAM_COLORBARS; - param.modes = (uint32_t)-1; - param.val = data.config[4]?1:0; - client->driver->command(client, - ENCODER_CMD_SETPARAM, - ¶m); - param.param = ENCODER_PARAM_OUTPUTMODE; - param.val = data.config[5]; - client->driver->command(client, - ENCODER_CMD_SETPARAM, - ¶m); - param.param = ENCODER_PARAM_PPORT; - param.modes = NTSC_MODES_MASK; - param.val = data.config[0]?1:0; - client->driver->command(client, - ENCODER_CMD_SETPARAM, - ¶m); - param.modes = PAL_MODES_MASK; - param.val = data.config[1] - ? (data.config[0]?0:1) - : (data.config[0]?1:0); - client->driver->command(client, - ENCODER_CMD_SETPARAM, - ¶m); - param.param = ENCODER_PARAM_PDADJ; - param.modes = NTSC_MODES_MASK; - param.val = data.config[2]; - client->driver->command(client, - ENCODER_CMD_SETPARAM, - ¶m); - param.modes = PAL_MODES_MASK; - param.val = data.config[3]; - client->driver->command(client, - ENCODER_CMD_SETPARAM, - ¶m); - } while (0); + if (sysfs_create_link(&em->dev->dev.kobj, &client->dev.kobj, "encoder")) + printk(KERN_WARNING "em8300-%d: unable to create the encoder link\n", em->card_nr); break; - case I2C_DRIVERID_BT865: - if (em8300_i2c_lock_client(client)) { + case 0x45: + if (em->encoder) { + printk(KERN_WARNING "em8300-%d: second encoder found!?\n", em->card_nr); return -ENODEV; } em->encoder_type = ENCODER_BT865; + em8300_i2c_lock_client(client); em->encoder = client; - EM8300_I2C_MAKE_LINK("encoder"); - break; - case I2C_DRIVERID_EEPROM: - EM8300_I2C_MAKE_LINK("eeprom"); + if (sysfs_create_link(&em->dev->dev.kobj, &client->dev.kobj, "encoder")) + printk(KERN_WARNING "em8300-%d: unable to create the encoder link\n", em->card_nr); break; +#endif default: - printk(KERN_ERR "em8300_i2c: unknown client id\n"); + printk(KERN_ERR "em8300-%d: unknown i2c chip found @0x%02x\n", em->card_nr, client->addr); return -ENODEV; } - return 0; } @@ -192,33 +270,49 @@ { struct em8300_s *em = i2c_get_adapdata(client->adapter); - switch (client->driver->id) { - case I2C_DRIVERID_ADV717X: - case I2C_DRIVERID_BT865: - sysfs_remove_link(&em->dev->dev.kobj, "encoder"); - em->encoder = NULL; -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,54) -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) - module_put(client->driver->driver.owner); -#else - module_put(client->driver->owner); -#endif -#endif - break; - case I2C_DRIVERID_EEPROM: + if (client == em->eeprom) { + em->eeprom = NULL; sysfs_remove_link(&em->dev->dev.kobj, "eeprom"); - break; } - +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22) + else if (client == em->encoder) { + em8300_i2c_unlock_client(em->encoder); + em->encoder = NULL; + sysfs_remove_link(&em->dev->dev.kobj, "encoder"); + } +#endif + else + printk(KERN_WARNING "em8300-%d: unknown i2c chip being removed\n", em->card_nr); return 0; } +#endif + /* ----------------------------------------------------------------------- */ /* I2C functions */ /* ----------------------------------------------------------------------- */ + +/* template for i2c-bit-algo */ +static const struct i2c_adapter em8300_i2c_adap_template = { + .name = "em8300 i2c driver", +#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 31) + .id = I2C_HW_B_EM8300, +#endif + .algo = NULL, /* set by i2c-algo-bit */ + .algo_data = NULL, /* filled from template */ + .owner = THIS_MODULE, +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,27) + .client_register = em8300_i2c_reg, + .client_unregister = em8300_i2c_unreg, +#endif +#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 26) + .class = I2C_CLASS_TV_ANALOG, +#endif +}; + int em8300_i2c_init1(struct em8300_s *em) { - int ret; + int ret, i; struct private_data_s *pdata; //request_module("i2c-algo-bit"); @@ -237,131 +331,207 @@ /* Reset devices on I2C bus */ - writel(0x3f3f, &em->mem[em->i2c_pin_reg]); - writel(0x3b3b, &em->mem[em->i2c_oe_reg]); - writel(0x0100, &em->mem[em->i2c_pin_reg]); - writel(0x0101, &em->mem[em->i2c_pin_reg]); - writel(0x0808, &em->mem[em->i2c_pin_reg]); + write_register(em->i2c_pin_reg, 0x3f3f); + write_register(em->i2c_oe_reg, 0x3b3b); + write_register(em->i2c_pin_reg, 0x0100); + write_register(em->i2c_pin_reg, 0x0101); + write_register(em->i2c_pin_reg, 0x0808); + /* - Setup info structure for bus 2 + Setup algo data structs */ + em->i2c_algo[0] = em8300_i2c_algo_template; + em->i2c_algo[1] = em8300_i2c_algo_template; - em->i2c_data_2.setsda = &em8300_setsda; - em->i2c_data_2.setscl = &em8300_setscl; - em->i2c_data_2.getsda = &em8300_getsda; - em->i2c_data_2.getscl = &em8300_getscl; - em->i2c_data_2.udelay = 10; - em->i2c_data_2.timeout = 100; + pdata = kmalloc(sizeof(struct private_data_s), GFP_KERNEL); + pdata->clk = 0x10; + pdata->data = 0x8; + pdata->em = em; + + em->i2c_algo[0].data = pdata; pdata = kmalloc(sizeof(struct private_data_s), GFP_KERNEL); pdata->clk = 0x4; pdata->data = 0x8; pdata->em = em; - em->i2c_data_2.data = pdata; + em->i2c_algo[1].data = pdata; - strcpy(em->i2c_ops_2.name, "EM8300 I2C bus 2"); - em->i2c_ops_2.id = I2C_HW_B_EM8300; - em->i2c_ops_2.algo = NULL; - em->i2c_ops_2.algo_data = &em->i2c_data_2; - em->i2c_ops_2.client_register = em8300_i2c_reg; - em->i2c_ops_2.client_unregister = em8300_i2c_unreg; + /* + Setup i2c adapters + */ + for (i = 0; i < 2; i++) { + /* Setup adapter */ + em->i2c_adap[i] = em8300_i2c_adap_template; + sprintf(em->i2c_adap[i].name + strlen(em->i2c_adap[i].name), + " #%d-%d", em->card_nr, i); + em->i2c_adap[i].algo_data = &em->i2c_algo[i]; #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) - em->i2c_ops_2.dev.parent = &em->dev->dev; + em->i2c_adap[i].dev.parent = &em->dev->dev; #endif - i2c_set_adapdata(&em->i2c_ops_2, (void *)em); + i2c_set_adapdata(&em->i2c_adap[i], (void *)em); + } + + /* add only bus 2 */ + ret = i2c_bit_add_bus(&em->i2c_adap[1]); + if (ret) + return ret; - ret = i2c_bit_add_bus(&em->i2c_ops_2); - return ret; +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,27) + request_module("eeprom"); +#else + { + struct i2c_board_info i2c_info; + const unsigned short eeprom_addr[] = { 0x50, I2C_CLIENT_END }; + i2c_info = (struct i2c_board_info){ I2C_BOARD_INFO("eeprom", 0) }; + em->eeprom = i2c_new_probed_device(&em->i2c_adap[1], &i2c_info, eeprom_addr); + if (em->eeprom) { + if (sysfs_create_link(&em->dev->dev.kobj, &em->eeprom->dev.kobj, "eeprom")) + printk(KERN_WARNING "em8300-%d: i2c: unable to create the eeprom link\n", em->card_nr); + } + } +#endif + return 0; } int em8300_i2c_init2(struct em8300_s *em) { - int ret; - struct private_data_s *pdata; - - /* - Setup info structure for bus 1 - */ - - em->i2c_data_1.setsda = &em8300_setsda; - em->i2c_data_1.setscl = &em8300_setscl; - em->i2c_data_1.getsda = &em8300_getsda; - em->i2c_data_1.getscl = &em8300_getscl; - em->i2c_data_1.udelay = 10; - em->i2c_data_1.timeout = 100; - - pdata = kmalloc(sizeof(struct private_data_s),GFP_KERNEL); - pdata->clk = 0x10; - pdata->data = 0x8; - pdata->em = em; - - em->i2c_data_1.data = pdata; + int i, ret; - strcpy(em->i2c_ops_1.name, "EM8300 I2C bus 1"); - em->i2c_ops_1.id = I2C_HW_B_EM8300; - em->i2c_ops_1.algo = NULL; - em->i2c_ops_1.algo_data = &em->i2c_data_1; - em->i2c_ops_1.client_register = em8300_i2c_reg; - em->i2c_ops_1.client_unregister = em8300_i2c_unreg; -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) - em->i2c_ops_1.dev.parent = &em->dev->dev; + /* add only bus 1 */ + ret = i2c_bit_add_bus(&em->i2c_adap[0]); + if (ret) + return ret;; + + if (known_models[em->model].module.name != NULL) + request_module(known_models[em->model].module.name); +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22) + if (known_models[em->model].module.name != NULL) { + struct i2c_board_info i2c_info; + memset(&i2c_info, 0, sizeof(i2c_info)); +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,26) + strncpy((char *)&i2c_info.driver_name, + known_models[em->model].module.name, + sizeof(i2c_info.driver_name)); +#else + strncpy((char *)&i2c_info.type, + known_models[em->model].module.name, + sizeof(i2c_info.type)); #endif + i2c_info.addr = known_models[em->model].module.addr; + em->encoder = i2c_new_device(&em->i2c_adap[0], &i2c_info); + if (em->encoder) + goto found; + } else { + struct i2c_board_info i2c_info; + const unsigned short adv717x_addr[] = { 0x6a, I2C_CLIENT_END }; + const unsigned short bt865_addr[] = { 0x45, I2C_CLIENT_END }; + i2c_info = (struct i2c_board_info){ I2C_BOARD_INFO("adv717x", 0) }; + em->encoder = i2c_new_probed_device(&em->i2c_adap[0], &i2c_info, adv717x_addr); + if (em->encoder) + goto found; + i2c_info = (struct i2c_board_info){ I2C_BOARD_INFO("bt865", 0) }; + em->encoder = i2c_new_probed_device(&em->i2c_adap[0], &i2c_info, bt865_addr); + if (em->encoder) + goto found; + } + printk(KERN_WARNING "em8300-%d: video encoder chip not found\n", em->card_nr); + return 0; - i2c_set_adapdata(&em->i2c_ops_1, (void *)em); + found: + for (i = 0; (i < 50) && !em->encoder->driver; i++) { + set_current_state(TASK_UNINTERRUPTIBLE); + schedule_timeout(HZ/10); + } + if (!em->encoder->driver) { + printk(KERN_ERR "em8300-%d: encoder chip found but no driver found within 5 seconds\n", em->card_nr); + i2c_unregister_device(em->encoder); + em->encoder = NULL; + return 0; + } - ret = i2c_bit_add_bus(&em->i2c_ops_1); - return ret; + em8300_i2c_lock_client(em->encoder); + if (!strncmp(em->encoder->name, "ADV7175", 7)) { + em->encoder_type = ENCODER_ADV7175; + em8300_adv717x_setup(em, em->encoder); + } + if (!strncmp(em->encoder->name, "ADV7170", 7)) { + em->encoder_type = ENCODER_ADV7170; + em8300_adv717x_setup(em, em->encoder); + } + if (!strncmp(em->encoder->name, "BT865", 5)) { + em->encoder_type = ENCODER_BT865; + } + if (sysfs_create_link(&em->dev->dev.kobj, &em->encoder->dev.kobj, "encoder")) + printk(KERN_WARNING "em8300-%d: i2c: unable to create the encoder link\n", em->card_nr); +#endif + return 0; } void em8300_i2c_exit(struct em8300_s *em) { + int i; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,27) + if (em->eeprom) { + sysfs_remove_link(&em->dev->dev.kobj, "eeprom"); + i2c_unregister_device(em->eeprom); + em->eeprom = NULL; + } +#endif +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22) + if (em->encoder) { + em8300_i2c_unlock_client(em->encoder); + sysfs_remove_link(&em->dev->dev.kobj, "encoder"); + i2c_unregister_device(em->encoder); + em->encoder = NULL; + } +#endif + /* unregister i2c_bus */ - kfree(em->i2c_data_1.data); - kfree(em->i2c_data_2.data); + for (i = 0; i < 2; i++) { + kfree(em->i2c_algo[i].data); #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) - i2c_del_adapter(&em->i2c_ops_1); - i2c_del_adapter(&em->i2c_ops_2); + i2c_del_adapter(&em->i2c_adap[i]); #else - i2c_bit_del_bus(&em->i2c_ops_1); - i2c_bit_del_bus(&em->i2c_ops_2); + i2c_bit_del_bus(&em->i2c_adap[i]); #endif + } } void em8300_clockgen_write(struct em8300_s *em, int abyte) { int i; - writel(0x808, &em->mem[em->i2c_pin_reg]); - for (i=0; i < 8; i++) { - writel(0x2000, &em->mem[em->i2c_pin_reg]); - writel(0x800 | ((abyte & 1) ? 8 : 0), &em->mem[em->i2c_pin_reg]); - writel(0x2020, &em->mem[em->i2c_pin_reg]); + write_register(em->i2c_pin_reg, 0x808); + for (i = 0; i < 8; i++) { + write_register(em->i2c_pin_reg, 0x2000); + write_register(em->i2c_pin_reg, 0x800 | ((abyte & 1) ? 8 : 0)); + write_register(em->i2c_pin_reg, 0x2020); abyte >>= 1; } - writel(0x200, &em->mem[em->i2c_pin_reg]); + write_register(em->i2c_pin_reg, 0x200); udelay(10); - writel(0x202, &em->mem[em->i2c_pin_reg]); + write_register(em->i2c_pin_reg, 0x202); } static void I2C_clk(struct em8300_s *em, int level) { - writel(0x1000 | (level ? 0x10 : 0), &em->mem[em->i2c_pin_reg]); + write_register(em->i2c_pin_reg, 0x1000 | (level ? 0x10 : 0)); udelay(10); } static void I2C_data(struct em8300_s *em, int level) { - writel(0x800 | (level ? 0x8 : 0), &em->mem[em->i2c_pin_reg]); + write_register(em->i2c_pin_reg, 0x800 | (level ? 0x8 : 0)); udelay(10); } static void I2C_drivedata(struct em8300_s *em, int level) { - writel(0x800 | (level ? 0x8 : 0), &em->mem[em->i2c_oe_reg]); + write_register(em->i2c_oe_reg, 0x800 | (level ? 0x8 : 0)); udelay(10); } @@ -381,7 +551,7 @@ { int i, data = 0; - for(i = bits - 1; i >= 0; i--) { + for (i = bits - 1; i >= 0; i--) { data |= I2C_read_data << i; I2C_clk(em, 0); I2C_clk(em, 1); @@ -398,7 +568,7 @@ } -static void sub_236f0 (struct em8300_s *em,int arg1, int arg2, int arg3) +static void sub_236f0(struct em8300_s *em, int arg1, int arg2, int arg3) { I2C_clk(em, 1); I2C_data(em, 1); diff -Nru em8300-0.16.4/modules/em8300_ioctl32.c em8300-0.18.0/modules/em8300_ioctl32.c --- em8300-0.16.4/modules/em8300_ioctl32.c 2007-08-24 17:19:25.000000000 +0100 +++ em8300-0.18.0/modules/em8300_ioctl32.c 2010-06-28 18:12:31.000000000 +0100 @@ -1,4 +1,4 @@ -/* $Id: em8300_ioctl32.c,v 1.6 2007/08/24 16:19:25 scop Exp $ +/* $Id$ * * em8300_ioctl32.c -- compatibility layer for 32-bit ioctls on 64-bit kernels * Copyright (C) 2004 Nicolas Boullis diff -Nru em8300-0.16.4/modules/em8300_ioctl32.h em8300-0.18.0/modules/em8300_ioctl32.h --- em8300-0.16.4/modules/em8300_ioctl32.h 2006-04-10 23:31:14.000000000 +0100 +++ em8300-0.18.0/modules/em8300_ioctl32.h 2010-06-28 18:12:31.000000000 +0100 @@ -1,4 +1,4 @@ -/* $Id: em8300_ioctl32.h,v 1.4 2006/04/10 22:31:14 nboullis Exp $ +/* $Id$ * * em8300_ioctl32.h -- compatibility layer for 32-bit ioctls on 64-bit kernels * Copyright (C) 2004 Nicolas Boullis diff -Nru em8300-0.16.4/modules/em8300_ioctl.c em8300-0.18.0/modules/em8300_ioctl.c --- em8300-0.16.4/modules/em8300_ioctl.c 2007-08-24 17:19:24.000000000 +0100 +++ em8300-0.18.0/modules/em8300_ioctl.c 2010-06-28 18:12:31.000000000 +0100 @@ -1,6 +1,30 @@ /* - * Copyright (C) 2005 Jon Burgess + * em8300_ioctl.c + * + * Copyright (C) 2000-2001 Henrik Johansson + * (C) 2000 Ze'ev Maor + * (C) 2001 Rick Haines + * (C) 2001 Edward Salley + * (C) 2001 Daniel Chassot + * (C) 2002 Daniel Holm + * (C) 2003-2005 Jon Burgess + * (C) 2005-2007 Nicolas Boullis + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + #define __NO_VERSION__ #include @@ -24,6 +48,7 @@ #include "em8300_reg.h" #include +#include "em8300_driver.h" #include "em8300_fifo.h" #include "encoder.h" @@ -62,7 +87,7 @@ } } - switch(_IOC_NR(cmd)) { + switch (_IOC_NR(cmd)) { case _IOC_NR(EM8300_IOCTL_INIT): return em8300_ioctl_init(em, (em8300_microcode_t *) arg); @@ -103,16 +128,6 @@ return -EFAULT; break; - case _IOC_NR(EM8300_IOCTL_GETSTATUS): - em8300_require_ucode(em); - - if (!em->ucodeloaded) { - return -ENOTTY; - } - - return em8300_ioctl_getstatus(em, (char *) arg); - break; - case _IOC_NR(EM8300_IOCTL_VBI): em8300_require_ucode(em); @@ -128,7 +143,7 @@ if (ret == 0) return -EINTR; else if (ret < 0) - return ret; + return ret; /* copy timestamp and return */ if (copy_to_user((void *) arg, &em->tv, sizeof(struct timeval))) @@ -166,7 +181,7 @@ if (_IOC_DIR(cmd) & _IOC_WRITE) { get_user(val, (int *) arg); - em8300_ioctl_setvideomode(em, val); + return em8300_ioctl_setvideomode(em, val); } if (_IOC_DIR(cmd) & _IOC_READ) { @@ -184,7 +199,7 @@ if (_IOC_DIR(cmd) & _IOC_WRITE) { get_user(val, (int *) arg); - em8300_ioctl_setplaymode(em, val); + return em8300_ioctl_setplaymode(em, val); } break; @@ -206,25 +221,20 @@ } break; case _IOC_NR(EM8300_IOCTL_GET_AUDIOMODE): - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) { - em8300_require_ucode(em); + em8300_require_ucode(em); - if (!em->ucodeloaded) { - return -ENOTTY; - } + if (!em->ucodeloaded) { + return -ENOTTY; + } - if (_IOC_DIR(cmd) & _IOC_WRITE) { - get_user(val, (int *) arg); - em8300_ioctl_setaudiomode(em, val); - } - if (_IOC_DIR(cmd) & _IOC_READ) { - em8300_ioctl_getaudiomode(em, arg); - } - break; + if (_IOC_DIR(cmd) & _IOC_WRITE) { + get_user(val, (int *) arg); + em8300_ioctl_setaudiomode(em, val); + } + if (_IOC_DIR(cmd) & _IOC_READ) { + em8300_ioctl_getaudiomode(em, arg); } - else - return -EINVAL; + break; case _IOC_NR(EM8300_IOCTL_SET_SPUMODE): em8300_require_ucode(em); @@ -362,7 +372,7 @@ if (_IOC_DIR(cmd) & _IOC_WRITE) { unsigned scr; - if (get_user(val, (unsigned*) arg)) + if (get_user(val, (unsigned *) arg)) return -EFAULT; scr = read_ucregister(MV_SCRlo) | (read_ucregister(MV_SCRhi) << 16); @@ -372,7 +382,7 @@ scr = val - scr; if (scr > 2 * 1800) { /* Tolerance: 2 frames */ - pr_info("adjusting scr: %i\n", val); + pr_info("em8300-%d: adjusting scr: %i\n", em->card_nr, val); write_ucregister(MV_SCRlo, val & 0xffff); write_ucregister(MV_SCRhi, (val >> 16) & 0xffff); } @@ -392,7 +402,7 @@ } if (_IOC_DIR(cmd) & _IOC_WRITE) { - get_user(val, (int*) arg); + get_user(val, (int *) arg); val &= 0xFFFF; write_ucregister(MV_SCRSpeed, @@ -416,7 +426,7 @@ } if (_IOC_DIR(cmd) & _IOC_WRITE) { - if (get_user(val, (unsigned*) arg)) + if (get_user(val, (unsigned *) arg)) return -EFAULT; switch (val) { @@ -425,8 +435,7 @@ case EM8300_SUBDEVICE_VIDEO: return em8300_video_flush(em); case EM8300_SUBDEVICE_AUDIO: - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) + if (em->audio_driver_style == OSS) return em8300_audio_flush(em); else return -EINVAL; @@ -477,11 +486,9 @@ if (em->mvfifo) { em8300_fifo_free(em->mvfifo); } - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) - if (em->mafifo) { - em8300_fifo_free(em->mafifo); - } + if (em->mafifo) { + em8300_fifo_free(em->mafifo); + } if (em->spfifo) { em8300_fifo_free(em->spfifo); } @@ -490,29 +497,23 @@ return -ENOMEM; } - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) - if (!(em->mafifo = em8300_fifo_alloc())) { - return -ENOMEM; - } + if (!(em->mafifo = em8300_fifo_alloc())) { + return -ENOMEM; + } if (!(em->spfifo = em8300_fifo_alloc())) { return -ENOMEM; } em8300_fifo_init(em,em->mvfifo, MV_PCIStart, MV_PCIWrPtr, MV_PCIRdPtr, MV_PCISize, 0x900, FIFOTYPE_VIDEO); - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) - em8300_fifo_init(em,em->mafifo, MA_PCIStart, MA_PCIWrPtr, MA_PCIRdPtr, MA_PCISize, 0x1000, FIFOTYPE_AUDIO); + em8300_fifo_init(em, em->mafifo, MA_PCIStart, MA_PCIWrPtr, MA_PCIRdPtr, MA_PCISize, 0x1000, FIFOTYPE_AUDIO); // em8300_fifo_init(em,em->spfifo, SP_PCIStart, SP_PCIWrPtr, SP_PCIRdPtr, SP_PCISize, 0x1000, FIFOTYPE_VIDEO); - em8300_fifo_init(em,em->spfifo, SP_PCIStart, SP_PCIWrPtr, SP_PCIRdPtr, SP_PCISize, 0x800, FIFOTYPE_VIDEO); + em8300_fifo_init(em, em->spfifo, SP_PCIStart, SP_PCIWrPtr, SP_PCIRdPtr, SP_PCISize, 0x800, FIFOTYPE_VIDEO); em8300_spu_init(em); - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) - if ((ret = em8300_audio_setup(em))) { - return ret; - } + if ((ret = em8300_audio_setup(em))) { + return ret; + } em8300_ioctl_enable_videoout(em, 0); @@ -523,42 +524,10 @@ em->ucodeloaded = 1; - printk(KERN_NOTICE "em8300: Microcode version 0x%02x loaded\n", read_ucregister(MicroCodeVersion)); + printk(KERN_NOTICE "em8300-%d: Microcode version 0x%02x loaded\n", em->card_nr, read_ucregister(MicroCodeVersion)); return 0; } -int em8300_ioctl_getstatus(struct em8300_s *em, char *usermsg) -{ - char tmpstr[1024]; - struct timeval tv; - long tdiff, frames, scr, picpts; - char mvfstatus[128]; - char mafstatus[128]; - char spfstatus[128]; - - em8300_fifo_statusmsg(em->mvfifo, mvfstatus); - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) - em8300_fifo_statusmsg(em->mafifo, mafstatus); - em8300_fifo_statusmsg(em->spfifo, spfstatus); - - frames = (read_ucregister(MV_FrameCntHi) << 16) | read_ucregister(MV_FrameCntLo); - picpts = (read_ucregister(PicPTSHi) << 16) | - read_ucregister(PicPTSLo); - scr = (read_ucregister(MV_SCRhi) << 16) | read_ucregister(MV_SCRlo); - - do_gettimeofday(&tv); - tdiff = TIMEDIFF(tv, em->last_status_time); - em->last_status_time = tv; - em->irqcount = 0; - em->frames = frames; - em->scr = scr; - if (copy_to_user((void *) usermsg, tmpstr, strlen(tmpstr) + 1)) - return -EFAULT; - return 0; -} - - int em8300_ioctl_setvideomode(struct em8300_s *em, int mode) { long int encoder; @@ -581,9 +550,9 @@ em8300_dicom_disable(em); - if (em->encoder) { + if ((em->encoder) && (em->encoder->driver) + && (em->encoder->driver->command)) em->encoder->driver->command(em->encoder, ENCODER_CMD_SETMODE, (void *)encoder); - } em8300_dicom_enable(em); em8300_dicom_update(em); @@ -594,11 +563,11 @@ { em8300_dicom_disable(em); - if (em->encoder) { + if ((em->encoder) && (em->encoder->driver) + && (em->encoder->driver->command)) em->encoder->driver->command(em->encoder, ENCODER_CMD_ENABLEOUTPUT, (void *)(long int)(stop_video[em->card_nr]?mode:1)); - } em8300_dicom_enable(em); } @@ -607,7 +576,7 @@ int em8300_ioctl_setaspectratio(struct em8300_s *em, int ratio) { em->aspect_ratio = ratio; - em8300_dicom_update(em); + em8300_dicom_update_aspect_ratio(em); return 0; } @@ -661,11 +630,11 @@ case EM8300_OVERLAY_MODE_RECTANGLE: case EM8300_OVERLAY_MODE_OVERLAY: if (!em->overlay_enabled) { - if (em->encoder) { + if ((em->encoder) && (em->encoder->driver) + && (em->encoder->driver->command)) em->encoder->driver->command(em->encoder, ENCODER_CMD_ENABLEOUTPUT, (void *)(long int)0); - } em->clockgen = (em->clockgen & ~CLOCKGEN_MODEMASK) | em->clockgen_overlaymode; em8300_clockgen_write(em, em->clockgen); em->overlay_enabled = 1; diff -Nru em8300-0.16.4/modules/em8300_main.c em8300-0.18.0/modules/em8300_main.c --- em8300-0.16.4/modules/em8300_main.c 2007-12-03 22:59:09.000000000 +0000 +++ em8300-0.18.0/modules/em8300_main.c 2010-06-28 18:12:31.000000000 +0100 @@ -2,6 +2,7 @@ em8300.c - EM8300 MPEG-2 decoder device driver Copyright (C) 2000 Henrik Johansson + Copyright (C) 2008 Nicolas Boullis This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -55,15 +56,19 @@ #include "em8300_reg.h" #include +#include "em8300_driver.h" #include "em8300_fifo.h" #include "em8300_registration.h" #include "em8300_params.h" #include "em8300_eeprom.h" +#include "em8300_models.h" #ifdef CONFIG_EM8300_IOCTL32 #include "em8300_ioctl32.h" #endif +#include "em8300_version.h" + #if !defined(CONFIG_I2C_ALGOBIT) && !defined(CONFIG_I2C_ALGOBIT_MODULE) #error "This needs the I2C Bit Banging Interface in your Kernel" #endif @@ -81,9 +86,9 @@ EXPORT_NO_SYMBOLS; -static int em8300_cards,clients; +static int em8300_cards, clients; -static struct em8300_s em8300[EM8300_MAX]; +static struct em8300_s *em8300[EM8300_MAX]; #if defined(CONFIG_SOUND) || defined(CONFIG_SOUND_MODULE) static int dsp_num_table[16]; @@ -91,8 +96,7 @@ /* structure to keep track of the memory that has been allocated by the user via mmap() */ -struct memory_info -{ +struct memory_info { struct list_head item; long length; char *ptr; @@ -108,7 +112,7 @@ static irqreturn_t em8300_irq(int irq, void *dev_id #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19) - , struct pt_regs * regs + , struct pt_regs *regs #endif ) { @@ -120,7 +124,7 @@ if (irqstatus & 0x8000) { write_ucregister(Q_IrqMask, 0x0); - writel(2, &em->mem[EM8300_INTERRUPT_ACK]); + write_register(EM8300_INTERRUPT_ACK, 2); write_ucregister(Q_IrqStatus, 0x8000); @@ -131,8 +135,7 @@ if (irqstatus & IRQSTATUS_AUDIO_FIFO) { em8300_audio_interrupt(em); - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) + if (em->audio_driver_style == OSS) em8300_fifo_check(em->mafifo); } @@ -158,14 +161,15 @@ static void release_em8300(struct em8300_s *em) { - if(em->encoder) { - em->encoder->driver->command(em->encoder, ENCODER_CMD_ENABLEOUTPUT, (void *) 0); - } + if ((em->encoder) && (em->encoder->driver) + && (em->encoder->driver->command)) + em->encoder->driver->command(em->encoder, + ENCODER_CMD_ENABLEOUTPUT, + (void *) 0); #ifdef CONFIG_MTRR - if (em->mtrr_reg) { - mtrr_del(em->mtrr_reg,em->adr, em->memsize); - } + if (em->mtrr_reg) + mtrr_del(em->mtrr_reg, em->adr, em->memsize); #endif em8300_eeprom_checksum_deinit(em); @@ -173,35 +177,30 @@ write_ucregister(Q_IrqMask, 0); write_ucregister(Q_IrqStatus, 0); - writel(0, &em->mem[0x2000]); + write_register(0x2000, 0); em8300_fifo_free(em->mvfifo); - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) - em8300_fifo_free(em->mafifo); + em8300_fifo_free(em->mafifo); em8300_fifo_free(em->spfifo); /* free it */ free_irq(em->dev->irq, em); /* unmap and free memory */ - if (em->mem) { + if (em->mem) iounmap((unsigned *) em->mem); - } + + kfree(em); } -static int em8300_io_ioctl(struct inode* inode, struct file* filp, unsigned int cmd, unsigned long arg) +static int em8300_io_ioctl(struct inode *inode, struct file *filp, unsigned int cmd, unsigned long arg) { struct em8300_s *em = filp->private_data; int subdevice = EM8300_IMINOR(inode) % 4; switch (subdevice) { case EM8300_SUBDEVICE_AUDIO: - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) - return em8300_audio_ioctl(em, cmd, arg); - else - return -EINVAL; + return em8300_audio_ioctl(em, cmd, arg); case EM8300_SUBDEVICE_VIDEO: return em8300_video_ioctl(em, cmd, arg); case EM8300_SUBDEVICE_SUBPICTURE: @@ -213,47 +212,50 @@ return -EINVAL; } -static int em8300_io_open(struct inode* inode, struct file* filp) +static int em8300_io_open(struct inode *inode, struct file *filp) { int card = EM8300_IMINOR(inode) / 4; int subdevice = EM8300_IMINOR(inode) % 4; - struct em8300_s *em = &em8300[card]; + struct em8300_s *em = em8300[card]; int err = 0; - if (card >= em8300_cards) { + if (card >= em8300_cards) return -ENODEV; - } if (subdevice != EM8300_SUBDEVICE_CONTROL) { - if (em8300[card].inuse[subdevice]) { + if (em->inuse[subdevice]) return -EBUSY; - } } - filp->private_data = &em8300[card]; + filp->private_data = em; /* initalize the memory list */ INIT_LIST_HEAD(&em->memory); switch (subdevice) { case EM8300_SUBDEVICE_CONTROL: - em8300[card].nonblock[0] = ((filp->f_flags&O_NONBLOCK) == O_NONBLOCK); + em->nonblock[0] = ((filp->f_flags&O_NONBLOCK) == O_NONBLOCK); break; case EM8300_SUBDEVICE_AUDIO: - if ((audio_driver_nr[card] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[card] == AUDIO_DRIVER_OSS)) { - em8300[card].nonblock[1] = ((filp->f_flags&O_NONBLOCK) == O_NONBLOCK); - err = em8300_audio_open(em); - break; + down(&em->audio_driver_style_lock); + if (em->audio_driver_style != NONE) { + up(&em->audio_driver_style_lock); + return -EBUSY; } - else - return -ENODEV; + em->audio_driver_style = OSS; + up(&em->audio_driver_style_lock); + + em->nonblock[1] = ((filp->f_flags&O_NONBLOCK) == O_NONBLOCK); + err = em8300_audio_open(em); + if (err) + em->audio_driver_style = NONE; + break; case EM8300_SUBDEVICE_VIDEO: em8300_require_ucode(em); - if (!em->ucodeloaded) { + if (!em->ucodeloaded) return -ENODEV; - } - em8300[card].nonblock[2] = ((filp->f_flags&O_NONBLOCK) == O_NONBLOCK); + + em->nonblock[2] = ((filp->f_flags&O_NONBLOCK) == O_NONBLOCK); em8300_video_open(em); if (!em->overlay_enabled) @@ -263,10 +265,10 @@ break; case EM8300_SUBDEVICE_SUBPICTURE: em8300_require_ucode(em); - if (!em->ucodeloaded) { + if (!em->ucodeloaded) return -ENODEV; - } - em8300[card].nonblock[3] = ((filp->f_flags&O_NONBLOCK) == O_NONBLOCK); + + em->nonblock[3] = ((filp->f_flags&O_NONBLOCK) == O_NONBLOCK); err = em8300_spu_open(em); break; default: @@ -274,21 +276,20 @@ break; } - if (err) { + if (err) return err; - } - em8300[card].inuse[subdevice]++; + em->inuse[subdevice]++; clients++; - pr_debug("em8300_main.o: Opening device %d, Clients:%d\n", subdevice, clients); + pr_debug("em8300-%d: Opening device %d, Clients:%d\n", em->card_nr, subdevice, clients); EM8300_MOD_INC_USE_COUNT; - return(0); + return 0; } -static ssize_t em8300_io_write(struct file *file, const char * buf, size_t count, loff_t *ppos) +static ssize_t em8300_io_write(struct file *file, const char *buf, size_t count, loff_t *ppos) { struct em8300_s *em = file->private_data; int subdevice = EM8300_IMINOR(file->f_dentry->d_inode) % 4; @@ -299,14 +300,9 @@ return em8300_video_write(em, buf, count, ppos); break; case EM8300_SUBDEVICE_AUDIO: - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) { - em->nonblock[1] = ((file->f_flags&O_NONBLOCK) == O_NONBLOCK); - return em8300_audio_write(em, buf, count, ppos); - break; - } - else - return -ENODEV; + em->nonblock[1] = ((file->f_flags&O_NONBLOCK) == O_NONBLOCK); + return em8300_audio_write(em, buf, count, ppos); + break; case EM8300_SUBDEVICE_SUBPICTURE: em->nonblock[3] = ((file->f_flags&O_NONBLOCK) == O_NONBLOCK); return em8300_spu_write(em, buf, count, ppos); @@ -322,9 +318,8 @@ unsigned long size = vma->vm_end - vma->vm_start; int subdevice = EM8300_IMINOR(file->f_dentry->d_inode) % 4; - if (subdevice != EM8300_SUBDEVICE_CONTROL) { + if (subdevice != EM8300_SUBDEVICE_CONTROL) return -EPERM; - } switch (vma->vm_pgoff) { case 1: { @@ -340,20 +335,19 @@ size = pages * PAGE_SIZE; /* allocate the physical contiguous memory */ - mem = (char*)kmalloc(pages*PAGE_SIZE, GFP_KERNEL); - if( mem == NULL) { + mem = kmalloc(pages*PAGE_SIZE, GFP_KERNEL); + if (mem == NULL) return -ENOMEM; - } + /* clear out the memory for sure */ memset(mem, 0x00, pages*PAGE_SIZE); /* reserve all pages */ - for(adr = (long)mem; adr < (long)mem + size; adr += PAGE_SIZE) { + for (adr = (long)mem; adr < (long)mem + size; adr += PAGE_SIZE) SetPageReserved(virt_to_page(adr)); - } /* lock the area*/ - vma->vm_flags |=VM_LOCKED; + vma->vm_flags |= VM_LOCKED; /* remap the memory to user space */ #if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,3) @@ -368,25 +362,24 @@ } /* put the physical address into the first dword of the memory */ - *((long*)mem) = virt_to_phys((void *)mem); + *((long *)mem) = virt_to_phys((void *)mem); /* keep track of the memory we have allocated */ - info = (struct memory_info*)vmalloc(sizeof(struct memory_info)); - if( NULL == info ) { + info = (struct memory_info *)vmalloc(sizeof(struct memory_info)); + if (NULL == info) { kfree(mem); return -ENOMEM; } info->ptr = mem; info->length = size; - list_add_tail(&info->item,&em->memory); + list_add_tail(&info->item, &em->memory); break; } case 0: - if (size > em->memsize) { + if (size > em->memsize) return -EINVAL; - } #if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,3) remap_page_range(vma->vm_start, em->adr, vma->vm_end - vma->vm_start, vma->vm_page_prot); @@ -413,22 +406,19 @@ switch (subdevice) { case EM8300_SUBDEVICE_AUDIO: - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) { - poll_wait(file, &em->mafifo->wait, wait); - if (file->f_mode & FMODE_WRITE) { - if (em8300_fifo_freeslots(em->mafifo)) { - pr_debug("Poll audio - Free slots: %d\n", em8300_fifo_freeslots(em->mafifo)); - mask |= POLLOUT | POLLWRNORM; - } + poll_wait(file, &em->mafifo->wait, wait); + if (file->f_mode & FMODE_WRITE) { + if (em8300_fifo_freeslots(em->mafifo)) { + pr_debug("em8300-%d: Poll audio - Free slots: %d\n", em->card_nr, em8300_fifo_freeslots(em->mafifo)); + mask |= POLLOUT | POLLWRNORM; } - break; } + break; case EM8300_SUBDEVICE_VIDEO: poll_wait(file, &em->mvfifo->wait, wait); if (file->f_mode & FMODE_WRITE) { if (em8300_fifo_freeslots(em->mvfifo)) { - pr_debug("Poll video - Free slots: %d\n", em8300_fifo_freeslots(em->mvfifo)); + pr_debug("em8300-%d: Poll video - Free slots: %d\n", em->card_nr, em8300_fifo_freeslots(em->mvfifo)); mask |= POLLOUT | POLLWRNORM; } } @@ -437,7 +427,7 @@ poll_wait(file, &em->spfifo->wait, wait); if (file->f_mode & FMODE_WRITE) { if (em8300_fifo_freeslots(em->spfifo)) { - pr_debug("Poll subpic - Free slots: %d\n", em8300_fifo_freeslots(em->spfifo)); + pr_debug("em8300-%d: Poll subpic - Free slots: %d\n", em->card_nr, em8300_fifo_freeslots(em->spfifo)); mask |= POLLOUT | POLLWRNORM; } } @@ -446,16 +436,15 @@ return mask; } -int em8300_io_release(struct inode* inode, struct file *filp) +int em8300_io_release(struct inode *inode, struct file *filp) { struct em8300_s *em = filp->private_data; int subdevice = EM8300_IMINOR(inode) % 4; switch (subdevice) { case EM8300_SUBDEVICE_AUDIO: - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) - em8300_audio_release(em); + em8300_audio_release(em); + em->audio_driver_style = NONE; break; case EM8300_SUBDEVICE_VIDEO: em8300_video_release(em); @@ -467,15 +456,14 @@ break; } - while( 0 == list_empty(&em->memory)) { + while (0 == list_empty(&em->memory)) { unsigned long adr = 0; struct memory_info *info = list_entry(em->memory.next, struct memory_info, item); list_del(&info->item); - for(adr = (long)info->ptr; adr < (long)info->ptr + info->length; adr += PAGE_SIZE) { + for (adr = (long)info->ptr; adr < (long)info->ptr + info->length; adr += PAGE_SIZE) ClearPageReserved(virt_to_page(adr)); - } kfree(info->ptr); vfree(info); @@ -484,68 +472,79 @@ em->inuse[subdevice]--; clients--; - pr_debug("em8300_main.o: Releasing device %d, clients:%d\n", subdevice, clients); + pr_debug("em8300-%d: Releasing device %d, clients:%d\n", em->card_nr, subdevice, clients); EM8300_MOD_DEC_USE_COUNT; - return(0); + return 0; } struct file_operations em8300_fops = { - owner: THIS_MODULE, - write: em8300_io_write, - ioctl: em8300_io_ioctl, - mmap: em8300_io_mmap, - poll: em8300_poll, - open: em8300_io_open, - release: em8300_io_release, + .owner = THIS_MODULE, + .write = em8300_io_write, + .ioctl = em8300_io_ioctl, + .mmap = em8300_io_mmap, + .poll = em8300_poll, + .open = em8300_io_open, + .release = em8300_io_release, #if defined(CONFIG_EM8300_IOCTL32) && defined(HAVE_COMPAT_IOCTL) - compat_ioctl: em8300_compat_ioctl, + .compat_ioctl = em8300_compat_ioctl, #endif }; #if defined(CONFIG_SOUND) || defined(CONFIG_SOUND_MODULE) -static int em8300_dsp_ioctl(struct inode* inode, struct file* filp, unsigned int cmd, unsigned long arg) +static int em8300_dsp_ioctl(struct inode *inode, struct file *filp, unsigned int cmd, unsigned long arg) { struct em8300_s *em = filp->private_data; return em8300_audio_ioctl(em, cmd, arg); } -static int em8300_dsp_open(struct inode* inode, struct file* filp) +static int em8300_dsp_open(struct inode *inode, struct file *filp) { int dsp_number = ((EM8300_IMINOR(inode) >> 4) & 0x0f); int card = dsp_num_table[dsp_number] - 1; int err = 0; + struct em8300_s *em = em8300[card]; - pr_debug("em8300: opening dsp %i for card %i\n", dsp_number, card); + pr_debug("em8300-%d: opening dsp %i for card %i\n", em->card_nr, dsp_number, card); - if (card < 0 || card >= em8300_cards) { + if (card < 0 || card >= em8300_cards) return -ENODEV; + + down(&em->audio_driver_style_lock); + if (em->audio_driver_style != NONE) { + up(&em->audio_driver_style_lock); + return -EBUSY; } + em->audio_driver_style = OSS; + up(&em->audio_driver_style_lock); - if (em8300[card].inuse[EM8300_SUBDEVICE_AUDIO]) { + if (em->inuse[EM8300_SUBDEVICE_AUDIO]) { + printk("em8300-%d: em8300_dsp_open: em->audio_driver_style == NONE but em->inuse[EM8300_SUBDEVICE_AUDIO] !?\n", em->card_nr); + em->audio_driver_style = NONE; return -EBUSY; } - filp->private_data = &em8300[card]; + filp->private_data = em; - err = em8300_audio_open(&em8300[card]); + err = em8300_audio_open(em); if (err) { + em->audio_driver_style = NONE; return err; } - em8300[card].inuse[EM8300_SUBDEVICE_AUDIO]++; + em->inuse[EM8300_SUBDEVICE_AUDIO]++; clients++; - pr_debug("em8300_main.o: Opening device %d, Clients:%d\n", EM8300_SUBDEVICE_AUDIO, clients); + pr_debug("em8300-%d: Opening device %d, Clients:%d\n", em->card_nr, EM8300_SUBDEVICE_AUDIO, clients); EM8300_MOD_INC_USE_COUNT; - return(0); + return 0; } -static ssize_t em8300_dsp_write(struct file *file, const char * buf, size_t count, loff_t *ppos) +static ssize_t em8300_dsp_write(struct file *file, const char *buf, size_t count, loff_t *ppos) { struct em8300_s *em = file->private_data; return em8300_audio_write(em, buf, count, ppos); @@ -558,58 +557,89 @@ poll_wait(file, &em->mafifo->wait, wait); if (file->f_mode & FMODE_WRITE) { if (em8300_fifo_freeslots(em->mafifo)) { - pr_debug("Poll dsp - Free slots: %d\n", em8300_fifo_freeslots(em->mafifo)); + pr_debug("em8300-%d: Poll dsp - Free slots: %d\n", em->card_nr, em8300_fifo_freeslots(em->mafifo)); mask |= POLLOUT | POLLWRNORM; } } return mask; } -int em8300_dsp_release(struct inode* inode, struct file* filp) +int em8300_dsp_release(struct inode *inode, struct file *filp) { struct em8300_s *em = filp->private_data; em8300_audio_release(em); + em->audio_driver_style = NONE; + em->inuse[EM8300_SUBDEVICE_AUDIO]--; clients--; - pr_debug("em8300_main.o: Releasing device %d, clients:%d\n", EM8300_SUBDEVICE_AUDIO, clients); + pr_debug("em8300-%d: Releasing device %d, clients:%d\n", em->card_nr, EM8300_SUBDEVICE_AUDIO, clients); EM8300_MOD_DEC_USE_COUNT; - return(0); + return 0; } static struct file_operations em8300_dsp_audio_fops = { - owner: THIS_MODULE, - write: em8300_dsp_write, - ioctl: em8300_dsp_ioctl, - poll: em8300_dsp_poll, - open: em8300_dsp_open, - release: em8300_dsp_release, + .owner = THIS_MODULE, + .write = em8300_dsp_write, + .ioctl = em8300_dsp_ioctl, + .poll = em8300_dsp_poll, + .open = em8300_dsp_open, + .release = em8300_dsp_release, }; #endif static int init_em8300(struct em8300_s *em) { + int identified_model; + write_register(0x30000, read_register(0x30000)); write_register(0x1f50, 0x123); - if (read_register(0x1f50) == 0x123) { + if (read_register(0x1f50) == 0x123) em->chip_revision = 2; + else + em->chip_revision = 1; + + em8300_i2c_init1(em); + em8300_eeprom_checksum_init(em); + + identified_model = identify_model(em); + + if (em->model == -1) { + if (identified_model > 0) { + em->model = identified_model; + pr_info("em8300-%d: detected card: %s.\n", em->card_nr, + known_models[identified_model].name); + } else { + em->model = 0; + printk(KERN_ERR "em8300-%d: unable to identify model...\n", em->card_nr); + } + } + + if ((em->model != identified_model) && (em->model > 0) && (identified_model > 0)) + printk(KERN_WARNING "em8300-%d: mismatch between detected and requested model.\n", em->card_nr); + + if (em->model > 0) { + em->config.model = known_models[em->model].em8300_config; + em->config.adv717x_model = known_models[em->model].adv717x_config; + } + + if (em->chip_revision == 2) { if (0x40 & read_register(0x1c08)) { em->var_video_value = 3375; /* was 0xd34 = 3380 */ em->mystery_divisor = 0x107ac; em->var_ucode_reg2 = 0x272; em->var_ucode_reg3 = 0x8272; if (0x20 & read_register(0x1c08)) { - if (use_bt865[em->card_nr]) { + if (em->config.model.use_bt865) em->var_ucode_reg1 = 0x800; - } else { + else em->var_ucode_reg1 = 0x818; - } } } else { em->var_video_value = 0xce4; @@ -618,7 +648,6 @@ em->var_ucode_reg3 = 0x825a; } } else { - em->chip_revision = 1; em->var_ucode_reg1 = 0x80; em->var_video_value = 0xce4; em->mystery_divisor = 0x101d0; @@ -626,13 +655,34 @@ em->var_ucode_reg3 = 0x8c7; } - pr_info("em8300_main.o: Chip revision: %d\n", em->chip_revision); - pr_debug("em8300_main.o: use_bt865: %d\n", use_bt865[em->card_nr]); - em8300_i2c_init1(em); + /* + * Override default (or detected) values with module parameters. + */ + if (use_bt865[em->card_nr] >= 0) + em->config.model.use_bt865 = + use_bt865[em->card_nr]; + if (dicom_other_pal[em->card_nr] >= 0) + em->config.model.dicom_other_pal = + dicom_other_pal[em->card_nr]; + if (dicom_fix[em->card_nr] >= 0) + em->config.model.dicom_fix = + dicom_fix[em->card_nr]; + if (dicom_control[em->card_nr] >= 0) + em->config.model.dicom_control = + dicom_control[em->card_nr]; + if (bt865_ucode_timeout[em->card_nr] >= 0) + em->config.model.bt865_ucode_timeout = + bt865_ucode_timeout[em->card_nr]; + if (activate_loopback[em->card_nr] >= 0) + em->config.model.activate_loopback = + activate_loopback[em->card_nr]; + + pr_info("em8300-%d: Chip revision: %d\n", em->card_nr, em->chip_revision); + pr_debug("em8300-%d: use_bt865: %d\n", em->card_nr, em->config.model.use_bt865); + em8300_i2c_init2(em); - em8300_eeprom_checksum_init(em); - if (activate_loopback[em->card_nr] == 0) { + if (em->config.model.activate_loopback == 0) { em->clockgen_tvmode = CLOCKGEN_TVMODE_1; em->clockgen_overlaymode = CLOCKGEN_OVERLAYMODE_1; } else { @@ -643,9 +693,32 @@ em->clockgen = em->clockgen_tvmode; em8300_clockgen_write(em, em->clockgen); - em->zoom=100; + em->zoom = 100; + + pr_debug("em8300-%d: activate_loopback: %d\n", em->card_nr, em->config.model.activate_loopback); + + return 0; +} + +static int em8300_pci_setup(struct pci_dev *dev) +{ + struct em8300_s *em = pci_get_drvdata(dev); + unsigned char revision; + int rc = 0; - pr_debug("em8300_main.o: activate_loopback: %d\n", activate_loopback[em->card_nr]); + rc = pci_enable_device(dev); + if (rc < 0) { + printk(KERN_ERR "em8300-%d: Unable to enable PCI device\n", em->card_nr); + return rc; + } + + pci_set_master(dev); + + em->adr = pci_resource_start(dev, 0); + em->memsize = pci_resource_len(dev, 0); + + pci_read_config_byte(dev, PCI_CLASS_REVISION, &revision); + em->pci_revision = revision; return 0; } @@ -653,65 +726,124 @@ static int __devinit em8300_probe(struct pci_dev *dev, const struct pci_device_id *pci_id) { - unsigned char revision; struct em8300_s *em; int result; - em = &em8300[em8300_cards]; - memset(em, 0, sizeof(struct em8300_s)); + em = kzalloc(sizeof(struct em8300_s), GFP_KERNEL); + if (!em) { + printk(KERN_ERR "em8300: kzalloc failed - out of memory!\n"); + return -ENOMEM; + } + em->dev = dev; em->card_nr = em8300_cards; - em->adr = dev->resource[0].start; - em->memsize = 1024 * 1024; - if ((result = pci_enable_device(dev)) != 0) { - printk(KERN_ERR "em8300: Unable to enable PCI device\n"); - return result; + pci_set_drvdata(dev, em); + result = em8300_pci_setup(dev); + if (result != 0) { + printk(KERN_ERR "em8300-%d: pci setup failed\n", em->card_nr); + goto mem_free; } - pci_read_config_byte(dev, PCI_CLASS_REVISION, &revision); - em->pci_revision = revision; - pr_info("em8300: EM8300 %x (rev %d) ", dev->device, revision); - printk("bus: %d, devfn: %d, irq: %d, ", dev->bus->number, dev->devfn, dev->irq); - printk("memory: 0x%08lx.\n", em->adr); + /* + * Specify default values if card is not identified. + */ + em->config.model.use_bt865 = + 0; +#ifdef CONFIG_EM8300_DICOMPAL + em->config.model.dicom_other_pal = + 1; +#else + em->config.model.dicom_other_pal = + 0; +#endif +#ifdef CONFIG_EM8300_DICOMFIX + em->config.model.dicom_fix = + 1; +#else + em->config.model.dicom_fix = + 0; +#endif +#ifdef CONFIG_EM8300_DICOMCTRL + em->config.model.dicom_control = + 1; +#else + em->config.model.dicom_control = + 0; +#endif +#ifdef CONFIG_EM8300_UCODETIMEOUT + em->config.model.bt865_ucode_timeout = + 1; +#else + em->config.model.bt865_ucode_timeout = + 0; +#endif +#ifdef CONFIG_EM8300_LOOPBACK + em->config.model.activate_loopback = + 1; +#else + em->config.model.activate_loopback = + 0; +#endif + +#ifdef CONFIG_ADV717X_PIXELPORT16BIT + em->config.adv717x_model.pixelport_16bit = 1; +#else + em->config.adv717x_model.pixelport_16bit = 0; +#endif +#ifdef CONFIG_ADV717X_PIXELPORTPAL + em->config.adv717x_model.pixelport_other_pal = 1; +#else + em->config.adv717x_model.pixelport_other_pal = 0; +#endif + em->config.adv717x_model.pixeldata_adjust_ntsc = 1; + em->config.adv717x_model.pixeldata_adjust_pal = 1; + + em->model = card_model[em8300_cards]; + + pr_info("em8300-%d: EM8300 %x (rev %d) ", em->card_nr, dev->device, em->pci_revision); + pr_info("bus: %d, devfn: %d, irq: %d, ", dev->bus->number, dev->devfn, dev->irq); + pr_info("memory: 0x%08lx.\n", em->adr); em->mem = ioremap(em->adr, em->memsize); - pr_info("em8300: mapped-memory at 0x%p\n", em->mem); + if (!em->mem) { + printk(KERN_ERR "em8300-%d: ioremap for memory region failed\n", em->card_nr); + result = -ENOMEM; + goto mem_free; + } + + pr_info("em8300-%d: mapped-memory at 0x%p\n", em->card_nr, em->mem); #ifdef CONFIG_MTRR em->mtrr_reg = mtrr_add(em->adr, em->memsize, MTRR_TYPE_UNCACHABLE, 1); - if (em->mtrr_reg) pr_info("em8300: using MTRR\n"); + if (em->mtrr_reg) + pr_info("em8300-%d: using MTRR\n", em->card_nr); #endif init_waitqueue_head(&em->video_ptsfifo_wait); init_waitqueue_head(&em->vbi_wait); init_waitqueue_head(&em->sp_ptsfifo_wait); + em->audio_driver_style = NONE; + init_MUTEX(&em->audio_driver_style_lock); + result = request_irq(dev->irq, em8300_irq, IRQF_SHARED | IRQF_DISABLED, "em8300", (void *) em); if (result == -EINVAL) { - printk(KERN_ERR "em8300: Bad irq number or handler\n"); - return -EINVAL; + printk(KERN_ERR "em8300-%d: Bad irq number or handler\n", em->card_nr); + goto irq_error; } - pci_set_master(dev); - pci_set_drvdata(dev, em); - - em->irqmask = 0; - em->encoder = NULL; - em->linecounter=0; - init_em8300(em); em8300_register_card(em); #if defined(CONFIG_SOUND) || defined(CONFIG_SOUND_MODULE) - if (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS) { - if ((em->dsp_num = register_sound_dsp(&em8300_dsp_audio_fops, dsp_num[em->card_nr])) < 0) { - printk(KERN_ERR "em8300: cannot register oss audio device!\n"); - } else { - dsp_num_table[em->dsp_num >> 4 & 0x0f] = em8300_cards + 1; - pr_debug("em8300: registered dsp %i for device %i\n", em->dsp_num >> 4 & 0x0f, em8300_cards); - } + em->dsp_num = register_sound_dsp(&em8300_dsp_audio_fops, dsp_num[em->card_nr]); + if (em->dsp_num < 0) { + printk(KERN_ERR "em8300-%d: cannot register oss audio device!\n", em->card_nr); + } else { + dsp_num_table[em->dsp_num >> 4 & 0x0f] = em8300_cards + 1; + pr_debug("em8300-%d: registered dsp %i for device %i\n", em->card_nr, em->dsp_num >> 4 & 0x0f, em8300_cards); } #endif @@ -719,8 +851,19 @@ em8300_enable_card(em); #endif - em8300_cards++; + em8300[em8300_cards++] = em; return 0; + +irq_error: +#ifdef CONFIG_MTRR + if (em->mtrr_reg) + mtrr_del(em->mtrr_reg, em->adr, em->memsize); +#endif + iounmap(em->mem); + +mem_free: + kfree(em); + return result; } static void __devexit em8300_remove(struct pci_dev *pci) @@ -736,8 +879,7 @@ #endif #if defined(CONFIG_SOUND) || defined(CONFIG_SOUND_MODULE) - if (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS) - unregister_sound_dsp(em->dsp_num); + unregister_sound_dsp(em->dsp_num); #endif em8300_unregister_card(em); @@ -777,7 +919,7 @@ em8300_params_init(); - //memset(&em8300, 0, sizeof(em8300) * EM8300_MAX); + /*memset(&em8300, 0, sizeof(em8300) * EM8300_MAX);*/ #if defined(CONFIG_SOUND) || defined(CONFIG_SOUND_MODULE) memset(&dsp_num_table, 0, sizeof(dsp_num_table)); #endif @@ -790,20 +932,19 @@ err = -ENODEV; goto err_chrdev; } - } - else { + } else { int m = register_chrdev(major, EM8300_LOGNAME, &em8300_fops); if (m > 0) { major = m; - } - else { - printk(KERN_ERR "em8300: unable to get any majo\n"); + } else { + printk(KERN_ERR "em8300: unable to get any major\n"); err = -ENODEV; goto err_chrdev; } } - if ((err = pci_register_driver(&em8300_driver)) < 0) { + err = pci_register_driver(&em8300_driver); + if (err < 0) { printk(KERN_ERR "em8300: unable to register PCI driver\n"); goto err_init; } diff -Nru em8300-0.16.4/modules/em8300_misc.c em8300-0.18.0/modules/em8300_misc.c --- em8300-0.16.4/modules/em8300_misc.c 2006-04-10 23:31:14.000000000 +0100 +++ em8300-0.18.0/modules/em8300_misc.c 2010-06-28 18:12:31.000000000 +0100 @@ -1,3 +1,23 @@ +/* + * em8300_misc.c + * + * Copyright (C) 2000-2001 Henrik Johansson + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + #define __NO_VERSION__ #include @@ -19,6 +39,7 @@ #include "em8300_reg.h" #include +#include "em8300_driver.h" #include diff -Nru em8300-0.16.4/modules/em8300_models.c em8300-0.18.0/modules/em8300_models.c --- em8300-0.16.4/modules/em8300_models.c 1970-01-01 01:00:00.000000000 +0100 +++ em8300-0.18.0/modules/em8300_models.c 2010-06-28 18:12:31.000000000 +0100 @@ -0,0 +1,149 @@ +/* em8300_models.c -- identify and configure known models of em8300-based cards + * Copyright (C) 2007,2008 Nicolas Boullis + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + +#include "em8300_models.h" +#include "em8300_eeprom.h" +#include "em8300_reg.h" +#include +#include + +const struct em8300_model_s known_models[] = { + { + .name = "unknown", + .module = { .name=NULL, .addr=0 } + }, + { + .name = "DXR3 with BT865", + .module = { .name="bt865", .addr=0x45 }, + .em8300_config = { + .use_bt865 = 1, + .dicom_other_pal = 1, + .dicom_fix = 1, + .dicom_control = 1, + .bt865_ucode_timeout = 1, + .activate_loopback = 0, + }, + .bt865_config = {} + }, + { + .name = "DXR3 with ADV7175A", + .module = { .name="adv717x", .addr=0x6a }, + .em8300_config = { + .use_bt865 = 0, + .dicom_other_pal = 0, + .dicom_fix = 1, + .dicom_control = 0, + .bt865_ucode_timeout = 0, + .activate_loopback = 0, + }, + .adv717x_config = { + .pixelport_16bit = 1, + .pixelport_other_pal = 0, + .pixeldata_adjust_ntsc = 1, + .pixeldata_adjust_pal = 1, + } + }, + { + .name = "Hollywood+ type 1", + .module = { .name="adv717x", .addr=0x6a }, + .em8300_config = { + .use_bt865 = 0, + .dicom_other_pal = 0, + .dicom_fix = 1, + .dicom_control = 0, + .bt865_ucode_timeout = 0, + .activate_loopback = 0, + }, + .adv717x_config = { + .pixelport_16bit = 1, + .pixelport_other_pal = 0, + .pixeldata_adjust_ntsc = 1, + .pixeldata_adjust_pal = 1, + } + }, + { + .name = "Hollywood+ type 2", + .module = { .name="adv717x", .addr=0x6a }, + .em8300_config = { + .use_bt865 = 0, + .dicom_other_pal = 0, + .dicom_fix = 0, + .dicom_control = 1, + .bt865_ucode_timeout = 0, + .activate_loopback = 0, + }, + .adv717x_config = { + .pixelport_16bit = 0, + .pixelport_other_pal = 0, + .pixeldata_adjust_ntsc = 1, + .pixeldata_adjust_pal = 1, + } + }, +}; + +const unsigned known_models_number = sizeof(known_models) / sizeof(known_models[0]); + +int identify_model(struct em8300_s *em) +{ + u8 *buf; + int ret; + int i; + + buf = kmalloc(256, GFP_KERNEL); + if (buf == NULL) + return -ENOMEM; + + ret = em8300_eeprom_read(em, buf); + if (ret < 0) + goto cleanup; + + for (i = 0x40; i < 0x50; i++) + if (buf[i] != 0xff) + break; + + if (i < 0x50) { + /* The board is a Hollywood+ one */ + switch (read_register(0x1c08)) { + case 0x01: + ret = 3; /* type 1 */ + break; + case 0x09: + ret = 4; /* type 2 */ + break; + default: + ret = 0; /* unknown */ + } + } else { + /* The board is a DXR3 one */ + switch (read_register(0x1c08)) { + case 0x01: + ret = 2; /* with ADV7175A */ + break; + case 0x41: + ret = 1; /* with DXR3 */ + break; + default: + ret = 0; /* unknown */ + } + } + + cleanup: + kfree(buf); + + return ret; +} diff -Nru em8300-0.16.4/modules/em8300_models.h em8300-0.18.0/modules/em8300_models.h --- em8300-0.16.4/modules/em8300_models.h 1970-01-01 01:00:00.000000000 +0100 +++ em8300-0.18.0/modules/em8300_models.h 2010-06-28 18:12:31.000000000 +0100 @@ -0,0 +1,42 @@ +/* $Id$ + * + * em8300_models.h -- identify and configure known models of em8300-based cards + * Copyright (C) 2007 Nicolas Boullis + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + +#ifndef _EM8300_MODELS_H +#define _EM8300_MODELS_H + +#include +#include +#include "em8300_driver.h" + +struct em8300_model_s { + char const *name; + struct { char const *name; unsigned short addr; } module; + struct em8300_model_config_s em8300_config; + struct adv717x_model_config_s adv717x_config; + struct bt865_model_config_s bt865_config; +}; + +extern const struct em8300_model_s known_models[]; + +extern const unsigned known_models_number; + +extern int identify_model(struct em8300_s *em); + +#endif /* _EM8300_MODELS_H */ diff -Nru em8300-0.16.4/modules/em8300_params.c em8300-0.18.0/modules/em8300_params.c --- em8300-0.16.4/modules/em8300_params.c 2007-03-06 22:54:02.000000000 +0000 +++ em8300-0.18.0/modules/em8300_params.c 2010-06-28 18:12:31.000000000 +0100 @@ -1,4 +1,4 @@ -/* $Id: em8300_params.c,v 1.2 2007/03/06 22:54:02 nboullis Exp $ +/* $Id$ * * em8300_params.c -- parameters for the em8300 driver * Copyright (C) 2007 Nicolas Boullis @@ -20,10 +20,13 @@ #include "em8300_params.h" #include +#include "em8300_driver.h" #include #include +#include +#include "em8300_compat24.h" -int use_bt865[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = 0 }; +int use_bt865[EM8300_MAX] = { [0 ... EM8300_MAX-1] = -1 }; #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) MODULE_PARM(use_bt865, "1-" __MODULE_STRING(EM8300_MAX) "i"); #else @@ -34,11 +37,7 @@ /* * Module params by Jonas Birmé (birme@jpl.nu) */ -#ifdef CONFIG_EM8300_DICOMPAL -int dicom_other_pal[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = 1 }; -#else -int dicom_other_pal[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = 0 }; -#endif +int dicom_other_pal[EM8300_MAX] = { [0 ... EM8300_MAX-1] = -1 }; #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) MODULE_PARM(dicom_other_pal, "1-" __MODULE_STRING(EM8300_MAX) "i"); #else @@ -46,11 +45,7 @@ #endif MODULE_PARM_DESC(dicom_other_pal, "If this is set, then some internal register values are swapped for PAL and NTSC. Defaults to 1."); -#ifdef CONFIG_EM8300_DICOMFIX -int dicom_fix[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = 1 }; -#else -int dicom_fix[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = 0 }; -#endif +int dicom_fix[EM8300_MAX] = { [0 ... EM8300_MAX-1] = -1 }; #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) MODULE_PARM(dicom_fix, "1-" __MODULE_STRING(EM8300_MAX) "i"); #else @@ -58,11 +53,7 @@ #endif MODULE_PARM_DESC(dicom_fix, "If this is set then some internal register values are changed. Fixes green screen problems for some. Defaults to 1."); -#ifdef CONFIG_EM8300_DICOMCTRL -int dicom_control[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = 1 }; -#else -int dicom_control[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = 0 }; -#endif +int dicom_control[EM8300_MAX] = { [0 ... EM8300_MAX-1] = -1 }; #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) MODULE_PARM(dicom_control, "1-" __MODULE_STRING(EM8300_MAX) "i"); #else @@ -70,11 +61,7 @@ #endif MODULE_PARM_DESC(dicom_control, "If this is set then some internal register values are changed. Fixes green screen problems for some. Defaults to 1."); -#ifdef CONFIG_EM8300_UCODETIMEOUT -int bt865_ucode_timeout[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = 1 }; -#else -int bt865_ucode_timeout[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = 0 }; -#endif +int bt865_ucode_timeout[EM8300_MAX] = { [0 ... EM8300_MAX-1] = -1 }; #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) MODULE_PARM(bt865_ucode_timeout, "1-" __MODULE_STRING(EM8300_MAX) "i"); #else @@ -82,11 +69,7 @@ #endif MODULE_PARM_DESC(bt865_ucode_timeout, "Set this to 1 if you have a bt865 and get timeouts when uploading the microcode. Defaults to 0."); -#ifdef CONFIG_EM8300_LOOPBACK -int activate_loopback[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = 1 }; -#else -int activate_loopback[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = 0 }; -#endif +int activate_loopback[EM8300_MAX] = { [0 ... EM8300_MAX-1] = -1 }; #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) MODULE_PARM(activate_loopback, "1-" __MODULE_STRING(EM8300_MAX) "i"); #else @@ -94,6 +77,14 @@ #endif MODULE_PARM_DESC(activate_loopback, "If you lose video after loading the modules or uploading the microcode set this to 1. Defaults to 0."); +int card_model[EM8300_MAX] = { [0 ... EM8300_MAX-1] = -1 }; +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) +MODULE_PARM(card_model, "1-" __MODULE_STRING(EM8300_MAX) "i"); +#else +module_param_array(card_model, int, NULL, 0444); +#endif +MODULE_PARM_DESC(card_model, "Model number for the em8300-based card. -1 (default) means automatic detection; 0 means unknown model with manual setup."); + int major = EM8300_MAJOR; #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) MODULE_PARM(major, "i"); @@ -112,21 +103,22 @@ }; #if defined(CONFIG_SND) || defined(CONFIG_SND_MODULE) -audio_driver_t audio_driver_nr[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = AUDIO_DRIVER_ALSA }; +audio_driver_t audio_driver_nr[EM8300_MAX] = { [0 ... EM8300_MAX-1] = AUDIO_DRIVER_ALSA }; #elif defined(CONFIG_SOUND) || defined(CONFIG_SOUND_MODULE) -audio_driver_t audio_driver_nr[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = AUDIO_DRIVER_OSS }; +audio_driver_t audio_driver_nr[EM8300_MAX] = { [0 ... EM8300_MAX-1] = AUDIO_DRIVER_OSS }; #else -audio_driver_t audio_driver_nr[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = AUDIO_DRIVER_OSSLIKE }; +audio_driver_t audio_driver_nr[EM8300_MAX] = { [0 ... EM8300_MAX-1] = AUDIO_DRIVER_OSSLIKE }; #endif #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) -static char *audio_driver[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = NULL }; +static char *audio_driver[EM8300_MAX] = { [0 ... EM8300_MAX-1] = NULL }; MODULE_PARM(audio_driver, "1-" __MODULE_STRING(EM8300_MAX) "s"); #else static int param_set_audio_driver_t(const char *val, struct kernel_param *kp) { + pr_warning("em8300: %s: deprecated module parameter: all audio interfaces are now enabled\n", kp->name); if (val) { int i; - for (i=0; i < AUDIO_DRIVER_MAX; i++) + for (i = 0; i < AUDIO_DRIVER_MAX; i++) if (strcmp(val, audio_driver_name[i]) == 0) { *(audio_driver_t *)kp->arg = i; return 0; @@ -144,10 +136,10 @@ module_param_array_named(audio_driver, audio_driver_nr, audio_driver_t, NULL, 0444); #endif -MODULE_PARM_DESC(audio_driver, "The audio driver to use (none, osslike, oss, or alsa)."); +MODULE_PARM_DESC(audio_driver, "[DEPRECATED] The audio driver to use (none, osslike, oss, or alsa)."); #if defined(CONFIG_SOUND) || defined(CONFIG_SOUND_MODULE) -int dsp_num[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = -1 }; +int dsp_num[EM8300_MAX] = { [0 ... EM8300_MAX-1] = -1 }; #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) MODULE_PARM(dsp_num, "1-" __MODULE_STRING(EM8300_MAX) "i"); #else @@ -157,7 +149,7 @@ #endif #if defined(CONFIG_SND) || defined(CONFIG_SND_MODULE) -char *alsa_id[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = NULL }; +char *alsa_id[EM8300_MAX] = { [0 ... EM8300_MAX-1] = NULL }; #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) MODULE_PARM(alsa_id, "1-" __MODULE_STRING(EM8300_MAX) "s"); #else @@ -165,7 +157,7 @@ #endif MODULE_PARM_DESC(alsa_id, "ID string for the audio part of the EM8300 chip (ALSA)."); -int alsa_index[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = -1 }; +int alsa_index[EM8300_MAX] = { [0 ... EM8300_MAX-1] = -1 }; #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) MODULE_PARM(alsa_index, "1-" __MODULE_STRING(EM8300_MAX) "i"); #else @@ -174,7 +166,7 @@ MODULE_PARM_DESC(alsa_index, "Index value for the audio part of the EM8300 chip (ALSA)."); #endif -int stop_video[EM8300_MAX] = { [ 0 ... EM8300_MAX-1 ] = 0 }; +int stop_video[EM8300_MAX] = { [0 ... EM8300_MAX-1] = 0 }; #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,10) MODULE_PARM(stop_video, "1-" __MODULE_STRING(EM8300_MAX) "i"); #else @@ -187,10 +179,11 @@ void em8300_params_init(void) { int i; - for (i=0; i < EM8300_MAX; i++) + for (i = 0; i < EM8300_MAX; i++) if ((audio_driver[i]) && (audio_driver[i][0])) { int j; - for (j=0; j < AUDIO_DRIVER_MAX; j++) + pr_warning("em8300: audio_driver: deprecated module parameter: all audio interfaces are now enabled\n"); + for (j = 0; j < AUDIO_DRIVER_MAX; j++) if (strcmp(audio_driver[i], audio_driver_name[j]) == 0) { audio_driver_nr[i] = j; break; diff -Nru em8300-0.16.4/modules/em8300_params.h em8300-0.18.0/modules/em8300_params.h --- em8300-0.16.4/modules/em8300_params.h 2007-03-02 23:00:35.000000000 +0000 +++ em8300-0.18.0/modules/em8300_params.h 2010-06-28 18:12:31.000000000 +0100 @@ -1,4 +1,4 @@ -/* $Id: em8300_params.h,v 1.1 2007/03/02 23:00:35 nboullis Exp $ +/* $Id$ * * em8300_params.h -- parameters for the em8300 driver * Copyright (C) 2007 Nicolas Boullis @@ -34,6 +34,8 @@ extern int bt865_ucode_timeout[]; extern int activate_loopback[]; +extern int card_model[]; + /* Audio driver used by the driver: - OSS means OSS-compatible /dev/em8300_ma + /dev/dsp (old behavior) - OSSLIKE means OSS-compatible /dev/em8300_ma only diff -Nru em8300-0.16.4/modules/em8300_procfs.c em8300-0.18.0/modules/em8300_procfs.c --- em8300-0.16.4/modules/em8300_procfs.c 2007-03-06 23:04:32.000000000 +0000 +++ em8300-0.18.0/modules/em8300_procfs.c 2010-06-28 18:12:31.000000000 +0100 @@ -24,6 +24,8 @@ #include "em8300_reg.h" #include "em8300_eeprom.h" +#include "em8300_version.h" + #ifdef CONFIG_PROC_FS #ifndef EM8300_PROCFS_DIR @@ -152,7 +154,9 @@ if (proc) { proc->data = (void *) em; proc->read_proc = em8300_proc_read; +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30) proc->owner = THIS_MODULE; +#endif } } } @@ -169,7 +173,7 @@ static void em8300_procfs_unregister_driver(void) { if (em8300_proc) { - remove_proc_entry(EM8300_PROCFS_DIR, &proc_root); + remove_proc_entry(EM8300_PROCFS_DIR, NULL); } } @@ -177,12 +181,13 @@ { em8300_proc = create_proc_entry(EM8300_PROCFS_DIR, S_IFDIR | S_IRUGO | S_IXUGO, - &proc_root); - if (em8300_proc) { - em8300_proc->owner = THIS_MODULE; - } else { + NULL); + if (!em8300_proc) printk(KERN_ERR "em8300: unable to register proc entry!\n"); - } +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30) + else + em8300_proc->owner = THIS_MODULE; +#endif } struct em8300_registrar_s em8300_procfs_registrar = diff -Nru em8300-0.16.4/modules/em8300_procfs.h em8300-0.18.0/modules/em8300_procfs.h --- em8300-0.16.4/modules/em8300_procfs.h 2006-04-10 23:31:14.000000000 +0100 +++ em8300-0.18.0/modules/em8300_procfs.h 2010-06-28 18:12:31.000000000 +0100 @@ -1,4 +1,4 @@ -/* $Id: em8300_procfs.h,v 1.3 2006/04/10 22:31:14 nboullis Exp $ +/* $Id$ * * em8300_procfs.h -- interface to the procfs filesystem * Copyright (C) 2004 Nicolas Boullis diff -Nru em8300-0.16.4/modules/em8300_reg.c em8300-0.18.0/modules/em8300_reg.c --- em8300-0.16.4/modules/em8300_reg.c 2002-01-12 20:49:55.000000000 +0000 +++ em8300-0.18.0/modules/em8300_reg.c 2010-06-28 18:12:31.000000000 +0100 @@ -1,3 +1,23 @@ +/* + * em8300_reg.c + * + * Copyright (C) 2000 Henrik Johansson + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + char *ucodereg_names[] = { "MV_Command", "MV_Status", diff -Nru em8300-0.16.4/modules/em8300_reg.h em8300-0.18.0/modules/em8300_reg.h --- em8300-0.16.4/modules/em8300_reg.h 2003-12-05 21:31:56.000000000 +0000 +++ em8300-0.18.0/modules/em8300_reg.h 2010-06-28 18:12:31.000000000 +0100 @@ -1,15 +1,35 @@ /* + * em8300_reg.h + * + * Copyright (C) 2000 Henrik Johansson + * (C) 2001-2002 Rick Haines + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + +/* Register access macros */ - -#define register_ptr(a) &em->mem[a] -#define ucregister_ptr(a) &em->mem[em->ucode_regs[a]] -#define ucregister(a) em->ucode_regs[a] - -#define write_register(a,v) writel(v, &em->mem[a]) -#define read_register(a) readl(&em->mem[a]) -#define write_ucregister(a,v) writel(v, &em->mem[em->ucode_regs[a]]) -#define read_ucregister(a) readl(&em->mem[em->ucode_regs[a]]) +#define register_ptr(reg) &em->mem[reg] +#define ucregister_ptr(reg) &em->mem[em->ucode_regs[reg]] +#define ucregister(reg) em->ucode_regs[reg] + +#define write_register(reg, v) writel(v, &em->mem[reg]) +#define read_register(reg) readl(&em->mem[reg]) +#define write_ucregister(reg,v) writel(v, &em->mem[em->ucode_regs[reg]]) +#define read_ucregister(reg) readl(&em->mem[em->ucode_regs[reg]]) /* EM8300 fixed registers diff -Nru em8300-0.16.4/modules/em8300_registration.c em8300-0.18.0/modules/em8300_registration.c --- em8300-0.16.4/modules/em8300_registration.c 2006-04-10 23:31:14.000000000 +0100 +++ em8300-0.18.0/modules/em8300_registration.c 2010-06-28 18:12:31.000000000 +0100 @@ -1,4 +1,4 @@ -/* $Id: em8300_registration.c,v 1.7 2006/04/10 22:31:14 nboullis Exp $ +/* $Id$ * * em8300_registration.c -- common interface for everything that needs * to be registered diff -Nru em8300-0.16.4/modules/em8300_registration.h em8300-0.18.0/modules/em8300_registration.h --- em8300-0.16.4/modules/em8300_registration.h 2006-11-16 22:52:45.000000000 +0000 +++ em8300-0.18.0/modules/em8300_registration.h 2010-06-28 18:12:31.000000000 +0100 @@ -1,4 +1,4 @@ -/* $Id: em8300_registration.h,v 1.5 2006/11/16 22:52:45 nboullis Exp $ +/* $Id$ * * em8300_registration.h -- common interface for everything that needs * to be registered @@ -28,6 +28,7 @@ #include #include #include +#include "em8300_driver.h" struct em8300_registrar_s { void (*register_driver)(void); diff -Nru em8300-0.16.4/modules/em8300_spu.c em8300-0.18.0/modules/em8300_spu.c --- em8300-0.16.4/modules/em8300_spu.c 2005-05-24 00:44:12.000000000 +0100 +++ em8300-0.18.0/modules/em8300_spu.c 2010-06-28 18:12:31.000000000 +0100 @@ -1,6 +1,26 @@ /* - * Copyright (C) 2005 Jon Burgess + * em8300_misc.c + * + * Copyright (C) 2000 Henrik Johansson + * (C) 2001 Eduard Hasenleithner + * (C) 2003-2005 Jon Burgess + * (C) 2003-2005 Nicolas Boullis + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + #define __NO_VERSION__ #include @@ -23,6 +43,8 @@ #include "em8300_reg.h" #include +#include "em8300_driver.h" +#include #include "em8300_fifo.h" #include "em8300_compat24.h" @@ -39,7 +61,7 @@ palette = ucregister(SP_Palette); - for (i=0; i < 16; i++) { + for (i = 0; i < 16; i++) { write_register(palette + i * 2, pal[i] >> 16); write_register(palette + i * 2 + 1, pal[i] & 0xffff); } @@ -78,7 +100,7 @@ } } -ssize_t em8300_spu_write(struct em8300_s *em, const char * buf, size_t count, loff_t *ppos) +ssize_t em8300_spu_write(struct em8300_s *em, const char *buf, size_t count, loff_t *ppos) { int flags = 0; long ret; @@ -92,10 +114,9 @@ ret = wait_event_interruptible_timeout(em->sp_ptsfifo_wait, (read_register(ptsfifoptr + 1) & 1) == 0, HZ); if (ret == 0) { - printk(KERN_ERR "em8300_spu.c: SPU Fifo timeout\n"); + printk(KERN_ERR "em8300-%d: SPU Fifo timeout\n", em->card_nr); return -EINTR; - } - else if (ret < 0) + } else if (ret < 0) return ret; write_register(ptsfifoptr + 0, em->sp_pts >> 16); @@ -137,7 +158,7 @@ em8300_spu_button(em, 0); break; } - if (copy_from_user(&btn, (void*) arg, sizeof(btn))) + if (copy_from_user(&btn, (void *) arg, sizeof(btn))) return -EFAULT; em8300_spu_button(em, &btn); } diff -Nru em8300-0.16.4/modules/em8300_sysfs.c em8300-0.18.0/modules/em8300_sysfs.c --- em8300-0.16.4/modules/em8300_sysfs.c 2007-12-10 21:45:13.000000000 +0000 +++ em8300-0.18.0/modules/em8300_sysfs.c 2010-06-28 18:12:31.000000000 +0100 @@ -1,8 +1,8 @@ -/* $Id: em8300_sysfs.c,v 1.17 2007/12/10 21:45:13 nboullis Exp $ +/* $Id$ * * em8300_sysfs.c -- interface to the sysfs filesystem * Copyright (C) 2004 Eric Donohue - * Copyright (C) 2004,2006 Nicolas Boullis + * Copyright (C) 2004,2006,2008 Nicolas Boullis * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -29,8 +29,11 @@ #include "em8300_params.h" #include "em8300_eeprom.h" #include "em8300_reg.h" +#include "em8300_models.h" #include "encoder.h" +#include "em8300_version.h" + extern struct pci_driver em8300_driver; static ssize_t show_version(struct device_driver *dd, char *buf) @@ -51,6 +54,18 @@ char *encoder_name = NULL; u8 *tmp; int i; + int model; + + len += sprintf(buf + len, + "\n**** Card model ****\n\n"); + +/* Identified model */ + model = identify_model(em); + if (model < 0) + model = 0; + len += sprintf(buf + len, + "Identified model: %s\n", + known_models[model].name); len += sprintf(buf + len, "\n**** Detected data ****\n\n"); @@ -80,8 +95,7 @@ "Video encoder: %s at address 0x%02x on %s\n", encoder_name, em->encoder->addr, em->encoder->adapter->name); - } - else { + } else { len += sprintf(buf + len, "No known video encoder found.\n"); } @@ -90,7 +104,7 @@ if ((tmp = kmalloc(256, GFP_KERNEL)) != NULL) { if (!em8300_eeprom_read(em, tmp)) { len += sprintf(buf + len, "EEPROM data:"); - for (i=0; i<256; i++) { + for (i = 0; i < 256; i++) { if (i%32 == 0) len += sprintf(buf + len, "\n\t"); len += sprintf(buf + len, "%02x", tmp[i]); @@ -101,7 +115,7 @@ } if (em->eeprom_checksum) { len += sprintf(buf + len, "EEPROM checksum: "); - for (i=0; i<16; i++) { + for (i = 0; i < 16; i++) { len += sprintf(buf + len, "%02x", em->eeprom_checksum[i]); } @@ -121,69 +135,51 @@ "em8300.ko options:\n"); len += sprintf(buf + len, ((em->chip_revision == 2) - &&((0x60 & read_register(0x1c08)) == 0x60)) ? + && ((0x60 & read_register(0x1c08)) == 0x60)) ? " use_bt865=%d\n" : " [use_bt865=%d]\n", - use_bt865[em->card_nr]); + em->config.model.use_bt865); len += sprintf(buf + len, " dicom_other_pal=%d\n", - dicom_other_pal[em->card_nr]); + em->config.model.dicom_other_pal); len += sprintf(buf + len, (em->encoder_type != ENCODER_BT865) ? " dicom_fix=%d\n" : " [dicom_fix=%d]\n", - dicom_fix[em->card_nr]); + em->config.model.dicom_fix); len += sprintf(buf + len, (em->encoder_type != ENCODER_BT865) ? " dicom_control=%d\n" : " [dicom_control=%d]\n", - dicom_control[em->card_nr]); + em->config.model.dicom_control); len += sprintf(buf + len, ((em->encoder_type != ENCODER_ADV7170) - &&(em->encoder_type != ENCODER_ADV7175)) ? + && (em->encoder_type != ENCODER_ADV7175)) ? " bt865_ucode_timeout=%d\n" : " [bt865_ucode_timeout=%d]\n", - bt865_ucode_timeout[em->card_nr]); + em->config.model.bt865_ucode_timeout); len += sprintf(buf + len, " activate_loopback=%d\n", - activate_loopback[em->card_nr]); + em->config.model.activate_loopback); switch (em->encoder_type) { case ENCODER_ADV7170: case ENCODER_ADV7175: { - struct getconfig_s *data; - data = kmalloc(sizeof(struct getconfig_s), GFP_KERNEL); - if (!data) { - len += sprintf(buf + len, - "Could not allocate memory to get the configuration for the adv717x module.\n"); - break; - } - data->card_nr = em->card_nr; - if (em->encoder->driver->command(em->encoder, - ENCODER_CMD_GETCONFIG, - (void *) data) != 0) { - kfree(data); - len += sprintf(buf + len, - "*The adv717x.ko module is too old to report its configuration.*\n" - "*Please rebuild and load the new module.*\n"); - break; - } len += sprintf(buf + len, "adv717x.ko options:\n"); len += sprintf(buf + len, " pixelport_16bit=%d\n", - data->config[0]); + em->config.adv717x_model.pixelport_16bit); len += sprintf(buf + len, " pixelport_other_pal=%d\n", - data->config[1]); + em->config.adv717x_model.pixelport_other_pal); len += sprintf(buf + len, " pixeldata_adjust_ntsc=%d\n", - data->config[2]); + em->config.adv717x_model.pixeldata_adjust_ntsc); len += sprintf(buf + len, " pixeldata_adjust_pal=%d\n", - data->config[3]); - kfree(data); + em->config.adv717x_model.pixeldata_adjust_pal); break; } } @@ -215,36 +211,36 @@ " [ ] breaks something (please describe problem)\n" " [ ] was not tried\n" "\n", - ((em->chip_revision == 2)&&((0x60 & read_register(0x1c08)) == 0x60))?"[important] ":"", - use_bt865[em->card_nr]?"off":"on"); - if ((em->encoder_type != ENCODER_ADV7170)&&(em->encoder_type != ENCODER_ADV7175)) + ((em->chip_revision == 2) && ((0x60 & read_register(0x1c08)) == 0x60)) ? "[important] " : "", + use_bt865[em->card_nr] ? "off" : "on"); + if ((em->encoder_type != ENCODER_ADV7170) && (em->encoder_type != ENCODER_ADV7175)) len += sprintf(buf + len, "changing the bt865_ucode_timeout option (bt865_ucode_timeout=%s)\n" " [ ] makes no difference\n" " [ ] breaks something (please describe problem)\n" " [ ] was not tried\n" - "\n", bt865_ucode_timeout[em->card_nr]?"off":"on"); + "\n", bt865_ucode_timeout[em->card_nr] ? "off" : "on"); len += sprintf(buf + len, "changing the activate_loopback option (activate_loopback=%s)\n" "(relevant even if you only use video out)\n" " [ ] makes no difference\n" " [ ] breaks something (please describe problem)\n" " [ ] was not tried\n" - "\n", activate_loopback[em->card_nr]?"off":"on"); + "\n", activate_loopback[em->card_nr] ? "off" : "on"); len += sprintf(buf + len, "changing the dicom_other_pal option (dicom_other_pal=%s)\n" "(only relevant for PAL mode)\n" " [ ] makes no difference\n" " [ ] breaks something (please describe problem)\n" " [ ] was not tried\n" - "\n", dicom_other_pal[em->card_nr]?"off":"on"); + "\n", dicom_other_pal[em->card_nr] ? "off" : "on"); if (em->encoder_type != ENCODER_BT865) len += sprintf(buf + len, "[important] changing the dicom_fix option (dicom_fix=%s)\n" " [ ] makes no difference\n" " [ ] breaks something (please describe problem)\n" " [ ] was not tried\n" - "\n", dicom_fix[em->card_nr]?"off":"on"); + "\n", dicom_fix[em->card_nr] ? "off" : "on"); len += sprintf(buf + len, "[optional] card model:\n" "(something like \"CT7260\" for DXR3 boards or " @@ -296,7 +292,10 @@ static void em8300_sysfs_postregister_driver(void) { - driver_create_file(&em8300_driver.driver, &driver_attr_version); + int result = driver_create_file(&em8300_driver.driver, &driver_attr_version); + if (result != 0) { + printk(KERN_ERR "em8300: driver_create_file failed with error %d\n", result); + } } static void em8300_sysfs_register_card(struct em8300_s *em) @@ -316,8 +315,7 @@ driver_remove_file(&em8300_driver.driver, &driver_attr_version); } -struct em8300_registrar_s em8300_sysfs_registrar = -{ +struct em8300_registrar_s em8300_sysfs_registrar = { .register_driver = NULL, .postregister_driver = &em8300_sysfs_postregister_driver, .register_card = &em8300_sysfs_register_card, @@ -333,8 +331,7 @@ #else /* LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,46) */ -struct em8300_registrar_s em8300_sysfs_registrar = -{ +struct em8300_registrar_s em8300_sysfs_registrar = { .register_driver = NULL, .postregister_driver = NULL, .register_card = NULL, diff -Nru em8300-0.16.4/modules/em8300_sysfs.h em8300-0.18.0/modules/em8300_sysfs.h --- em8300-0.16.4/modules/em8300_sysfs.h 2006-04-10 23:31:14.000000000 +0100 +++ em8300-0.18.0/modules/em8300_sysfs.h 2010-06-28 18:12:31.000000000 +0100 @@ -1,4 +1,4 @@ -/* $Id: em8300_sysfs.h,v 1.3 2006/04/10 22:31:14 nboullis Exp $ +/* $Id$ * * em8300_sysfs.h -- interface to the sysfs filesystem * Copyright (C) 2004 Eric Donohue Binary files /tmp/pgjTCOCI7E/em8300-0.16.4/modules/em8300.uc and /tmp/7RiiF0liEX/em8300-0.18.0/modules/em8300.uc differ diff -Nru em8300-0.16.4/modules/em8300_ucode.c em8300-0.18.0/modules/em8300_ucode.c --- em8300-0.16.4/modules/em8300_ucode.c 2007-03-02 23:00:35.000000000 +0000 +++ em8300-0.18.0/modules/em8300_ucode.c 2010-06-28 18:12:31.000000000 +0100 @@ -1,3 +1,25 @@ +/* + * em8300_ucode.c + * + * Copyright (C) 2000-2001 Henrik Johansson + * (C) 2000 Jeremy T. Braun + * (C) 2003-2007 Nicolas Boullis + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + #define __NO_VERSION__ #include @@ -19,6 +41,7 @@ #include "em8300_reg.h" #include +#include "em8300_driver.h" #include @@ -31,37 +54,37 @@ switch (blocktype) { case 4: offset *= 2; - writel(offset & 0xffff, &em->mem[0x1c11]); - writel((offset >> 16) & 0xffff, &em->mem[0x1c12]); - writel(len, &em->mem[0x1c13]); - writel(len, &em->mem[0x1c14]); - writel(0, &em->mem[0x1c15]); - writel(1, &em->mem[0x1c16]); - writel(1, &em->mem[0x1c17]); - writel(offset & 0xffff, &em->mem[0x1c18]); - writel((offset >> 16) & 0xffff, &em->mem[0x1c19]); + write_register(0x1c11, offset & 0xffff); + write_register(0x1c12, (offset >> 16) & 0xffff); + write_register(0x1c13, len); + write_register(0x1c14, len); + write_register(0x1c15, 0); + write_register(0x1c16, 1); + write_register(0x1c17, 1); + write_register(0x1c18, offset & 0xffff); + write_register(0x1c19, (offset >> 16) & 0xffff); - writel(1, &em->mem[0x1c1a]); + write_register(0x1c1a, 1); for (i = 0; i < len; i += 4) { val = (buf[i + 2] << 24) | (buf[i + 3] << 16) | (buf[i] << 8) | buf[i + 1]; - writel(val, &em->mem[0x11800]); + write_register(0x11800, val); } - if (em8300_waitfor(em, 0x1c1a, 0, 1)) { + if (em8300_waitfor(em, 0x1c1a, 0, 1)) return -ETIME; - } + break; case 1: for (i = 0; i < len; i += 4) { val = (buf[i + 1] << 24) | (buf[i] << 16) | (buf[i + 3] << 8) | buf[i + 2]; - writel(val, &em->mem[offset / 2 + i / 4]); + write_register(offset / 2 + i / 4, val); } break; case 2: for (i = 0; i < len; i += 2) { val = (buf[i + 1] << 8) | buf[i]; - writel(val, &em->mem[0x1000 + offset + i / 2]); + write_register(0x1000 + offset + i / 2, val); } break; } @@ -72,44 +95,44 @@ static int upload_prepare(struct em8300_s *em) { - writel(0x1ff00, &em->mem[0x30000]); - writel(0x123, &em->mem[0x1f50]); + write_register(0x30000, 0x1ff00); + write_register(0x1f50, 0x123); - writel(0x0, &em->mem[0x20001]); - writel(0x2, &em->mem[0x2000]); - writel(0x0, &em->mem[0x2000]); - writel(0xffff, &em->mem[0x1ff8]); - writel(0xffff, &em->mem[0x1ff9]); - writel(0xff00, &em->mem[0x1ff8]); - writel(0xff00, &em->mem[0x1ff9]); + write_register(0x20001, 0x0); + write_register(0x2000, 0x2); + write_register(0x2000, 0x0); + write_register(0x1ff8, 0xffff); + write_register(0x1ff9, 0xffff); + write_register(0x1ff8, 0xff00); + write_register(0x1ff9, 0xff00); if (em->chip_revision == 1) { - writel(0x8c7, &em->mem[0x1c04]); - writel(0x80, &em->mem[0x1c00]); - writel(0xc7, &em->mem[0x1c04]); + write_register(0x1c04, 0x8c7); + write_register(0x1c00, 0x80); + write_register(0x1c04, 0xc7); } - writel(em->var_ucode_reg3, &em->mem[0x1c04]); - writel(em->var_ucode_reg1, &em->mem[0x1c00]); - writel(em->var_ucode_reg2, &em->mem[0x1c04]); + write_register(0x1c04, em->var_ucode_reg3); + write_register(0x1c00, em->var_ucode_reg1); + write_register(0x1c04, em->var_ucode_reg2); /* em->mem[0x1c08]; */ - writel(0x8, &em->mem[0x1c10]); - writel(0x8, &em->mem[0x1c20]); - writel(0x8, &em->mem[0x1c30]); - writel(0x8, &em->mem[0x1c40]); - writel(0x8, &em->mem[0x1c50]); - writel(0x8, &em->mem[0x1c60]); - writel(0x8, &em->mem[0x1c70]); - writel(0x8, &em->mem[0x1c80]); - writel(0x10, &em->mem[0x1c90]); - writel(0x10, &em->mem[0x1ca0]); - writel(0x8, &em->mem[0x1cb0]); - writel(0x8, &em->mem[0x1cc0]); - writel(0x8, &em->mem[0x1cd0]); - writel(0x8, &em->mem[0x1ce0]); - writel(0x5555, &em->mem[0x1c01]); - writel(0x55a, &em->mem[0x1c02]); - writel(0x0, &em->mem[0x1c03]); + write_register(0x1c10, 0x8); + write_register(0x1c20, 0x8); + write_register(0x1c30, 0x8); + write_register(0x1c40, 0x8); + write_register(0x1c50, 0x8); + write_register(0x1c60, 0x8); + write_register(0x1c70, 0x8); + write_register(0x1c80, 0x8); + write_register(0x1c90, 0x10); + write_register(0x1ca0, 0x10); + write_register(0x1cb0, 0x8); + write_register(0x1cc0, 0x8); + write_register(0x1cd0, 0x8); + write_register(0x1ce0, 0x8); + write_register(0x1c01, 0x5555); + write_register(0x1c02, 0x55a); + write_register(0x1c03, 0x0); return 0; } @@ -141,12 +164,11 @@ upload_block(em, flags, offset, len, p); break; case 0x200: - for (i = 0;i < len; i++) { - if (p[i]) { + for (i = 0; i < len; i++) { + if (p[i]) regname[i] = p[i] ^ 0xff; - } else { + else break; - } } regname[i] = 0; @@ -177,8 +199,9 @@ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,0) if (request_firmware(&fw_entry, "em8300.bin", &em->dev->dev) != 0) { - printk(KERN_ALERT "%s: firmware %s is missing, cannot start.\n", - em->dev->dev.bus_id, "em8300.bin"); + dev_err(&em->dev->dev, + "firmware %s is missing, cannot start.\n", + "em8300.bin"); return; } #else @@ -188,59 +211,49 @@ return; } #endif - em8300_ucode_upload(em, fw_entry->data, fw_entry->size); + em8300_ucode_upload(em, (void *)fw_entry->data, fw_entry->size); em8300_dicom_init(em); - if (em8300_video_setup(em)) { + if (em8300_video_setup(em)) return; - } - if (em->mvfifo) { + if (em->mvfifo) em8300_fifo_free(em->mvfifo); - } - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) - if (em->mafifo) { - em8300_fifo_free(em->mafifo); - } - if (em->spfifo) { + + if (em->mafifo) + em8300_fifo_free(em->mafifo); + + if (em->spfifo) em8300_fifo_free(em->spfifo); - } - if (!(em->mvfifo = em8300_fifo_alloc())) { + em->mvfifo = em8300_fifo_alloc(); + if (!em->mvfifo) return; - } - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) - if (!(em->mafifo = em8300_fifo_alloc())) { - return; - } + em->mafifo = em8300_fifo_alloc(); + if (!em->mafifo) + return; - if (!(em->spfifo = em8300_fifo_alloc())) { + em->spfifo = em8300_fifo_alloc(); + if (!em->spfifo) return; - } - em8300_fifo_init(em,em->mvfifo, MV_PCIStart, MV_PCIWrPtr, MV_PCIRdPtr, MV_PCISize, 0x900, FIFOTYPE_VIDEO); - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) - em8300_fifo_init(em,em->mafifo, MA_PCIStart, MA_PCIWrPtr, MA_PCIRdPtr, MA_PCISize, 0x1000, FIFOTYPE_AUDIO); - // em8300_fifo_init(em,em->spfifo, SP_PCIStart, SP_PCIWrPtr, SP_PCIRdPtr, SP_PCISize, 0x1000, FIFOTYPE_VIDEO); + em8300_fifo_init(em, em->mvfifo, MV_PCIStart, MV_PCIWrPtr, MV_PCIRdPtr, MV_PCISize, 0x900, FIFOTYPE_VIDEO); + em8300_fifo_init(em, em->mafifo, MA_PCIStart, MA_PCIWrPtr, MA_PCIRdPtr, MA_PCISize, 0x1000, FIFOTYPE_AUDIO); + /* em8300_fifo_init(em,em->spfifo, SP_PCIStart, SP_PCIWrPtr, SP_PCIRdPtr, SP_PCISize, 0x1000, FIFOTYPE_VIDEO); */ em8300_fifo_init(em,em->spfifo, SP_PCIStart, SP_PCIWrPtr, SP_PCIRdPtr, SP_PCISize, 0x800, FIFOTYPE_VIDEO); em8300_spu_init(em); - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) - if (em8300_audio_setup(em)) { - return; - } + if (em8300_audio_setup(em)) { + return; + } em8300_ioctl_enable_videoout(em, 0); em->ucodeloaded = 1; - printk(KERN_NOTICE "em8300: Microcode version 0x%02x loaded\n", read_ucregister(MicroCodeVersion)); + printk(KERN_NOTICE "em8300-%d: Microcode version 0x%02x loaded\n", em->card_nr, read_ucregister(MicroCodeVersion)); } } diff -Nru em8300-0.16.4/modules/em8300_udev.c em8300-0.18.0/modules/em8300_udev.c --- em8300-0.16.4/modules/em8300_udev.c 2007-03-02 23:00:35.000000000 +0000 +++ em8300-0.18.0/modules/em8300_udev.c 2010-06-28 18:12:31.000000000 +0100 @@ -1,4 +1,4 @@ -/* $Id: em8300_udev.c,v 1.4 2007/03/02 23:00:35 nboullis Exp $ +/* $Id$ * * em8300_udev.c -- interface for udev * Copyright (C) 2006 Nicolas Boullis @@ -29,9 +29,24 @@ #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,13) #define class class_simple #define class_create class_simple_create -#define class_device_create class_simple_device_add -#define class_device_destroy(cls, dev) class_simple_device_remove(dev) #define class_destroy class_simple_destroy +#define device_create(cls, parent, devt, drvdata, fmt, args...) \ + class_simple_device_add(cls, devt, parent, fmt, ## args) +#define device_destroy(cls, devt) \ + class_simple_device_remove(devt) +#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,15) +#define device_create(cls, parent, devt, drvdata, fmt, args...) \ + class_device_create(cls, devt, parent, fmt, ## args) +#define device_destroy(cls, devt) \ + class_device_destroy(cls, devt) +#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,18) +#define device_create(cls, parent, devt, drvdata, fmt, args...) \ + class_device_create(cls, NULL, devt, parent, fmt, ## args) +#define device_destroy(cls, devt) \ + class_device_destroy(cls, devt) +#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,27) +#define device_create(cls, parent, devt, drvdata, fmt, args...) \ + device_create(cls, parent, devt, fmt, ## args) #endif #include "em8300_params.h" @@ -45,58 +60,34 @@ static void em8300_udev_register_card(struct em8300_s *em) { - em->classdev = class_device_create(em8300_class, -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,15) - NULL, -#endif - MKDEV(major, em->card_nr * 4 + 0), - &em->dev->dev, - "%s-%d", - EM8300_LOGNAME, em->card_nr); + device_create(em8300_class, &em->dev->dev, + MKDEV(major, em->card_nr * 4 + 0), NULL, + "%s-%d", EM8300_LOGNAME, em->card_nr); } static void em8300_udev_enable_card(struct em8300_s *em) { - em->classdev_mv = class_device_create(em8300_class, -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,15) - em->classdev, -#endif - MKDEV(major, em->card_nr * 4 + 1), - &em->dev->dev, - "%s_mv-%d", - EM8300_LOGNAME, em->card_nr); - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) - em->classdev_ma = class_device_create(em8300_class, -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,15) - em->classdev, -#endif - MKDEV(major, em->card_nr * 4 + 2), - &em->dev->dev, - "%s_ma-%d", - EM8300_LOGNAME, em->card_nr); - em->classdev_sp = class_device_create(em8300_class, -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,15) - em->classdev, -#endif - MKDEV(major, em->card_nr * 4 + 3), - &em->dev->dev, - "%s_sp-%d", - EM8300_LOGNAME, em->card_nr); + device_create(em8300_class, &em->dev->dev, + MKDEV(major, em->card_nr * 4 + 1), NULL, + "%s_mv-%d", EM8300_LOGNAME, em->card_nr); + device_create(em8300_class, &em->dev->dev, + MKDEV(major, em->card_nr * 4 + 2), NULL, + "%s_ma-%d", EM8300_LOGNAME, em->card_nr); + device_create(em8300_class, &em->dev->dev, + MKDEV(major, em->card_nr * 4 + 3), NULL, + "%s_sp-%d", EM8300_LOGNAME, em->card_nr); } static void em8300_udev_disable_card(struct em8300_s *em) { - class_device_destroy(em8300_class, MKDEV(major, em->card_nr * 4 + 1)); - if ((audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSSLIKE) - || (audio_driver_nr[em->card_nr] == AUDIO_DRIVER_OSS)) - class_device_destroy(em8300_class, MKDEV(major, em->card_nr * 4 + 2)); - class_device_destroy(em8300_class, MKDEV(major, em->card_nr * 4 + 3)); + device_destroy(em8300_class, MKDEV(major, em->card_nr * 4 + 1)); + device_destroy(em8300_class, MKDEV(major, em->card_nr * 4 + 2)); + device_destroy(em8300_class, MKDEV(major, em->card_nr * 4 + 3)); } static void em8300_udev_unregister_card(struct em8300_s *em) { - class_device_destroy(em8300_class, MKDEV(major, em->card_nr * 4 + 0)); + device_destroy(em8300_class, MKDEV(major, em->card_nr * 4 + 0)); } static void em8300_udev_unregister_driver(void) @@ -104,8 +95,7 @@ class_destroy(em8300_class); } -struct em8300_registrar_s em8300_udev_registrar = -{ +struct em8300_registrar_s em8300_udev_registrar = { .register_driver = &em8300_udev_register_driver, .postregister_driver = NULL, .register_card = &em8300_udev_register_card, @@ -121,8 +111,7 @@ #else /* LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,2) */ -struct em8300_registrar_s em8300_udev_registrar = -{ +struct em8300_registrar_s em8300_udev_registrar = { .register_driver = NULL, .postregister_driver = NULL, .register_card = NULL, diff -Nru em8300-0.16.4/modules/em8300_udev.h em8300-0.18.0/modules/em8300_udev.h --- em8300-0.16.4/modules/em8300_udev.h 2006-04-10 23:31:14.000000000 +0100 +++ em8300-0.18.0/modules/em8300_udev.h 2010-06-28 18:12:31.000000000 +0100 @@ -1,4 +1,4 @@ -/* $Id: em8300_udev.h,v 1.2 2006/04/10 22:31:14 nboullis Exp $ +/* $Id$ * * em8300_udev.h -- interface for udev * Copyright (C) 2006 Nicolas Boullis diff -Nru em8300-0.16.4/modules/em8300_video.c em8300-0.18.0/modules/em8300_video.c --- em8300-0.16.4/modules/em8300_video.c 2007-03-02 23:00:35.000000000 +0000 +++ em8300-0.18.0/modules/em8300_video.c 2010-06-28 18:12:31.000000000 +0100 @@ -1,6 +1,31 @@ /* - * Copyright (C) 2005 Jon Burgess + * em8300_video.c + * + * Copyright (C) 2000-2001 Henrik Johansson + * (C) 2001 Rick Haines + * (C) 2001 Ralph Zimmermann + * (C) 2001 Eduard Hasenleithner + * (C) 2001 Daniel Chassot + * (C) 2002 Daniel Holm + * (C) 2003 Anders Rune Jensen + * (C) 2003-2005 Jon Burgess + * (C) 2003-2007 Nicolas Boullis + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ + #define __NO_VERSION__ #include @@ -23,6 +48,7 @@ #include "em8300_reg.h" #include +#include "em8300_driver.h" #include "em8300_fifo.h" #include @@ -104,7 +130,7 @@ } if (rdptr == rdptr_last) { - printk(KERN_DEBUG "em8300_video.o: Video sync rdptr is stuck at 0x%08x, wrptr 0x%08x, left %d\n", rdptr, wrptr, wrptr - rdptr); + pr_debug("em8300-%d: Video sync rdptr is stuck at 0x%08x, wrptr 0x%08x, left %d\n", em->card_nr, rdptr, wrptr, wrptr - rdptr); break; } rdptr_last = rdptr; @@ -114,13 +140,13 @@ if (signal_pending(current)) { set_current_state(TASK_RUNNING); - printk(KERN_ERR "em8300_video.o: Video sync interrupted\n"); + printk(KERN_ERR "em8300-%d: Video sync interrupted\n", em->card_nr); return -EINTR; } } while (++synctimeout < 4); if (rdptr != wrptr) { - printk(KERN_DEBUG "em8300_video.o: Video sync timeout\n"); + pr_debug("em8300-%d: Video sync timeout\n", em->card_nr); } set_current_state(TASK_RUNNING); @@ -146,7 +172,7 @@ write_ucregister(SP_RdPtr_Lo, 0); write_ucregister(SP_RdPtr_Hi, 0); writel(readl(em->spfifo->readptr), em->spfifo->writeptr); - + em->sp_ptsfifo_ptr = 0; em->sp_ptsvalid = 0; em->sp_pts = 0; @@ -163,7 +189,7 @@ kmin = 0x900; } write_ucregister(DICOM_Kmin, kmin); - pr_debug("em8300: register DICOM_Kmin = 0x%x\n", kmin); + pr_debug("em8300-%d: register DICOM_Kmin = 0x%x\n", em->card_nr, kmin); } int em8300_video_setup(struct em8300_s *em) @@ -213,14 +239,14 @@ em9010_write(em, 0xa, 0x0); if (em9010_cabledetect(em)) { - pr_debug("em8300: overlay loop-back cable detected\n"); + pr_debug("em8300-%d: overlay loop-back cable detected\n", em->card_nr); } - pr_debug("em8300: overlay reg 0x80 = %x \n", em9010_read16(em, 0x80)); + pr_debug("em8300-%d: overlay reg 0x80 = %x \n", em->card_nr, em9010_read16(em, 0x80)); em9010_write(em, 0xb, 0xc8); - pr_debug("em8300: register 0x1f4b = %x (0x138)\n", read_register(0x1f4b)); + pr_debug("em8300-%d: register 0x1f4b = %x (0x138)\n", em->card_nr, read_register(0x1f4b)); em9010_write16(em, 1, 0x4fe); em9010_write(em, 1, 4); @@ -236,17 +262,17 @@ em9010_write(em, 7, 0x80); em9010_write(em, 9, 0); - if (bt865_ucode_timeout[em->card_nr]) { + if (em->config.model.bt865_ucode_timeout) { write_register(0x1f47, 0x18); } if (em->encoder_type == ENCODER_BT865) { write_register(0x1f5e, 0x9efe); write_ucregister(DICOM_Control, 0x9efe); } else { - if (!bt865_ucode_timeout[em->card_nr]) { + if (!em->config.model.bt865_ucode_timeout) { write_register(0x1f47, 0x18); } - write_register(0x1f5e,0x9afe); + write_register(0x1f5e, 0x9afe); write_ucregister(DICOM_Control, 0x9afe); } @@ -271,7 +297,7 @@ write_register(0x2000, 0x1); if (mpegvideo_command(em, MVCOMMAND_DISPLAYBUFINFO)) { - printk(KERN_ERR "em8300_video: mpegvideo_command(0x11) failed\n"); + printk(KERN_ERR "em8300-%d: mpegvideo_command(0x11) failed\n", em->card_nr); return -ETIME; } em8300_dicom_get_dbufinfo(em); @@ -279,7 +305,7 @@ write_ucregister(SP_Status, 0x0); if (mpegvideo_command(em, 0x10)) { - printk(KERN_ERR "em8300: mpegvideo_command(0x10) failed\n"); + printk(KERN_ERR "em8300-%d: mpegvideo_command(0x10) failed\n", em->card_nr); return -ETIME; } @@ -294,7 +320,7 @@ em8300_dicom_setBCS(em, 500, 500, 500); if (em8300_dicom_update(em)) { - printk(KERN_ERR "em8300: DICOM Update failed\n"); + printk(KERN_ERR "em8300-%d: DICOM Update failed\n", em->card_nr); return -ETIME; } @@ -324,7 +350,7 @@ } } -ssize_t em8300_video_write(struct em8300_s *em, const char * buf, size_t count, loff_t *ppos) +ssize_t em8300_video_write(struct em8300_s *em, const char *buf, size_t count, loff_t *ppos) { unsigned flags = 0; int written; @@ -340,14 +366,13 @@ ret = wait_event_interruptible_timeout(em->video_ptsfifo_wait, (read_register(ptsfifoptr + 3) & 1) == 0, HZ); if (ret == 0) { - printk(KERN_ERR "em8300_video.c: Video Fifo timeout\n"); + printk(KERN_ERR "em8300-%d: Video Fifo timeout\n", em->card_nr); return -EINTR; - } - else if (ret < 0) + } else if (ret < 0) return ret; #ifdef DEBUG_SYNC - pr_info("em8300_video.o: pts: %u\n", em->video_pts >> 1); + pr_info("em8300-%d: pts: %u\n", em->card_nr, em->video_pts >> 1); #endif write_register(ptsfifoptr, em->video_offset >> 16); @@ -382,7 +407,7 @@ } if (em->video_pts == 0) { - printk("Video SETPTS = 0x%x\n", em->video_pts); + pr_debug("em8300-%d: Video SETPTS = 0x%x\n", em->card_nr, em->video_pts); } if (em->video_pts != em->video_lastpts) { @@ -393,14 +418,14 @@ case _IOC_NR(EM8300_IOCTL_VIDEO_SETSCR): if (_IOC_DIR(cmd) & _IOC_WRITE) { - if (get_user(val, (unsigned*) arg)) + if (get_user(val, (unsigned *) arg)) return -EFAULT; val >>= 1; scr = read_ucregister(MV_SCRlo) | (read_ucregister(MV_SCRhi) << 16); scr -= val; if (scr < 0) scr = -scr; if (scr > 9000) { - pr_info("setting scr: %i\n", val); + pr_info("em8300-%d: setting scr: %i\n", em->card_nr, val); write_ucregister(MV_SCRlo, val & 0xffff); write_ucregister(MV_SCRhi, (val >> 16) & 0xffff); } diff -Nru em8300-0.16.4/modules/em9010.c em8300-0.18.0/modules/em9010.c --- em8300-0.16.4/modules/em9010.c 2003-11-23 20:33:38.000000000 +0000 +++ em8300-0.18.0/modules/em9010.c 2010-06-28 18:12:31.000000000 +0100 @@ -1,25 +1,33 @@ +/* + * em9010.c -- EM9010 overlay unit support + * + * Copyright (C) 2001 Henrik Johansson + * (C) 2001 Rick Haines + * (C) 2001 Daniel Chassot + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + #define __NO_VERSION__ -#include -#include -#include -#include -#include #include -#include -#include -#include -#include #include -#include -#include - -#include -#include -#include #include "em8300_reg.h" #include +#include "em8300_driver.h" /* sub_2ac2d */ static int testcable(struct em8300_s *em) diff -Nru em8300-0.16.4/modules/encoder.h em8300-0.18.0/modules/encoder.h --- em8300-0.16.4/modules/encoder.h 2007-12-10 21:45:13.000000000 +0000 +++ em8300-0.18.0/modules/encoder.h 2010-06-28 18:12:31.000000000 +0100 @@ -1,3 +1,27 @@ +/* + * encoder.h + * + * Copyright (C) 2000 Henrik Johansson + * (C) 2001 Chris C. Hoover + * (C) 2001-2002 Rick Haines + * (C) 2002 Daniel Holm + * (C) 2008 Nicolas Boullis + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + #ifndef _ENCODER_H_ #define _ENCODER_H_ diff -Nru em8300-0.16.4/modules/encoder_output_mode.h em8300-0.18.0/modules/encoder_output_mode.h --- em8300-0.16.4/modules/encoder_output_mode.h 2006-05-12 23:04:56.000000000 +0100 +++ em8300-0.18.0/modules/encoder_output_mode.h 2010-06-28 18:12:31.000000000 +0100 @@ -1,3 +1,23 @@ +/* + * encoder_output_mode.h + * + * Copyright (C) 2006 Nicolas Boullis + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + typedef struct { char const * name; struct output_conf_s conf; diff -Nru em8300-0.16.4/modules/Kbuild em8300-0.18.0/modules/Kbuild --- em8300-0.16.4/modules/Kbuild 1970-01-01 01:00:00.000000000 +0100 +++ em8300-0.18.0/modules/Kbuild 2010-06-28 18:12:31.000000000 +0100 @@ -0,0 +1,79 @@ +# Kbuild -- Kbuild for the em8300 modules +# Copyright (C) 2004 Nicolas Boullis +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +BUILD_IOCTL32 := n + +ifeq ($(ARCH),sparc64) +BUILD_IOCTL32 := $(CONFIG_SPARC32_COMPAT) +endif + +ifeq ($(ARCH),x86_64) +BUILD_IOCTL32 := $(CONFIG_IA32_EMULATION) +endif + +EXTRA_CFLAGS := -I$(EM8300_DIR)/include \ + -DEM8300_VIDEOMODE_DEFAULT=EM8300_VIDEOMODE_PAL \ + -DEM8300_AUDIOMODE_DEFAULT=EM8300_AUDIOMODE_ANALOG \ + -DCONFIG_ADV717X_PIXELPORT16BIT -DCONFIG_ADV717X_PIXELPORTPAL \ + -DCONFIG_EM8300_DICOMPAL -DCONFIG_EM8300_DICOMFIX \ + -DCONFIG_EM8300_DICOMCTRL +ifeq ($(BUILD_IOCTL32),y) +EXTRA_CFLAGS += -DCONFIG_EM8300_IOCTL32=1 +endif +ifneq ($(EM8300_I2C_LOCATION),) +EXTRA_CFLAGS += -DCONFIG_I2C_ALGOBIT=1 +# This is a hack to include i2c headers from $(EM8300_I2C_LOCATION) +# over those from the kernel source tree. +override CC += -I$(EM8300_I2C_LOCATION) +endif +ifneq ($(EM8300_I2C_FORCE_API),) +EXTRA_CFLAGS += -DEM8300_I2C_FORCE_$(EM8300_I2C_FORCE_API)_API +endif + +#MOD_DESTDIR := drivers/video + +em8300-objs := em8300_main.o em8300_i2c.o em8300_audio.o em8300_fifo.o \ + em8300_video.o em8300_misc.o em8300_dicom.o em8300_ucode.o \ + em8300_ioctl.o em8300_spu.o em9010.o em8300_registration.o \ + em8300_procfs.o em8300_devfs.o em8300_udev.o em8300_sysfs.o \ + em8300_alsa.o em8300_params.o em8300_eeprom.o em8300_models.o +ifeq ($(BUILD_IOCTL32),y) +em8300-objs += em8300_ioctl32.o +endif + +obj-m += adv717x.o +obj-m += bt865.o +obj-m += em8300.o + +ifeq ($(shell expr $(VERSION) \* 10000 + $(PATCHLEVEL) \* 100 + $(SUBLEVEL) \< 20600),1) + +EXTRA_CFLAGS += -include $(TOPDIR)/include/linux/config.h + +include $(TOPDIR)/Rules.make + +em8300.o: $(em8300-objs) + $(LD) $(LDFLAGS) $(LDFLAGS_MODULE) -r -o $@ $(em8300-objs) + +else + +ifeq ($(shell expr $(VERSION) \* 10000 + $(PATCHLEVEL) \* 100 + $(SUBLEVEL) \< 20615),1) + +EXTRA_CFLAGS += -include $(TOPDIR)/include/linux/config.h + +endif + +endif diff -Nru em8300-0.16.4/modules/Makefile em8300-0.18.0/modules/Makefile --- em8300-0.16.4/modules/Makefile 2008-02-04 22:40:29.000000000 +0000 +++ em8300-0.18.0/modules/Makefile 2010-06-28 18:12:31.000000000 +0100 @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.93 2008/02/04 22:40:29 nboullis Exp $ +# $Id$ # # Makefile -- makefile for the em8300 modules # Copyright (C) 2004 Nicolas Boullis @@ -29,13 +29,16 @@ #export EM8300_I2C_LOCATION := /usr/src/modules/i2c #export EM8300_I2C_FORCE_API := NEW -export EM8300_VERSION := "0.16.4" export EM8300_DIR := $(CURDIR)/.. export INSTALL_MOD_DIR=em8300 -build: +build: em8300_version.h $(MAKE) -C $(KERNEL_LOCATION) SUBDIRS=$(CURDIR) modules +.PHONY: em8300_version.h +em8300_version.h: + [ ! -x ./update_em8300_version.sh ] || ./update_em8300_version.sh $@ + ifeq ($(strip $(shell printf '\043if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,51)\n1\n\043else\n0\n\043endif\n' | $(CPP) -imacros $(KERNEL_LOCATION)/include/linux/version.h -P - )),1) clean: @@ -69,69 +72,10 @@ else -BUILD_IOCTL32 := n - -ifeq ($(ARCH),sparc64) -BUILD_IOCTL32 := $(CONFIG_SPARC32_COMPAT) -endif - -ifeq ($(ARCH),x86_64) -BUILD_IOCTL32 := $(CONFIG_IA32_EMULATION) -endif - -EXTRA_CFLAGS := -I$(EM8300_DIR)/include \ - -DEM8300_VIDEOMODE_DEFAULT=EM8300_VIDEOMODE_PAL \ - -DEM8300_AUDIOMODE_DEFAULT=EM8300_AUDIOMODE_ANALOG \ - -DEM8300_VERSION=\"$(EM8300_VERSION)\" \ - -DCONFIG_ADV717X_PIXELPORT16BIT -DCONFIG_ADV717X_PIXELPORTPAL \ - -DCONFIG_EM8300_DICOMPAL -DCONFIG_EM8300_DICOMFIX \ - -DCONFIG_EM8300_DICOMCTRL -ifeq ($(BUILD_IOCTL32),y) -EXTRA_CFLAGS += -DCONFIG_EM8300_IOCTL32=1 -endif -ifneq ($(EM8300_I2C_LOCATION),) -EXTRA_CFLAGS += -DCONFIG_I2C_ALGOBIT=1 -# This is a hack to include i2c headers from $(EM8300_I2C_LOCATION) -# over those from the kernel source tree. -override CC += -I$(EM8300_I2C_LOCATION) -endif -ifneq ($(EM8300_I2C_FORCE_API),) -EXTRA_CFLAGS += -DEM8300_I2C_FORCE_$(EM8300_I2C_FORCE_API)_API -endif - -#MOD_DESTDIR := drivers/video - -em8300-objs := em8300_main.o em8300_i2c.o em8300_audio.o em8300_fifo.o \ - em8300_video.o em8300_misc.o em8300_dicom.o em8300_ucode.o \ - em8300_ioctl.o em8300_spu.o em9010.o em8300_registration.o \ - em8300_procfs.o em8300_devfs.o em8300_udev.o em8300_sysfs.o \ - em8300_alsa.o em8300_params.o em8300_eeprom.o -ifeq ($(BUILD_IOCTL32),y) -em8300-objs += em8300_ioctl32.o -endif - -obj-m += adv717x.o -obj-m += bt865.o -obj-m += em8300.o - -# The following hack tests for old kernels (2.4 and old 2.5). -ifneq ($(TOPDIR),$(shell /bin/pwd)) - -EXTRA_CFLAGS += -include $(TOPDIR)/include/linux/config.h - -include $(TOPDIR)/Rules.make - -em8300.o: $(em8300-objs) - $(LD) $(LDFLAGS) $(LDFLAGS_MODULE) -r -o $@ $(em8300-objs) - -else - -ifeq ($(shell expr $(VERSION) \* 10000 + $(PATCHLEVEL) \* 100 + $(SUBLEVEL) \< 20615),1) - -EXTRA_CFLAGS += -include $(TOPDIR)/include/linux/config.h - -endif - -endif +# It should be possible to write it +# $(lastword $(MAKEFILE_LIST)) +# but it's not supported by old make. +CURRENT_MAKEFILE := $(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST)) +include $(dir $(CURRENT_MAKEFILE))Kbuild endif diff -Nru em8300-0.16.4/modules/README-modoptions em8300-0.18.0/modules/README-modoptions --- em8300-0.16.4/modules/README-modoptions 2007-02-26 21:52:37.000000000 +0000 +++ em8300-0.18.0/modules/README-modoptions 2010-06-28 18:12:31.000000000 +0100 @@ -17,14 +17,6 @@ assigned any official device number. If you are already using device major number 121 for some other device you'll have to change this. - audio_driver -- select the audio driver to use: - alsa -- use the ALSA audio interface. ALSA is the official - Linux audio system. - oss -- use the OSS audio interface. OSS is the deprecated - Linux audio system. - osslike -- use an interface similar to OSS that does not use - the actual OSS system. - none -- disable audio output alsa_id -- set the ID string for ALSA audio. alsa_index -- set the index value for ALSA audio. dsp_num -- set the /dev/dsp number to assign to the card for OSS diff -Nru em8300-0.16.4/modules/update_em8300_version.sh em8300-0.18.0/modules/update_em8300_version.sh --- em8300-0.16.4/modules/update_em8300_version.sh 1970-01-01 01:00:00.000000000 +0100 +++ em8300-0.18.0/modules/update_em8300_version.sh 2010-06-28 18:12:31.000000000 +0100 @@ -0,0 +1,31 @@ +#! /bin/sh -e +# +# update_em8300_version.sh -- (re)generate the em8300_version.h file +# Copyright (C) 2008 Nicolas Boullis +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + +target=$1 + +test -n "$target" + +hg_id=$(hg id -i 2>/dev/null) +printf '#define EM8300_VERSION "hg-%s"\n' "$hg_id" > ${target}.tmp +if diff -q ${target} ${target}.tmp >/dev/null 2>&1; then + rm ${target}.tmp +else + mv -f ${target}.tmp ${target} +fi diff -Nru em8300-0.16.4/overlay/Makefile.am em8300-0.18.0/overlay/Makefile.am --- em8300-0.16.4/overlay/Makefile.am 2005-08-08 14:48:30.000000000 +0100 +++ em8300-0.18.0/overlay/Makefile.am 2010-06-28 18:12:31.000000000 +0100 @@ -2,7 +2,7 @@ AM_CFLAGS = @GLOBAL_CFLAGS@ $(GTK_CFLAGS) INCLUDES = -I@top_srcdir@/include -AM_LDFLAGS = $(GTK_LIBS) +AM_LDFLAGS = $(GTK_LIBS) $(OVERLAY_LIBS) bin_PROGRAMS = autocal dxr3view noinst_HEADERS = autocal.h allblackbut.h overlay.h @@ -12,7 +12,7 @@ dxr3view_SOURCES = dxr3view.c overlay.c debug: - $(MAKE) CFLAGS="$(DEBUG_CFLAGS) $(GTK_LIBS)" + $(MAKE) CFLAGS="$(DEBUG_CFLAGS) $(GTK_LIBS) $(OVERLAY_LIBS)" mostlyclean-generic: -rm -f *~ \#* .*~ .\#* diff -Nru em8300-0.16.4/overlay/Makefile.in em8300-0.18.0/overlay/Makefile.in --- em8300-0.16.4/overlay/Makefile.in 2008-02-04 22:52:21.000000000 +0000 +++ em8300-0.18.0/overlay/Makefile.in 2010-06-28 18:16:35.000000000 +0100 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.9.6 from Makefile.am. +# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -15,15 +16,12 @@ @SET_MAKE@ -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = .. +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c @@ -42,14 +40,14 @@ DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/configure.in +am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/include/config.h CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = am__installdirs = "$(DESTDIR)$(bindir)" -binPROGRAMS_INSTALL = $(INSTALL_PROGRAM) PROGRAMS = $(bin_PROGRAMS) am_autocal_OBJECTS = autocal.$(OBJEXT) allblackbut.$(OBJEXT) \ overlay.$(OBJEXT) @@ -58,9 +56,10 @@ am_dxr3view_OBJECTS = dxr3view.$(OBJEXT) overlay.$(OBJEXT) dxr3view_OBJECTS = $(am_dxr3view_OBJECTS) dxr3view_LDADD = $(LDADD) -DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/include +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include depcomp = $(SHELL) $(top_srcdir)/autotools/depcomp am__depfiles_maybe = depfiles +am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) @@ -73,8 +72,6 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALSA_DIR = @ALSA_DIR@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ @@ -93,17 +90,13 @@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ -EM8300_MAJOR = @EM8300_MAJOR@ -EM8300_MINOR = @EM8300_MINOR@ -EM8300_SUB = @EM8300_SUB@ EXEEXT = @EXEEXT@ FIRMWARE_DIR = @FIRMWARE_DIR@ GLOBAL_CFLAGS = @GLOBAL_CFLAGS@ GREP = @GREP@ GTK_CFLAGS = @GTK_CFLAGS@ GTK_LIBS = @GTK_LIBS@ -HAVE_GTK_FALSE = @HAVE_GTK_FALSE@ -HAVE_GTK_TRUE = @HAVE_GTK_TRUE@ +INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ @@ -112,24 +105,29 @@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ +OVERLAY_LIBS = @OVERLAY_LIBS@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ -TAR_NAME = @TAR_NAME@ VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ @@ -141,6 +139,7 @@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ +builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ @@ -168,12 +167,16 @@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ EXTRA_DIST = $(srcdir)/configs/README $(srcdir)/configs/res_* autocal.desktop dxr3view.desktop AM_CFLAGS = @GLOBAL_CFLAGS@ $(GTK_CFLAGS) INCLUDES = -I@top_srcdir@/include -AM_LDFLAGS = $(GTK_LIBS) +AM_LDFLAGS = $(GTK_LIBS) $(OVERLAY_LIBS) noinst_HEADERS = autocal.h allblackbut.h overlay.h autocal_SOURCES = autocal.c allblackbut.c overlay.c dxr3view_SOURCES = dxr3view.c overlay.c @@ -181,18 +184,18 @@ .SUFFIXES: .SUFFIXES: .c .o .obj -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu overlay/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu overlay/Makefile + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu overlay/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu overlay/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ @@ -206,39 +209,54 @@ $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(top_srcdir)/configure: $(am__configure_deps) +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) - test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)" - @list='$(bin_PROGRAMS)'; for p in $$list; do \ - p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \ - if test -f $$p \ - ; then \ - f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \ - echo " $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \ - $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \ - else :; fi; \ - done + test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)" + @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ + for p in $$list; do echo "$$p $$p"; done | \ + sed 's/$(EXEEXT)$$//' | \ + while read p p1; do if test -f $$p; \ + then echo "$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \ + -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ + sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) files[d] = files[d] " " $$1; \ + else { print "f", $$3 "/" $$4, $$1; } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \ + $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ + } \ + ; done uninstall-binPROGRAMS: @$(NORMAL_UNINSTALL) - @list='$(bin_PROGRAMS)'; for p in $$list; do \ - f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \ - echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \ - rm -f "$(DESTDIR)$(bindir)/$$f"; \ - done + @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ + -e 's/$$/$(EXEEXT)/' `; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(bindir)" && rm -f $$files clean-binPROGRAMS: -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) autocal$(EXEEXT): $(autocal_OBJECTS) $(autocal_DEPENDENCIES) @rm -f autocal$(EXEEXT) - $(LINK) $(autocal_LDFLAGS) $(autocal_OBJECTS) $(autocal_LDADD) $(LIBS) + $(LINK) $(autocal_OBJECTS) $(autocal_LDADD) $(LIBS) dxr3view$(EXEEXT): $(dxr3view_OBJECTS) $(dxr3view_DEPENDENCIES) @rm -f dxr3view$(EXEEXT) - $(LINK) $(dxr3view_LDFLAGS) $(dxr3view_OBJECTS) $(dxr3view_LDADD) $(LIBS) + $(LINK) $(dxr3view_OBJECTS) $(dxr3view_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -252,93 +270,98 @@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/overlay.Po@am__quote@ .c.o: -@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ -@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: -@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \ -@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` -uninstall-info-am: ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) - tags=; \ + set x; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - test -z "$(CTAGS_ARGS)$$tags$$unique" \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique + $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) - $(mkdir_p) $(distdir)/$(srcdir)/configs - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ - esac; \ + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @@ -347,7 +370,7 @@ all-am: Makefile $(PROGRAMS) $(HEADERS) installdirs: for dir in "$(DESTDIR)$(bindir)"; do \ - test -z "$$dir" || $(mkdir_p) "$$dir"; \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am @@ -368,6 +391,7 @@ distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) clean: clean-am clean-am: clean-binPROGRAMS clean-generic mostlyclean-am @@ -384,18 +408,38 @@ html: html-am +html-am: + info: info-am info-am: install-data-am: +install-dvi: install-dvi-am + +install-dvi-am: + install-exec-am: install-binPROGRAMS +install-html: install-html-am + +install-html-am: + install-info: install-info-am +install-info-am: + install-man: +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + installcheck-am: maintainer-clean: maintainer-clean-am @@ -415,22 +459,26 @@ ps-am: -uninstall-am: uninstall-binPROGRAMS uninstall-info-am +uninstall-am: uninstall-binPROGRAMS + +.MAKE: install-am install-strip .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \ clean-generic ctags distclean distclean-compile \ distclean-generic distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-am install-binPROGRAMS \ - install-data install-data-am install-exec install-exec-am \ - install-info install-info-am install-man install-strip \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ - uninstall-am uninstall-binPROGRAMS uninstall-info-am + uninstall-am uninstall-binPROGRAMS debug: - $(MAKE) CFLAGS="$(DEBUG_CFLAGS) $(GTK_LIBS)" + $(MAKE) CFLAGS="$(DEBUG_CFLAGS) $(GTK_LIBS) $(OVERLAY_LIBS)" mostlyclean-generic: -rm -f *~ \#* .*~ .\#* @@ -439,6 +487,7 @@ -@echo "This command is intended for maintainers to use;" -@echo "it deletes files that may require special tools to rebuild." -rm -f Makefile.in + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: diff -Nru em8300-0.16.4/overlay/overlay.c em8300-0.18.0/overlay/overlay.c --- em8300-0.16.4/overlay/overlay.c 2005-11-06 11:08:22.000000000 +0000 +++ em8300-0.18.0/overlay/overlay.c 2010-06-28 18:12:31.000000000 +0100 @@ -279,7 +279,7 @@ bcs.contrast = contrast; bcs.saturation = saturation; - if (ioctl(o->dev, EM8300_IOCTL_GETBCS, &bcs)==-1) + if (ioctl(o->dev, EM8300_IOCTL_SETBCS, &bcs)==-1) { perror("Failed setting bcs"); return -1; diff -Nru em8300-0.16.4/overlay/plotcal.m em8300-0.18.0/overlay/plotcal.m --- em8300-0.16.4/overlay/plotcal.m 1970-01-01 01:00:00.000000000 +0100 +++ em8300-0.18.0/overlay/plotcal.m 2010-06-28 18:12:31.000000000 +0100 @@ -0,0 +1,35 @@ +load -ascii upper.mat +load -ascii lower.mat + +x=upper(:,1); + +ru=upper(:,2); +rl=lower(:,2); +gu=upper(:,3); +gl=lower(:,3); +bu=upper(:,4); +bl=lower(:,4); + +figure(1) +clf +hold on +plot(x,ru,'r'); +plot(x,gu,'g'); +plot(x,bu,'b'); +hold off + +figure(2) +clf + +hold on +plot(upper(:,1),gu,'+'); +plot(lower(:,1),gl,'r+'); + +PL=polyfit(lower(:,1),gl,1); +PU=polyfit(upper(:,1),gu,1); +hold on +x2=min(upper(:,1)):255; +plot(x2,polyval(PU,x2),'b') +plot(x2,polyval(PL,x2),'r') + +sprintf('Ex: 150-200 => 0x%02x%02x\n',round(polyval(PU,147)),round(polyval(PL,147))) \ No newline at end of file diff -Nru em8300-0.16.4/scripts/Makefile.in em8300-0.18.0/scripts/Makefile.in --- em8300-0.16.4/scripts/Makefile.in 2008-02-04 22:52:21.000000000 +0000 +++ em8300-0.18.0/scripts/Makefile.in 2010-06-28 18:16:35.000000000 +0100 @@ -1,8 +1,9 @@ -# Makefile.in generated by automake 1.9.6 from Makefile.am. +# Makefile.in generated by automake 1.11.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, +# Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -15,15 +16,12 @@ @SET_MAKE@ -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = .. +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c @@ -40,30 +38,42 @@ subdir = scripts DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/configure.in +am__aclocal_m4_deps = $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/include/config.h CONFIG_CLEAN_FILES = -am__installdirs = "$(DESTDIR)$(pkgdatadir)" "$(DESTDIR)$(pkgdatadir)" -pkgdataSCRIPT_INSTALL = $(INSTALL_SCRIPT) -SCRIPTS = $(pkgdata_SCRIPTS) -SOURCES = -DIST_SOURCES = +CONFIG_CLEAN_VPATH_FILES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; -am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; -pkgdataDATA_INSTALL = $(INSTALL_DATA) +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__installdirs = "$(DESTDIR)$(pkgdatadir)" "$(DESTDIR)$(pkgdatadir)" +SCRIPTS = $(pkgdata_SCRIPTS) +SOURCES = +DIST_SOURCES = DATA = $(pkgdata_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALSA_DIR = @ALSA_DIR@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ @@ -82,17 +92,13 @@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ -EM8300_MAJOR = @EM8300_MAJOR@ -EM8300_MINOR = @EM8300_MINOR@ -EM8300_SUB = @EM8300_SUB@ EXEEXT = @EXEEXT@ FIRMWARE_DIR = @FIRMWARE_DIR@ GLOBAL_CFLAGS = @GLOBAL_CFLAGS@ GREP = @GREP@ GTK_CFLAGS = @GTK_CFLAGS@ GTK_LIBS = @GTK_LIBS@ -HAVE_GTK_FALSE = @HAVE_GTK_FALSE@ -HAVE_GTK_TRUE = @HAVE_GTK_TRUE@ +INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ @@ -101,24 +107,29 @@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ OBJEXT = @OBJEXT@ +OVERLAY_LIBS = @OVERLAY_LIBS@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ -TAR_NAME = @TAR_NAME@ VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ @@ -130,6 +141,7 @@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ +builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ @@ -157,26 +169,30 @@ psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ pkgdata_DATA = em8300.pm pkgdata_SCRIPTS = console.pl i2ctest.pl microcode_extract.pl microcode_info.pl msexpand.pl parsei2c.pl replay.pl softiceparse.pl symboliclog.pl EXTRA_DIST = $(pkgdata_SCRIPTS) $(pkgdata_DATA) all: all-am .SUFFIXES: -$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu scripts/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu scripts/Makefile + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu scripts/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu scripts/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ @@ -190,47 +206,65 @@ $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(top_srcdir)/configure: $(am__configure_deps) +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): install-pkgdataSCRIPTS: $(pkgdata_SCRIPTS) @$(NORMAL_INSTALL) - test -z "$(pkgdatadir)" || $(mkdir_p) "$(DESTDIR)$(pkgdatadir)" - @list='$(pkgdata_SCRIPTS)'; for p in $$list; do \ + test -z "$(pkgdatadir)" || $(MKDIR_P) "$(DESTDIR)$(pkgdatadir)" + @list='$(pkgdata_SCRIPTS)'; test -n "$(pkgdatadir)" || list=; \ + for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - if test -f $$d$$p; then \ - f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \ - echo " $(pkgdataSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(pkgdatadir)/$$f'"; \ - $(pkgdataSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(pkgdatadir)/$$f"; \ - else :; fi; \ - done + if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n' \ + -e 'h;s|.*|.|' \ + -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) { files[d] = files[d] " " $$1; \ + if (++n[d] == $(am__install_max)) { \ + print "f", d, files[d]; n[d] = 0; files[d] = "" } } \ + else { print "f", d "/" $$4, $$1 } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(pkgdatadir)$$dir'"; \ + $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(pkgdatadir)$$dir" || exit $$?; \ + } \ + ; done uninstall-pkgdataSCRIPTS: @$(NORMAL_UNINSTALL) - @list='$(pkgdata_SCRIPTS)'; for p in $$list; do \ - f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \ - echo " rm -f '$(DESTDIR)$(pkgdatadir)/$$f'"; \ - rm -f "$(DESTDIR)$(pkgdatadir)/$$f"; \ - done -uninstall-info-am: + @list='$(pkgdata_SCRIPTS)'; test -n "$(pkgdatadir)" || exit 0; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 's,.*/,,;$(transform)'`; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(pkgdatadir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(pkgdatadir)" && rm -f $$files install-pkgdataDATA: $(pkgdata_DATA) @$(NORMAL_INSTALL) - test -z "$(pkgdatadir)" || $(mkdir_p) "$(DESTDIR)$(pkgdatadir)" - @list='$(pkgdata_DATA)'; for p in $$list; do \ + test -z "$(pkgdatadir)" || $(MKDIR_P) "$(DESTDIR)$(pkgdatadir)" + @list='$(pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ + for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - f=$(am__strip_dir) \ - echo " $(pkgdataDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(pkgdatadir)/$$f'"; \ - $(pkgdataDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(pkgdatadir)/$$f"; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgdatadir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgdatadir)" || exit $$?; \ done uninstall-pkgdataDATA: @$(NORMAL_UNINSTALL) - @list='$(pkgdata_DATA)'; for p in $$list; do \ - f=$(am__strip_dir) \ - echo " rm -f '$(DESTDIR)$(pkgdatadir)/$$f'"; \ - rm -f "$(DESTDIR)$(pkgdatadir)/$$f"; \ - done + @list='$(pkgdata_DATA)'; test -n "$(pkgdatadir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + test -n "$$files" || exit 0; \ + echo " ( cd '$(DESTDIR)$(pkgdatadir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(pkgdatadir)" && rm -f $$files tags: TAGS TAGS: @@ -239,29 +273,32 @@ distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ - esac; \ + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @@ -270,7 +307,7 @@ all-am: Makefile $(SCRIPTS) $(DATA) installdirs: for dir in "$(DESTDIR)$(pkgdatadir)" "$(DESTDIR)$(pkgdatadir)"; do \ - test -z "$$dir" || $(mkdir_p) "$$dir"; \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am @@ -292,6 +329,7 @@ distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @@ -310,18 +348,38 @@ html: html-am +html-am: + info: info-am info-am: install-data-am: install-pkgdataDATA install-pkgdataSCRIPTS +install-dvi: install-dvi-am + +install-dvi-am: + install-exec-am: +install-html: install-html-am + +install-html-am: + install-info: install-info-am +install-info-am: + install-man: +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + installcheck-am: maintainer-clean: maintainer-clean-am @@ -340,18 +398,22 @@ ps-am: -uninstall-am: uninstall-info-am uninstall-pkgdataDATA \ - uninstall-pkgdataSCRIPTS +uninstall-am: uninstall-pkgdataDATA uninstall-pkgdataSCRIPTS + +.MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic distdir dvi dvi-am html html-am info info-am \ - install install-am install-data install-data-am install-exec \ - install-exec-am install-info install-info-am install-man \ - install-pkgdataDATA install-pkgdataSCRIPTS install-strip \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-pkgdataDATA \ + install-pkgdataSCRIPTS install-ps install-ps-am install-strip \ installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-generic pdf \ - pdf-am ps ps-am uninstall uninstall-am uninstall-info-am \ - uninstall-pkgdataDATA uninstall-pkgdataSCRIPTS + pdf-am ps ps-am uninstall uninstall-am uninstall-pkgdataDATA \ + uninstall-pkgdataSCRIPTS + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff -Nru em8300-0.16.4/scripts/msexpand.pl em8300-0.18.0/scripts/msexpand.pl --- em8300-0.16.4/scripts/msexpand.pl 2005-12-17 21:56:59.000000000 +0000 +++ em8300-0.18.0/scripts/msexpand.pl 2010-06-28 18:12:31.000000000 +0100 @@ -150,7 +150,7 @@ close(INFILE); ($magic1, $magic2, $magic3, $lastchar, $size_low, $size_high) = - unpack 'IICa1SS', substr($input, 0, $HEADSIZE); + unpack 'VVCa1vv', substr($input, 0, $HEADSIZE); if ($magic1 != $MAGIC1 || $magic2 != $MAGIC2 || $magic3 != $MAGIC3) { print "Error: Input file is not a Microsoft Compress format.\n";