From b0b16e08bc7d55177299e28721735130d687c318 Mon Sep 17 00:00:00 2001 From: Marc Kleine-Budde Date: Wed, 6 Apr 2005 15:33:36 +0000 Subject: cleanups, install now can.h git-svn-id: https://iocaste.extern.pengutronix.de/svn/canutils/trunks/canutils-1.0-trunks@15 5fd5a299-6ef2-0310-aa18-8b01d7c39d8c --- Makefile.am | 11 +- autogen.sh | 16 +- can.h | 209 --------------------- canconfig.c | 13 +- candump.c | 2 +- canecho.c | 2 +- cansend.c | 2 +- configure.ac | 27 ++- depcomp | 479 ----------------------------------------------- include/Makefile.am | 6 + include/socket-can/can.h | 209 +++++++++++++++++++++ install-sh | 294 ----------------------------- missing | 336 --------------------------------- mkinstalldirs | 111 ----------- tst-raw.c | 86 --------- 15 files changed, 263 insertions(+), 1540 deletions(-) delete mode 100644 can.h delete mode 100755 depcomp create mode 100644 include/Makefile.am create mode 100644 include/socket-can/can.h delete mode 100755 install-sh delete mode 100755 missing delete mode 100755 mkinstalldirs delete mode 100644 tst-raw.c diff --git a/Makefile.am b/Makefile.am index 33724ec..34663d0 100644 --- a/Makefile.am +++ b/Makefile.am @@ -2,7 +2,14 @@ # Binary programs # -bin_PROGRAMS = candump canecho cansend canconfig +bin_PROGRAMS = candump canecho cansend +sbin_PROGRAMS = canconfig + +SUBDIRS = include + +AM_CPPFLAGS = \ + -I$(top_srcdir)/include + -I$(top_builddir)/include candump_SOURCES = candump.c canecho_SOURCES = canecho.c @@ -16,12 +23,12 @@ man_MANS = canconfig.8 candump.8 canecho.8 cansend.8 # info_TEXINFOS = can.texinfo MAINTAINERCLEANFILES= \ + include/can_config.h.in \ configure \ Makefile.in \ config.guess \ config.sub \ ltmain.sh \ - .Makefile.am.swp \ aclocal.m4 diff --git a/autogen.sh b/autogen.sh index fb5808c..a4dddc3 100644 --- a/autogen.sh +++ b/autogen.sh @@ -1,14 +1,16 @@ #!/bin/sh -echo "running libtoolize (tested with 1.5.6)..." -libtoolize --force -c - echo "running aclocal (tested with 1.7.9)..." -aclocal +aclocal -I config/m4 -echo "running autoconf (tested with 2.59)..." -autoconf +echo "running libtoolize (tested with 1.5.6)..." +libtoolize --force + +echo "running autoheader" +autoheader echo "running automake (tested with 1.7.9)..." -automake +automake --add-missing --gnu -Wall +echo "running autoconf (tested with 2.59)..." +autoconf \ No newline at end of file diff --git a/can.h b/can.h deleted file mode 100644 index 6e88743..0000000 --- a/can.h +++ /dev/null @@ -1,209 +0,0 @@ -/* - * can.h (userspace) - * - * Copyright (C) 2004, 2005 - * - * - Jan Kiszka, Uni Hannover - * - Robert Schwebel, Benedikt Spranger, Marc Kleine-Budde, Pengutronix - * - Uwe Koppe, MicroControl GmbH - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the version 2 of the GNU General Public License - * as published by the Free Software Foundation - * - * 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 CAN_H -#define CAN_H - -#define CAN_ID_EXT_MASK 0x1FFFFFFF /* contains CAN id */ -#define CAN_ID_STD_MASK 0x000007FF -#define CAN_FLAG_ALL 0x20000000 /* filter all messages */ -#define CAN_FLAG_RTR 0x40000000 /* remote transmission flag*/ -#define CAN_FLAG_EXTENDED 0x80000000 /* extended frame */ - -#define CANIOCTYPE 0x23 - -#define SIOCSCANBAUDRATE (SIOCPROTOPRIVATE + 0) -#define SIOCGCANBAUDRATE (SIOCPROTOPRIVATE + 1) -#define SIOCSCANMODE (SIOCPROTOPRIVATE + 2) -#define SIOCGCANSTATE (SIOCPROTOPRIVATE + 3) - - -enum CAN_BAUD { - /*! - ** Baudrate 10 kBit/sec - */ - CAN_BAUD_10K = 0, - - /*! - ** Baudrate 20 kBit/sec - */ - CAN_BAUD_20K, - - /*! - ** Baudrate 50 kBit/sec - */ - CAN_BAUD_50K, - - /*! - ** Baudrate 100 kBit/sec - */ - CAN_BAUD_100K, - - /*! - ** Baudrate 125 kBit/sec - */ - CAN_BAUD_125K, - - /*! - ** Baudrate 250 kBit/sec - */ - CAN_BAUD_250K, - - /*! - ** Baudrate 500 kBit/sec - */ - CAN_BAUD_500K, - - /*! - ** Baudrate 800 kBit/sec - */ - CAN_BAUD_800K, - - /*! - ** Baudrate 1 MBit/sec - */ - CAN_BAUD_1M, - - /*! - ** Max value, beside CAN_BAUD_BTR - */ - CAN_BAUD_MAX, - - /*! - ** Use values for btr0, btr1 and btr2 - */ - CAN_BAUD_BTR = 0x80, -}; - - -enum CAN_MODE { - /*! Set controller in Stop mode (no reception / transmission possible) - */ - CAN_MODE_STOP = 0, - - /*! Set controller into normal operation - */ - CAN_MODE_START, - - /*! Start Autobaud Detection - */ - CAN_MODE_AUTO_BAUD, - /*! Set controller into Sleep mode - */ - CAN_MODE_SLEEP -}; - - -enum CAN_STATE { - /*! - ** CAN controller is active, no errors - */ - CAN_STATE_ACTIVE = 0, - - /*! - ** CAN controller is in stopped mode - */ - CAN_STATE_STOPPED, - - /*! - ** CAN controller is in Sleep mode - */ - CAN_STATE_SLEEPING, - - /*! - ** CAN controller is active, warning level is reached - */ - CAN_STATE_BUS_WARN = 6, - - /*! - ** CAN controller is error passive - */ - CAN_STATE_BUS_PASSIVE, - - /*! - ** CAN controller went into Bus Off - */ - CAN_STATE_BUS_OFF, - - /*! - ** General failure of physical layer detected (if supported by hardware) - */ - CAN_STATE_PHY_FAULT = 10, - - /*! - ** Fault on CAN-H detected (Low Speed CAN) - */ - CAN_STATE_PHY_H, - - /*! - ** Fault on CAN-L detected (Low Speed CAN) - */ - CAN_STATE_PHY_L, - - CAN_STATE_ERR_BIT = 0x10, - CAN_STATE_ERR_STUFF = 0x20, - CAN_STATE_ERR_FORM = 0x30, - CAN_STATE_ERR_CRC = 0x40, - CAN_STATE_ERR_ACK = 0x50 -}; - - -struct can_baudrate { - enum CAN_BAUD baudrate; - unsigned char btr[3]; -}; - - -union can_settings { - enum CAN_MODE mode; - enum CAN_STATE state; -}; - - -#define AF_CAN 30 /* CAN Bus */ -#define PF_CAN AF_CAN - -enum CAN_PROTO { - CAN_PROTO_RAW, -/* CAN_PROTO_FOO, */ -/* CAN_PROTO_BAR, */ - CAN_PROTO_MAX, -}; - -struct sockaddr_can { - sa_family_t can_family; - int can_ifindex; - int can_id; -}; - -struct can_frame { - int can_id; - int can_dlc; - union { - unsigned long long msgbits; - unsigned long dword[2]; - unsigned char byte[8]; - } payload; -}; - -#endif /* CAN_H */ diff --git a/canconfig.c b/canconfig.c index a61501a..8fbd130 100644 --- a/canconfig.c +++ b/canconfig.c @@ -1,9 +1,7 @@ /* * canutils/canconfig.c * - * Copyright (C) 2005 - * - * - Marc Kleine-Budde, Pengutronix + * Copyright (C) 2005 Marc Kleine-Budde , Pengutronix * * This program is free software; you can redistribute it and/or modify * it under the terms of the version 2 of the GNU General Public License @@ -33,12 +31,13 @@ #include #include -#include "can.h" - +#include +#ifndef MIN #define MIN(a, b) ((a) < (b) ? (a) : (b)) - -int s; +#endif + +int s; struct ifreq ifr; struct speed_map { diff --git a/candump.c b/candump.c index 7547207..5d83b58 100644 --- a/candump.c +++ b/candump.c @@ -11,7 +11,7 @@ #include #include -#include "can.h" +#include extern int optind, opterr, optopt; diff --git a/canecho.c b/canecho.c index 32a6972..cafa6d2 100644 --- a/canecho.c +++ b/canecho.c @@ -11,7 +11,7 @@ #include #include -#include "can.h" +#include extern int optind, opterr, optopt; diff --git a/cansend.c b/cansend.c index 8497c95..ab94ab2 100644 --- a/cansend.c +++ b/cansend.c @@ -11,7 +11,7 @@ #include #include -#include "can.h" +#include extern int optind, opterr, optopt; static int running = 1; diff --git a/configure.ac b/configure.ac index a16a828..93b1aaf 100644 --- a/configure.ac +++ b/configure.ac @@ -1,17 +1,29 @@ +# -*- Autoconf -*- # Process this file with autoconf to produce a configure script. -AC_PREREQ(2.57) -AC_INIT(canutils, 1.0.0, r.schwebel@pengutronix.de) -AM_INIT_AUTOMAKE +AC_PREREQ(2.59) +AC_INIT([canutils], [1.0.1], [socket-can@@pengutronix.de]) +AC_CONFIG_HEADERS([include/can_config.h]) +AC_CONFIG_AUX_DIR([config/autoconf]) +AC_CONFIG_MACRO_DIR([config/m4]) AC_CONFIG_SRCDIR([cansend.c]) - -#AC_CONFIG_HEADER([can.h]) +AC_CANONICAL_BUILD +AC_CANONICAL_HOST +AC_PROG_INSTALL # Checks for programs. AC_PROG_CC AC_PROG_LIBTOOL +AM_INIT_AUTOMAKE([foreign no-exeext dist-bzip2]) +AM_MAINTAINER_MODE +AC_PROG_LIBTOOL +AM_PROG_AS +AC_SUBST(LD) +AM_INIT_AUTOMAKE + + # Checks for libraries. # Checks for header files. @@ -22,5 +34,8 @@ AC_CHECK_HEADERS([stdlib.h string.h]) AC_TYPE_SIZE_T # Checks for library functions. -AC_CONFIG_FILES([Makefile]) +AC_CONFIG_FILES([ \ + Makefile \ + include/Makefile \ + ]) AC_OUTPUT diff --git a/depcomp b/depcomp deleted file mode 100755 index edb5d38..0000000 --- a/depcomp +++ /dev/null @@ -1,479 +0,0 @@ -#! /bin/sh - -# depcomp - compile a program generating dependencies as side-effects -# Copyright 1999, 2000, 2003 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 -# the Free Software Foundation; either version 2, 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. - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# Originally written by Alexandre Oliva . - -if test -z "$depmode" || test -z "$source" || test -z "$object"; then - echo "depcomp: Variables source, object and depmode must be set" 1>&2 - exit 1 -fi -# `libtool' can also be set to `yes' or `no'. - -if test -z "$depfile"; then - base=`echo "$object" | sed -e 's,^.*/,,' -e 's,\.\([^.]*\)$,.P\1,'` - dir=`echo "$object" | sed 's,/.*$,/,'` - if test "$dir" = "$object"; then - dir= - fi - # FIXME: should be _deps on DOS. - depfile="$dir.deps/$base" -fi - -tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} - -rm -f "$tmpdepfile" - -# Some modes work just like other modes, but use different flags. We -# parameterize here, but still list the modes in the big case below, -# to make depend.m4 easier to write. Note that we *cannot* use a case -# here, because this file can only contain one case statement. -if test "$depmode" = hp; then - # HP compiler uses -M and no extra arg. - gccflag=-M - depmode=gcc -fi - -if test "$depmode" = dashXmstdout; then - # This is just like dashmstdout with a different argument. - dashmflag=-xM - depmode=dashmstdout -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" - stat=$? - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile" - exit $stat - fi - mv "$tmpdepfile" "$depfile" - ;; - -gcc) -## There are various ways to get dependency output from gcc. Here's -## why we pick this rather obscure method: -## - Don't want to use -MD because we'd like the dependencies to end -## up in a subdir. Having to rename by hand is ugly. -## (We might end up doing this anyway to support other compilers.) -## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like -## -MM, not -M (despite what the docs say). -## - Using -M directly means running the compiler twice (even worse -## than renaming). - if test -z "$gccflag"; then - gccflag=-MD, - fi - "$@" -Wp,"$gccflag$tmpdepfile" - stat=$? - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - echo "$object : \\" > "$depfile" - alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz -## The second -e expression handles DOS-style file names with drive letters. - sed -e 's/^[^:]*: / /' \ - -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" -## This next piece of magic avoids the `deleted header file' problem. -## The problem is that when a header file which appears in a .P file -## is deleted, the dependency causes make to die (because there is -## typically no way to rebuild the header). We avoid this by adding -## dummy dependencies for each header file. Too bad gcc doesn't do -## this for us directly. - tr ' ' ' -' < "$tmpdepfile" | -## Some versions of gcc put a space before the `:'. On the theory -## that the space means something, we add a space to the output as -## well. -## Some versions of the HPUX 10.20 sed can't process this invocation -## correctly. Breaking it into two sed invocations is a workaround. - sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -hp) - # 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 - ;; - -sgi) - if test "$libtool" = yes; then - "$@" "-Wp,-MDupdate,$tmpdepfile" - else - "$@" -MDupdate "$tmpdepfile" - fi - stat=$? - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - - if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files - echo "$object : \\" > "$depfile" - - # Clip off the initial element (the dependent). Don't try to be - # clever and replace this with sed code, as IRIX sed won't handle - # lines with more than a fixed number of characters (4096 in - # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; - # the IRIX cc adds comments like `#:fec' to the end of the - # dependency line. - tr ' ' ' -' < "$tmpdepfile" \ - | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ - tr ' -' ' ' >> $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 - else - # The sourcefile does not contain any dependencies, so just - # store a dummy comment line, to avoid errors with the Makefile - # "include basename.Plo" scheme. - echo "#dummy" > "$depfile" - fi - rm -f "$tmpdepfile" - ;; - -aix) - # The C for AIX Compiler uses -M and outputs the dependencies - # in a .u file. In older versions, this file always lives in the - # 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" - if test "$libtool" = yes; then - "$@" -Wc,-M - else - "$@" -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" - exit $stat - fi - - 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" - else - # The sourcefile does not contain any dependencies, so just - # store a dummy comment line, to avoid errors with the Makefile - # "include basename.Plo" scheme. - echo "#dummy" > "$depfile" - fi - rm -f "$tmpdepfile" - ;; - -icc) - # Intel's C compiler understands `-MD -MF file'. However on - # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c - # ICC 7.0 will fill foo.d with something like - # foo.o: sub/foo.c - # foo.o: sub/foo.h - # which is wrong. We want: - # sub/foo.o: sub/foo.c - # sub/foo.o: sub/foo.h - # sub/foo.c: - # sub/foo.h: - # ICC 7.1 will output - # foo.o: sub/foo.c sub/foo.h - # and will wrap long lines using \ : - # foo.o: sub/foo.c ... \ - # sub/foo.h ... \ - # ... - - "$@" -MD -MF "$tmpdepfile" - stat=$? - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - # Each line is of the form `foo.o: dependent.h', - # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'. - # Do two passes, one to just change these to - # `$object: dependent.h' and one to simply `dependent.h:'. - sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" - # Some versions of the HPUX 10.20 sed can't process this invocation - # correctly. Breaking it into two sed invocations is a workaround. - sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" | - sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -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'. - # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put - # dependencies in `foo.d' instead, so we check for that too. - # Subdirectories are respected. - 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.libs/$base.lo.d" - tmpdepfile2="$dir.libs/$base.d" - "$@" -Wc,-MD - else - tmpdepfile1="$dir$base.o.d" - tmpdepfile2="$dir$base.d" - "$@" -MD - fi - - stat=$? - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile1" "$tmpdepfile2" - exit $stat - fi - - if test -f "$tmpdepfile1"; then - tmpdepfile="$tmpdepfile1" - else - tmpdepfile="$tmpdepfile2" - fi - if test -f "$tmpdepfile"; then - 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 - echo "#dummy" > "$depfile" - fi - rm -f "$tmpdepfile" - ;; - -#nosideeffect) - # This comment above is used by automake to tell side-effect - # dependency tracking mechanisms from slower ones. - -dashmstdout) - # Important note: in order to support this mode, a compiler *must* - # always write the preprocessed file to stdout, regardless of -o. - "$@" || exit $? - - # Remove the call to Libtool. - if test "$libtool" = yes; then - while test $1 != '--mode=compile'; do - shift - done - shift - fi - - # Remove `-o $object'. - IFS=" " - for arg - do - case $arg in - -o) - shift - ;; - $object) - shift - ;; - *) - set fnord "$@" "$arg" - shift # fnord - shift # $arg - ;; - esac - done - - test -z "$dashmflag" && dashmflag=-M - # Require at least two characters before searching for `:' - # in the target name. This is to cope with DOS-style filenames: - # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise. - "$@" $dashmflag | - sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" - rm -f "$depfile" - cat < "$tmpdepfile" > "$depfile" - tr ' ' ' -' < "$tmpdepfile" | \ -## Some versions of the HPUX 10.20 sed can't process this invocation -## correctly. Breaking it into two sed invocations is a workaround. - sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -dashXmstdout) - # This case only exists to satisfy depend.m4. It is never actually - # run, as this mode is specially recognized in the preamble. - exit 1 - ;; - -makedepend) - "$@" || exit $? - # Remove any Libtool call - if test "$libtool" = yes; then - while test $1 != '--mode=compile'; do - shift - done - shift - fi - # X makedepend - shift - cleared=no - for arg in "$@"; do - case $cleared in - no) - set ""; shift - cleared=yes ;; - esac - 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. - -*|$object) - ;; - *) - set fnord "$@" "$arg"; shift ;; - esac - done - obj_suffix="`echo $object | sed 's/^.*\././'`" - touch "$tmpdepfile" - ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" - rm -f "$depfile" - cat < "$tmpdepfile" > "$depfile" - sed '1,2d' "$tmpdepfile" | tr ' ' ' -' | \ -## Some versions of the HPUX 10.20 sed can't process this invocation -## correctly. Breaking it into two sed invocations is a workaround. - sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" "$tmpdepfile".bak - ;; - -cpp) - # Important note: in order to support this mode, a compiler *must* - # always write the preprocessed file to stdout. - "$@" || exit $? - - # Remove the call to Libtool. - if test "$libtool" = yes; then - while test $1 != '--mode=compile'; do - shift - done - shift - fi - - # Remove `-o $object'. - IFS=" " - for arg - do - case $arg in - -o) - shift - ;; - $object) - shift - ;; - *) - set fnord "$@" "$arg" - shift # fnord - shift # $arg - ;; - esac - done - - "$@" -E | - sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | - sed '$ s: \\$::' > "$tmpdepfile" - rm -f "$depfile" - echo "$object : \\" > "$depfile" - cat < "$tmpdepfile" >> "$depfile" - sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -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. - "$@" || exit $? - IFS=" " - for arg - do - case "$arg" in - "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") - set fnord "$@" - shift - shift - ;; - *) - set fnord "$@" "$arg" - shift - shift - ;; - esac - done - "$@" -E | - sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile" - rm -f "$depfile" - echo "$object : \\" > "$depfile" - . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" - echo " " >> "$depfile" - . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -none) - exec "$@" - ;; - -*) - echo "Unknown depmode $depmode" 1>&2 - exit 1 - ;; -esac - -exit 0 diff --git a/include/Makefile.am b/include/Makefile.am new file mode 100644 index 0000000..14df547 --- /dev/null +++ b/include/Makefile.am @@ -0,0 +1,6 @@ +nobase_include_HEADERS = socket-can/can.h + +MAINTAINERCLEANFILES= \ + can_config.h.in \ + Makefile.in + diff --git a/include/socket-can/can.h b/include/socket-can/can.h new file mode 100644 index 0000000..6e88743 --- /dev/null +++ b/include/socket-can/can.h @@ -0,0 +1,209 @@ +/* + * can.h (userspace) + * + * Copyright (C) 2004, 2005 + * + * - Jan Kiszka, Uni Hannover + * - Robert Schwebel, Benedikt Spranger, Marc Kleine-Budde, Pengutronix + * - Uwe Koppe, MicroControl GmbH + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the version 2 of the GNU General Public License + * as published by the Free Software Foundation + * + * 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 CAN_H +#define CAN_H + +#define CAN_ID_EXT_MASK 0x1FFFFFFF /* contains CAN id */ +#define CAN_ID_STD_MASK 0x000007FF +#define CAN_FLAG_ALL 0x20000000 /* filter all messages */ +#define CAN_FLAG_RTR 0x40000000 /* remote transmission flag*/ +#define CAN_FLAG_EXTENDED 0x80000000 /* extended frame */ + +#define CANIOCTYPE 0x23 + +#define SIOCSCANBAUDRATE (SIOCPROTOPRIVATE + 0) +#define SIOCGCANBAUDRATE (SIOCPROTOPRIVATE + 1) +#define SIOCSCANMODE (SIOCPROTOPRIVATE + 2) +#define SIOCGCANSTATE (SIOCPROTOPRIVATE + 3) + + +enum CAN_BAUD { + /*! + ** Baudrate 10 kBit/sec + */ + CAN_BAUD_10K = 0, + + /*! + ** Baudrate 20 kBit/sec + */ + CAN_BAUD_20K, + + /*! + ** Baudrate 50 kBit/sec + */ + CAN_BAUD_50K, + + /*! + ** Baudrate 100 kBit/sec + */ + CAN_BAUD_100K, + + /*! + ** Baudrate 125 kBit/sec + */ + CAN_BAUD_125K, + + /*! + ** Baudrate 250 kBit/sec + */ + CAN_BAUD_250K, + + /*! + ** Baudrate 500 kBit/sec + */ + CAN_BAUD_500K, + + /*! + ** Baudrate 800 kBit/sec + */ + CAN_BAUD_800K, + + /*! + ** Baudrate 1 MBit/sec + */ + CAN_BAUD_1M, + + /*! + ** Max value, beside CAN_BAUD_BTR + */ + CAN_BAUD_MAX, + + /*! + ** Use values for btr0, btr1 and btr2 + */ + CAN_BAUD_BTR = 0x80, +}; + + +enum CAN_MODE { + /*! Set controller in Stop mode (no reception / transmission possible) + */ + CAN_MODE_STOP = 0, + + /*! Set controller into normal operation + */ + CAN_MODE_START, + + /*! Start Autobaud Detection + */ + CAN_MODE_AUTO_BAUD, + /*! Set controller into Sleep mode + */ + CAN_MODE_SLEEP +}; + + +enum CAN_STATE { + /*! + ** CAN controller is active, no errors + */ + CAN_STATE_ACTIVE = 0, + + /*! + ** CAN controller is in stopped mode + */ + CAN_STATE_STOPPED, + + /*! + ** CAN controller is in Sleep mode + */ + CAN_STATE_SLEEPING, + + /*! + ** CAN controller is active, warning level is reached + */ + CAN_STATE_BUS_WARN = 6, + + /*! + ** CAN controller is error passive + */ + CAN_STATE_BUS_PASSIVE, + + /*! + ** CAN controller went into Bus Off + */ + CAN_STATE_BUS_OFF, + + /*! + ** General failure of physical layer detected (if supported by hardware) + */ + CAN_STATE_PHY_FAULT = 10, + + /*! + ** Fault on CAN-H detected (Low Speed CAN) + */ + CAN_STATE_PHY_H, + + /*! + ** Fault on CAN-L detected (Low Speed CAN) + */ + CAN_STATE_PHY_L, + + CAN_STATE_ERR_BIT = 0x10, + CAN_STATE_ERR_STUFF = 0x20, + CAN_STATE_ERR_FORM = 0x30, + CAN_STATE_ERR_CRC = 0x40, + CAN_STATE_ERR_ACK = 0x50 +}; + + +struct can_baudrate { + enum CAN_BAUD baudrate; + unsigned char btr[3]; +}; + + +union can_settings { + enum CAN_MODE mode; + enum CAN_STATE state; +}; + + +#define AF_CAN 30 /* CAN Bus */ +#define PF_CAN AF_CAN + +enum CAN_PROTO { + CAN_PROTO_RAW, +/* CAN_PROTO_FOO, */ +/* CAN_PROTO_BAR, */ + CAN_PROTO_MAX, +}; + +struct sockaddr_can { + sa_family_t can_family; + int can_ifindex; + int can_id; +}; + +struct can_frame { + int can_id; + int can_dlc; + union { + unsigned long long msgbits; + unsigned long dword[2]; + unsigned char byte[8]; + } payload; +}; + +#endif /* CAN_H */ diff --git a/install-sh b/install-sh deleted file mode 100755 index 6ce63b9..0000000 --- a/install-sh +++ /dev/null @@ -1,294 +0,0 @@ -#!/bin/sh -# -# install - install a program, script, or datafile -# -# This originates from X11R5 (mit/util/scripts/install.sh), which was -# later released in X11R6 (xc/config/util/install.sh) with the -# following copyright and license. -# -# Copyright (C) 1994 X Consortium -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to -# deal in the Software without restriction, including without limitation the -# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -# sell copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- -# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -# -# Except as contained in this notice, the name of the X Consortium shall not -# be used in advertising or otherwise to promote the sale, use or other deal- -# ings in this Software without prior written authorization from the X Consor- -# tium. -# -# -# FSF changes to this file are in the public domain. -# -# Calling this script install-sh is preferred over install.sh, to prevent -# `make' implicit rules from creating a file called install from it -# 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. - - -# set DOITPROG to echo to test this script - -# Don't use :- since 4.3BSD and earlier shells don't like it. -doit="${DOITPROG-}" - - -# put in absolute paths if you don't have them in your path; or use env. 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}" - -transformbasename="" -transform_arg="" -instcmd="$mvprog" -chmodcmd="$chmodprog 0755" -chowncmd="" -chgrpcmd="" -stripcmd="" -rmcmd="$rmprog -f" -mvcmd="$mvprog" -src="" -dst="" -dir_arg="" - -while [ x"$1" != x ]; do - case $1 in - -c) instcmd=$cpprog - shift - continue;; - - -d) dir_arg=true - shift - continue;; - - -m) chmodcmd="$chmodprog $2" - shift - shift - continue;; - - -o) chowncmd="$chownprog $2" - shift - shift - continue;; - - -g) chgrpcmd="$chgrpprog $2" - shift - shift - continue;; - - -s) stripcmd=$stripprog - shift - continue;; - - -t=*) transformarg=`echo $1 | sed 's/-t=//'` - shift - continue;; - - -b=*) transformbasename=`echo $1 | sed 's/-b=//'` - shift - continue;; - - *) if [ x"$src" = x ] - then - src=$1 - else - # this colon is to work around a 386BSD /bin/sh bug - : - dst=$1 - fi - shift - continue;; - esac -done - -if [ x"$src" = x ] -then - echo "$0: no input file specified" >&2 - exit 1 -else - : -fi - -if [ x"$dir_arg" != x ]; then - dst=$src - src="" - - if [ -d "$dst" ]; then - instcmd=: - chmodcmd="" - else - instcmd=$mkdirprog - fi -else - -# Waiting for this to be detected by the "$instcmd $src $dsttmp" command -# might cause directories to be created, which would be especially bad -# if $src (and thus $dsttmp) contains '*'. - - if [ -f "$src" ] || [ -d "$src" ] - then - : - else - echo "$0: $src does not exist" >&2 - exit 1 - fi - - if [ x"$dst" = x ] - then - echo "$0: no destination specified" >&2 - exit 1 - else - : - fi - -# If destination is a directory, append the input filename; if your system -# does not like double slashes in filenames, you may need to add some logic - - if [ -d "$dst" ] - then - dst=$dst/`basename "$src"` - else - : - fi -fi - -## this sed command emulates the dirname command -dstdir=`echo "$dst" | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'` - -# Make sure that the destination directory exists. -# this part is taken from Noah Friedman's mkinstalldirs script - -# Skip lots of stat calls in the usual case. -if [ ! -d "$dstdir" ]; then -defaultIFS=' - ' -IFS="${IFS-$defaultIFS}" - -oIFS=$IFS -# Some sh's can't handle IFS=/ for some reason. -IFS='%' -set - `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'` -IFS=$oIFS - -pathcomp='' - -while [ $# -ne 0 ] ; do - pathcomp=$pathcomp$1 - shift - - if [ ! -d "$pathcomp" ] ; - then - $mkdirprog "$pathcomp" - else - : - fi - - pathcomp=$pathcomp/ -done -fi - -if [ x"$dir_arg" != x ] -then - $doit $instcmd "$dst" && - - if [ x"$chowncmd" != x ]; then $doit $chowncmd "$dst"; else : ; fi && - if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd "$dst"; else : ; fi && - if [ x"$stripcmd" != x ]; then $doit $stripcmd "$dst"; else : ; fi && - if [ x"$chmodcmd" != x ]; then $doit $chmodcmd "$dst"; else : ; fi -else - -# If we're going to rename the final executable, determine the name now. - - if [ x"$transformarg" = x ] - then - dstfile=`basename "$dst"` - else - dstfile=`basename "$dst" $transformbasename | - sed $transformarg`$transformbasename - fi - -# don't allow the sed command to completely eliminate the filename - - if [ x"$dstfile" = x ] - then - dstfile=`basename "$dst"` - else - : - fi - -# Make a couple of temp file names in the proper directory. - - dsttmp=$dstdir/_inst.$$_ - rmtmp=$dstdir/_rm.$$_ - -# Trap to clean up temp files at exit. - - trap 'status=$?; rm -f "$dsttmp" "$rmtmp" && exit $status' 0 - trap '(exit $?); exit' 1 2 13 15 - -# Move or copy the file name to the temp name - - $doit $instcmd "$src" "$dsttmp" && - -# and set any options; do chmod last to preserve setuid bits - -# If any of these fail, we abort the whole thing. If we want to -# ignore errors from any of these, just make sure not to ignore -# errors from the above "$doit $instcmd $src $dsttmp" command. - - if [ x"$chowncmd" != x ]; then $doit $chowncmd "$dsttmp"; else :;fi && - if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd "$dsttmp"; else :;fi && - if [ x"$stripcmd" != x ]; then $doit $stripcmd "$dsttmp"; else :;fi && - if [ x"$chmodcmd" != x ]; then $doit $chmodcmd "$dsttmp"; else :;fi && - -# 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 [ -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 - } - else - : - fi -} && - -# Now rename the file to the real destination. - - $doit $mvcmd "$dsttmp" "$dstdir/$dstfile" - -fi && - -# The final little trick to "correctly" pass the exit status to the exit trap. - -{ - (exit 0); exit -} diff --git a/missing b/missing deleted file mode 100755 index fc54c64..0000000 --- a/missing +++ /dev/null @@ -1,336 +0,0 @@ -#! /bin/sh -# Common stub for a few missing GNU programs while installing. -# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003 Free Software Foundation, Inc. -# Originally by Fran,cois Pinard , 1996. - -# 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, 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. - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -if test $# -eq 0; then - echo 1>&2 "Try \`$0 --help' for more information" - exit 1 -fi - -run=: - -# In the cases where this matters, `missing' is being run in the -# srcdir already. -if test -f configure.ac; then - configure_ac=configure.ac -else - configure_ac=configure.in -fi - -case "$1" in ---run) - # Try to run requested program, and just exit if it succeeds. - run= - shift - "$@" && exit 0 - ;; -esac - -# If it does not exist, or fails to run (possibly an outdated version), -# try to emulate it. -case "$1" in - - -h|--h|--he|--hel|--help) - echo "\ -$0 [OPTION]... PROGRAM [ARGUMENT]... - -Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an -error status if there is no known handling for PROGRAM. - -Options: - -h, --help display this help and exit - -v, --version output version information and exit - --run try to run the given command, and emulate it if it fails - -Supported PROGRAM values: - aclocal touch file \`aclocal.m4' - autoconf touch file \`configure' - autoheader touch file \`config.h.in' - 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 - help2man touch the output file - lex create \`lex.yy.c', if possible, from existing .c - makeinfo touch the output file - tar try tar, gnutar, gtar, then tar without non-portable flags - yacc create \`y.tab.[ch]', if possible, from existing .[ch]" - ;; - - -v|--v|--ve|--ver|--vers|--versi|--versio|--version) - echo "missing 0.4 - GNU automake" - ;; - - -*) - echo 1>&2 "$0: Unknown \`$1' option" - echo 1>&2 "Try \`$0 --help' for more information" - exit 1 - ;; - - aclocal*) - if test -z "$run" && ($1 --version) > /dev/null 2>&1; then - # We have it, but it failed. - exit 1 - fi - - echo 1>&2 "\ -WARNING: \`$1' is missing on your system. You should only need it if - you modified \`acinclude.m4' or \`${configure_ac}'. You might want - to install the \`Automake' and \`Perl' packages. Grab them from - any GNU archive site." - touch aclocal.m4 - ;; - - autoconf) - if test -z "$run" && ($1 --version) > /dev/null 2>&1; then - # We have it, but it failed. - exit 1 - fi - - echo 1>&2 "\ -WARNING: \`$1' is missing on your system. You should only need it if - you modified \`${configure_ac}'. You might want to install the - \`Autoconf' and \`GNU m4' packages. Grab them from any GNU - archive site." - touch configure - ;; - - autoheader) - if test -z "$run" && ($1 --version) > /dev/null 2>&1; then - # We have it, but it failed. - exit 1 - fi - - echo 1>&2 "\ -WARNING: \`$1' is missing on your system. You should only need it if - you modified \`acconfig.h' or \`${configure_ac}'. You might want - to install the \`Autoconf' and \`GNU m4' packages. Grab them - from any GNU archive site." - files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}` - test -z "$files" && files="config.h" - touch_files= - for f in $files; do - case "$f" in - *:*) touch_files="$touch_files "`echo "$f" | - sed -e 's/^[^:]*://' -e 's/:.*//'`;; - *) touch_files="$touch_files $f.in";; - esac - done - touch $touch_files - ;; - - automake*) - if test -z "$run" && ($1 --version) > /dev/null 2>&1; then - # We have it, but it failed. - exit 1 - fi - - echo 1>&2 "\ -WARNING: \`$1' is missing on your system. You should only need it if - you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'. - You might want to install the \`Automake' and \`Perl' packages. - Grab them from any GNU archive site." - find . -type f -name Makefile.am -print | - sed 's/\.am$/.in/' | - while read f; do touch "$f"; done - ;; - - autom4te) - if test -z "$run" && ($1 --version) > /dev/null 2>&1; then - # We have it, but it failed. - exit 1 - fi - - echo 1>&2 "\ -WARNING: \`$1' is needed, and you do not seem to have it handy on your - system. You might have modified some files without having the - proper tools for further handling them. - 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'` - if test -f "$file"; then - touch $file - else - test -z "$file" || exec >$file - echo "#! /bin/sh" - echo "# Created by GNU Automake missing as a replacement of" - echo "# $ $@" - echo "exit 0" - chmod +x $file - exit 1 - fi - ;; - - bison|yacc) - echo 1>&2 "\ -WARNING: \`$1' is missing on your system. 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 - eval LASTARG="\${$#}" - case "$LASTARG" in - *.y) - SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'` - if [ -f "$SRCFILE" ]; then - cp "$SRCFILE" y.tab.c - fi - SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'` - if [ -f "$SRCFILE" ]; then - cp "$SRCFILE" y.tab.h - fi - ;; - esac - fi - if [ ! -f y.tab.h ]; then - echo >y.tab.h - fi - if [ ! -f y.tab.c ]; then - echo 'main() { return 0; }' >y.tab.c - fi - ;; - - lex|flex) - echo 1>&2 "\ -WARNING: \`$1' is missing on your system. 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 - eval LASTARG="\${$#}" - case "$LASTARG" in - *.l) - SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'` - if [ -f "$SRCFILE" ]; then - cp "$SRCFILE" lex.yy.c - fi - ;; - esac - fi - if [ ! -f lex.yy.c ]; then - echo 'main() { return 0; }' >lex.yy.c - fi - ;; - - help2man) - if test -z "$run" && ($1 --version) > /dev/null 2>&1; then - # We have it, but it failed. - exit 1 - fi - - echo 1>&2 "\ -WARNING: \`$1' is missing on your system. 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 - touch $file - else - test -z "$file" || exec >$file - echo ".ab help2man is required to generate this page" - exit 1 - fi - ;; - - makeinfo) - if test -z "$run" && (makeinfo --version) > /dev/null 2>&1; then - # We have makeinfo, but it failed. - exit 1 - fi - - echo 1>&2 "\ -WARNING: \`$1' is missing on your system. You should only need it if - you modified a \`.texi' or \`.texinfo' file, or any other file - indirectly affecting the aspect of the manual. The spurious - call might also be the consequence of using a buggy \`make' (AIX, - DU, IRIX). You might want to install the \`Texinfo' package or - the \`GNU make' package. Grab either from any GNU archive site." - file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` - if test -z "$file"; then - file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` - file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file` - fi - touch $file - ;; - - tar) - shift - if test -n "$run"; then - echo 1>&2 "ERROR: \`tar' requires --run" - exit 1 - fi - - # We have already tried tar in the generic part. - # Look for gnutar/gtar before invocation to avoid ugly error - # messages. - if (gnutar --version > /dev/null 2>&1); then - gnutar "$@" && exit 0 - fi - if (gtar --version > /dev/null 2>&1); then - gtar "$@" && exit 0 - fi - firstarg="$1" - if shift; then - case "$firstarg" in - *o*) - firstarg=`echo "$firstarg" | sed s/o//` - tar "$firstarg" "$@" && exit 0 - ;; - esac - case "$firstarg" in - *h*) - firstarg=`echo "$firstarg" | sed s/h//` - tar "$firstarg" "$@" && exit 0 - ;; - esac - fi - - echo 1>&2 "\ -WARNING: I can't seem to be able to run \`tar' with the given arguments. - You may want to install GNU tar or Free paxutils, or check the - command line arguments." - exit 1 - ;; - - *) - echo 1>&2 "\ -WARNING: \`$1' is needed, and you do not seem to have it handy on your - system. You might have modified some files without having the - proper tools for further handling them. Check the \`README' file, - it often tells you about the needed prerequisites for installing - this package. You may also peek at any GNU archive site, in case - some other package would contain this missing \`$1' program." - exit 1 - ;; -esac - -exit 0 diff --git a/mkinstalldirs b/mkinstalldirs deleted file mode 100755 index d2d5f21..0000000 --- a/mkinstalldirs +++ /dev/null @@ -1,111 +0,0 @@ -#! /bin/sh -# mkinstalldirs --- make directory hierarchy -# Author: Noah Friedman -# Created: 1993-05-16 -# Public domain - -errstatus=0 -dirmode="" - -usage="\ -Usage: mkinstalldirs [-h] [--help] [-m mode] dir ..." - -# process command line arguments -while test $# -gt 0 ; do - case $1 in - -h | --help | --h*) # -h for help - echo "$usage" 1>&2 - exit 0 - ;; - -m) # -m PERM arg - shift - test $# -eq 0 && { echo "$usage" 1>&2; exit 1; } - dirmode=$1 - shift - ;; - --) # stop option processing - shift - break - ;; - -*) # unknown option - echo "$usage" 1>&2 - exit 1 - ;; - *) # first non-opt arg - break - ;; - esac -done - -for file -do - if test -d "$file"; then - shift - else - break - fi -done - -case $# in - 0) exit 0 ;; -esac - -case $dirmode in - '') - if mkdir -p -- . 2>/dev/null; then - echo "mkdir -p -- $*" - exec mkdir -p -- "$@" - fi - ;; - *) - if mkdir -m "$dirmode" -p -- . 2>/dev/null; then - echo "mkdir -m $dirmode -p -- $*" - exec mkdir -m "$dirmode" -p -- "$@" - fi - ;; -esac - -for file -do - set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` - shift - - pathcomp= - for d - do - pathcomp="$pathcomp$d" - case $pathcomp in - -*) pathcomp=./$pathcomp ;; - esac - - if test ! -d "$pathcomp"; then - echo "mkdir $pathcomp" - - mkdir "$pathcomp" || lasterr=$? - - if test ! -d "$pathcomp"; then - errstatus=$lasterr - else - if test ! -z "$dirmode"; then - echo "chmod $dirmode $pathcomp" - lasterr="" - chmod "$dirmode" "$pathcomp" || lasterr=$? - - if test ! -z "$lasterr"; then - errstatus=$lasterr - fi - fi - fi - fi - - pathcomp="$pathcomp/" - done -done - -exit $errstatus - -# Local Variables: -# mode: shell-script -# sh-indentation: 2 -# End: -# mkinstalldirs ends here diff --git a/tst-raw.c b/tst-raw.c deleted file mode 100644 index 882f90b..0000000 --- a/tst-raw.c +++ /dev/null @@ -1,86 +0,0 @@ -#include -#include -#include -#include - -#include -#include -#include -#include -#include - -#include "can.h" - -int main(int argc, char **argv) -{ - int s; - int family = PF_CAN, type = SOCK_RAW, proto = CAN_PROTO_RAW; - int opt; - struct sockaddr_can addr; - unsigned char buf[4096]; - int nbytes, i; - struct ifreq ifr; - - struct iovec bufs[] = { - { "abc", 4 }, - { "def", 4 }, - { "0123456", 8 }, - { "xyz", 4 }, - }; - - while ((opt = getopt(argc, argv, "f:t:p:")) != -1) { - switch (opt) { - case 'f': - family = atoi(optarg); - break; - case 't': - type = atoi(optarg); - break; - case 'p': - proto = atoi(optarg); - break; - default: - fprintf(stderr, "Unknown option %c\n", opt); - break; - } - } - - printf("family = %d, type = %d, proto = %d\n", family, type, proto); - if ((s = socket(family, type, proto)) < 0) { - perror("socket"); - return 1; - } - - strcpy(ifr.ifr_name, "vcan2"); - ioctl(s, SIOCGIFINDEX, &ifr); - addr.can_family = family; - addr.can_ifindex = ifr.ifr_ifindex; - - if (bind(s, (struct sockaddr *)&addr, sizeof(addr)) < 0) { - perror("bind"); - return 1; - } -#if 0 - if (write(s, "abc", 4) < 0) { - perror("write"); - return 1; - } -#endif - if (writev(s, bufs, sizeof(bufs)/sizeof(*bufs)) < 0) { - perror("writev"); - return 1; - } - if ((nbytes = read(s, buf, 4096)) < 0) { - perror("read"); - return 1; - } else { - printf("%d bytes read\n", nbytes); - for (i = 0; i < nbytes; i++) { - printf(" %02x", buf[i]); - if (i % 16 == 15 || i == nbytes - 1) - putchar('\n'); - } - } - - return 0; -} -- cgit v1.2.3