added ka9q stack

This commit is contained in:
Joel Sherrill
1997-05-27 23:39:29 +00:00
parent 7922df5975
commit 1f0f3e3560
14 changed files with 1087 additions and 11 deletions
+2
View File
@@ -41,6 +41,7 @@ RTEMS_ROOT = @RTEMS_ROOT@
RTEMS_HOST = @RTEMS_HOST@
PROJECT_ROOT = @PROJECT_ROOT@
RTEMS_HAS_POSIX_API = @RTEMS_HAS_POSIX_API@
RTEMS_HAS_KA9Q = @RTEMS_HAS_KA9Q@
RTEMS_USE_MACROS = @RTEMS_USE_MACROS@
RTEMS_USE_GCC272 = @RTEMS_USE_GCC272@
RTEMS_LIBC_DIR = @RTEMS_LIBC_DIR@
@@ -85,6 +86,7 @@ $(MTARGETS): mlink
\"PROJECT_HOME=$(PROJECT_ROOT)/$$bsp\" \
\"PROJECT_ROOT=$(PROJECT_ROOT)\" \
\"RTEMS_HAS_POSIX_API=$(RTEMS_HAS_POSIX_API)\" \
\"RTEMS_HAS_KA9Q=$(RTEMS_HAS_KA9Q)\" \
\"RTEMS_USE_MACROS=$(RTEMS_USE_MACROS)\" \
\"RTEMS_USE_GCC272=$(RTEMS_USE_GCC272)\" \
\"RTEMS_LIBC_DIR=$(RTEMS_LIBC_DIR)\" \
+4
View File
@@ -19,6 +19,7 @@ RTEMS-specific option are supported:
--disable-rtems-inlines
--disable-posix
--disable-tests
--disable-ka9q
--enable-gcc28
--enable-libcdir=<DIRECTORY>
--enable-rtemsbsp="bsp1 bsp2 ..."
@@ -26,6 +27,9 @@ RTEMS-specific option are supported:
By default, the RTEMS posix interface is built for targets that support
it. It can be disabled with the --disable-posix option.
By default, the RTEMS port of the KA9Q TCP/IP stack is build for targets
that support it. It can be disabled with the --disable-ka9q option.
By default, the RTEMS test suites are configured. The --disable-tests
will not configure the RTEMS test suite. This is used only to speed-up
configuration in case building the tests are not necessary.
+4
View File
@@ -97,6 +97,10 @@ The following persons/organizations have made contributions:
mode with a m68040 and a port of the Motorola MC68040 Floating Point
Support Package (FPSP) to RTEMS.
+ Eric Norum (eric@skatter.usask.ca) of the Saskatchewan Accelerator
Laboratory submitted a port of the KA9Q TCP/IP stack to RTEMS as
well as a network device driver for the gen68360 BSP.
Finally, the RTEMS project would like to thank those who have contributed
to the other free software efforts which RTEMS utilizes. The primary RTEMS
development environment is from the Free Software Foundation (the GNU
+5
View File
@@ -27,10 +27,15 @@ export PROJECT_HOME
SUB_DIRS=build-tools src
# We only make the install point for the KA9Q header files if it is enabled.
LIBKA9Q_yes_V = include/ka9q
LIBKA9Q = $(LIBKA9Q_$(HAS_KA9Q)_V)
# directories to be created in install point
CREATE_DIRS = include include/sys \
include/rtems include/rtems/score include/rtems/rtems include/rtems/posix \
include/netinet include/libc include/libc/sys \
$(LIBKA9Q) \
lib bin samples \
tests tests/screens tests/screens/sptests \
tests/screens/psxtests tests/screens/mptests \
+10
View File
@@ -11,6 +11,13 @@ H_PIECES=console clockdrv iosupp ringbuf \
spurious timerdrv vmeintr z8036 z8530 z8536
H_FILES=$(H_PIECES:%=$(srcdir)/%.h)
KA9Q_H_PIECES= arp asy ax25 ax25mail bootp cmdparse commands config \
daemon dialer domain enet ftp ftpcli global hardware icmp iface \
internet ip kiss lapb lzw mailbox mbuf netuser nospc nr4 nr4mail \
nrs ping pktdrvr ppp proc rip rtems_ka9q sb session slhc slip smtp \
sockaddr socket tcp telnet tftp timer tipmail trace udp usock
KA9Q_H_FILES=$(KA9Q_H_PIECES:%=$(srcdir)/ka9q/%.h)
SYS_H_FILES=
SRCS=$(H_FILES) $(SYS_H_FILES)
@@ -24,3 +31,6 @@ CLOBBER_ADDITIONS +=
all: $(SRCS)
$(INSTALL) -m 444 $(H_FILES) ${PROJECT_RELEASE}/include
$(INSTALL) -m 444 $(SYS_H_FILES) ${PROJECT_RELEASE}/include/sys
ifeq ($(HAS_KA9Q),yes)
$(INSTALL) -m 444 $(KA9Q_H_FILES) ${PROJECT_RELEASE}/include/ka9q
endif
+5 -1
View File
@@ -12,8 +12,12 @@ include $(PROJECT_ROOT)/make/directory.cfg
SRCS=README
# We only build the ka9q device driver if HAS_KA9Q was defined
KA9Q_DRIVER_yes_V = network
KA9Q_DRIVER = $(KA9Q_DRIVER_$(HAS_KA9Q)_V)
all: $(SRCS)
# wrapup is the one that actually builds and installs the library
# from the individual .rel files built in other directories
SUB_DIRS=include start360 startup clock console timer wrapup
SUB_DIRS=include start360 startup clock console timer $(KA9Q_DRIVER) wrapup
+6 -3
View File
@@ -39,9 +39,12 @@
# The default value is 4 Mbytes. To specify 16 Mbytes of memory,
# --defsym RamSize=0x1000000
#
# - The size of the memory allocator heap. The default value is
# 64 kbytes. To choose a heap size of 256 kbytes,
# --defsym HeapSize=0x40000
# - The size of the memory allocator heap. The default value is
# 64 kbytes. If the KA9Q network package is used the heap
# should be at least 256 kbytes. If your network is large, or
# busy, the heap should be even larger.
# To choose a heap size of 256 kbytes,
# --defsym HeapSize=0x40000
#
# - The Ethernet address for network boot proms.
@@ -0,0 +1,53 @@
#
# $Id$
#
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH=@srcdir@
PGM=${ARCH}/network.rel
# C source names, if any, go here -- minus the .c
C_PIECES=network
C_FILES=$(C_PIECES:%=%.c)
C_O_FILES=$(C_PIECES:%=${ARCH}/%.o)
H_FILES=
SRCS=$(C_FILES) $(H_FILES)
OBJS=$(C_O_FILES)
include $(RTEMS_CUSTOM)
include $(PROJECT_ROOT)/make/leaf.cfg
#
# (OPTIONAL) Add local stuff here using +=
#
DEFINES +=
CPPFLAGS +=
CFLAGS +=
LD_PATHS +=
LD_LIBS +=
LDFLAGS +=
#
# Add your list of files to delete here. The config files
# already know how to delete some stuff, so you may want
# to just run 'make clean' first to see what gets missed.
# 'make clobber' already includes 'make clean'
#
CLEAN_ADDITIONS +=
CLOBBER_ADDITIONS +=
${PGM}: ${SRCS} ${OBJS}
$(make-rel)
all: ${ARCH} $(SRCS) $(PGM)
# the .rel file built here will be put into libbsp.a by ../wrapup/Makefile
install: all
File diff suppressed because it is too large Load Diff
@@ -7,7 +7,11 @@ srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH=@srcdir@
BSP_PIECES=startup clock console timer
# We only build the ka9q device driver if HAS_KA9Q was defined
KA9Q_DRIVER_yes_V = network
KA9Q_DRIVER = $(KA9Q_DRIVER_$(HAS_KA9Q)_V)
BSP_PIECES=startup clock console timer $(KA9Q_DRIVER)
CPU_PIECES=
GENERIC_PIECES=
+1
View File
@@ -17,6 +17,7 @@ LIB=$(PROJECT_HOME)/lib/librtemsall.a
SRCS=$(wildcard $(PROJECT_HOME)/lib/libbsp$(LIB_VARIANT).a) \
$(PROJECT_HOME)/lib/librtems$(LIB_VARIANT).a \
$(wildcard $(PROJECT_HOME)/lib/libposix$(LIB_VARIANT).a) \
$(wildcard $(PROJECT_HOME)/lib/libka9q$(LIB_VARIANT).a) \
$(PROJECT_HOME)/lib/libcsupport$(LIB_VARIANT).a \
$(wildcard $(PROJECT_HOME)/lib/rtems-ctor$(LIB_VARIANT).o) \
$(wildcard $(PROJECT_HOME)/lib/libno-ctor$(LIB_VARIANT).a)
+1
View File
@@ -17,6 +17,7 @@ LIB=$(PROJECT_HOME)/lib/librtemsall.a
SRCS=$(wildcard $(PROJECT_HOME)/lib/libbsp$(LIB_VARIANT).a) \
$(PROJECT_HOME)/lib/librtems$(LIB_VARIANT).a \
$(wildcard $(PROJECT_HOME)/lib/libposix$(LIB_VARIANT).a) \
$(wildcard $(PROJECT_HOME)/lib/libka9q$(LIB_VARIANT).a) \
$(PROJECT_HOME)/lib/libcsupport$(LIB_VARIANT).a \
$(wildcard $(PROJECT_HOME)/lib/rtems-ctor$(LIB_VARIANT).o) \
$(wildcard $(PROJECT_HOME)/lib/libno-ctor$(LIB_VARIANT).a)
Vendored
+30 -6
View File
@@ -17,6 +17,9 @@ ac_help="$ac_help
\
--disable-posix disable posix interface"
ac_help="$ac_help
\
--disable-ka9q disable KA9Q TCP/IP stack"
ac_help="$ac_help
\
--disable-rtems-inlines disable RTEMS inline functions (use macros)"
ac_help="$ac_help
@@ -764,6 +767,8 @@ c/src/lib/libbsp/unix/posix/startup/Makefile \
c/src/lib/libbsp/unix/posix/timer/Makefile \
c/src/lib/libbsp/unix/posix/wrapup/Makefile"
ka9q_mk="c/src/lib/libka9q/Makefile"
hwapi_mk="\
c/src/lib/libhwapi/Makefile \
c/src/lib/libhwapi/eeprom/Makefile \
@@ -952,7 +957,7 @@ c/src/tests/tools/unix/Makefile \
c/src/tests/tools/unix/posix/Makefile"
echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
echo "configure:956: checking whether ${MAKE-make} sets \${MAKE}" >&5
echo "configure:961: checking whether ${MAKE-make} sets \${MAKE}" >&5
set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -1025,7 +1030,7 @@ else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
fi
echo $ac_n "checking host system type""... $ac_c" 1>&6
echo "configure:1029: checking host system type" >&5
echo "configure:1034: checking host system type" >&5
host_alias=$host
case "$host_alias" in
@@ -1046,7 +1051,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
echo "$ac_t""$host" 1>&6
echo $ac_n "checking target system type""... $ac_c" 1>&6
echo "configure:1050: checking target system type" >&5
echo "configure:1055: checking target system type" >&5
target_alias=$target
case "$target_alias" in
@@ -1064,7 +1069,7 @@ target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
echo "$ac_t""$target" 1>&6
echo $ac_n "checking build system type""... $ac_c" 1>&6
echo "configure:1068: checking build system type" >&5
echo "configure:1073: checking build system type" >&5
build_alias=$build
case "$build_alias" in
@@ -1108,6 +1113,20 @@ else
fi
# Check whether --enable-ka9q or --disable-ka9q was given.
if test "${enable_ka9q+set}" = set; then
enableval="$enable_ka9q"
\
case "${enableval}" in
yes) RTEMS_HAS_KA9Q=yes ;;
no) RTEMS_HAS_KA9Q=no ;;
*) { echo "configure: error: bad value ${enableval} for disable-ka9q option" 1>&2; exit 1; } ;;
esac
else
RTEMS_HAS_KA9Q=yes
fi
# Check whether --enable-rtems-inlines or --disable-rtems-inlines was given.
if test "${enable_rtems_inlines+set}" = set; then
enableval="$enable_rtems_inlines"
@@ -1241,7 +1260,7 @@ 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 $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:1245: checking for $ac_word" >&5
echo "configure:1264: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_AWK'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1270,7 +1289,7 @@ test -n "$AWK" && break
done
echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
echo "configure:1274: checking whether ln -s works" >&5
echo "configure:1293: checking whether ln -s works" >&5
if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@@ -1296,6 +1315,9 @@ RTEMS_HOST=$host_os
RTEMS_ROOT=`cd $srcdir/c; pwd`
PROJECT_ROOT=`pwd;`
# For now always generate the KA9Q TCP/IP Makefiles
makefiles="$makefiles $ka9q_mk"
# Check whether --enable-tests or --disable-tests was given.
if test "${enable_tests+set}" = set; then
enableval="$enable_tests"
@@ -1335,6 +1357,7 @@ fi
trap '' 1 2 15
cat > confcache <<\EOF
# This file is a shell script that caches the results of configure
@@ -1559,6 +1582,7 @@ s%@RTEMS_HOST@%$RTEMS_HOST%g
s%@RTEMS_LIBC_DIR@%$RTEMS_LIBC_DIR%g
s%@RTEMS_ROOT@%$RTEMS_ROOT%g
s%@RTEMS_HAS_POSIX_API@%$RTEMS_HAS_POSIX_API%g
s%@RTEMS_HAS_KA9Q@%$RTEMS_HAS_KA9Q%g
s%@RTEMS_USE_MACROS@%$RTEMS_USE_MACROS%g
s%@RTEMS_USE_GCC272@%$RTEMS_USE_GCC272%g
s%@PROJECT_ROOT@%$PROJECT_ROOT%g
+14
View File
@@ -224,6 +224,8 @@ c/src/lib/libbsp/unix/posix/startup/Makefile \
c/src/lib/libbsp/unix/posix/timer/Makefile \
c/src/lib/libbsp/unix/posix/wrapup/Makefile"
ka9q_mk="c/src/lib/libka9q/Makefile"
hwapi_mk="\
c/src/lib/libhwapi/Makefile \
c/src/lib/libhwapi/eeprom/Makefile \
@@ -425,6 +427,14 @@ AC_ARG_ENABLE(posix, \
*) AC_MSG_ERROR(bad value ${enableval} for disable-posix option) ;;
esac],[RTEMS_HAS_POSIX_API=yes])
AC_ARG_ENABLE(ka9q, \
[ --disable-ka9q disable KA9Q TCP/IP stack], \
[case "${enableval}" in
yes) RTEMS_HAS_KA9Q=yes ;;
no) RTEMS_HAS_KA9Q=no ;;
*) AC_MSG_ERROR(bad value ${enableval} for disable-ka9q option) ;;
esac],[RTEMS_HAS_KA9Q=yes])
AC_ARG_ENABLE(rtems-inlines, \
[ --disable-rtems-inlines disable RTEMS inline functions (use macros)], \
[case "${enableval}" in
@@ -547,6 +557,9 @@ RTEMS_HOST=$host_os
RTEMS_ROOT=`cd $srcdir/c; pwd`
PROJECT_ROOT=`pwd;`
# For now always generate the KA9Q TCP/IP Makefiles
makefiles="$makefiles $ka9q_mk"
AC_ARG_ENABLE(tests, \
[ --disable-tests disable tests], \
tests_mk=,makefiles="${makefiles} ${tests_mk}")
@@ -564,6 +577,7 @@ AC_SUBST(RTEMS_HOST)
AC_SUBST(RTEMS_LIBC_DIR)
AC_SUBST(RTEMS_ROOT)
AC_SUBST(RTEMS_HAS_POSIX_API)
AC_SUBST(RTEMS_HAS_KA9Q)
AC_SUBST(RTEMS_USE_MACROS)
AC_SUBST(RTEMS_USE_GCC272)
AC_SUBST(RTEMS_LIBC_DIR)