freebsd-to-rtems.py: Multiple fixes and supporting modifications

+ SED_PATTERN was broken when IPV6 enabled. The sed produced a
  zero length rtems-bsd-config.h.
+ "make install" without all did not produce GENERATED_FILES
+ Install .h files in contrib/altq. Needed by new libc commands
  being added shortly.
+ Do not copy <sys/uio.h> and <sys/_iovec.h> from FreeBSD. They
  are provided by RTEMS now.
+ net/if_stf.c appears to be strictly IPV6 functionality. Make building
  it conditional on IPV6.
This commit is contained in:
Joel Sherrill 2012-09-05 12:58:09 -05:00
parent ccffd2b4e1
commit b7923cd15b
2 changed files with 18 additions and 8 deletions

View File

@ -17,6 +17,8 @@ CFLAGS += -std=gnu99
CFLAGS += -MT $@ -MD -MP -MF $(basename $@).d CFLAGS += -MT $@ -MD -MP -MF $(basename $@).d
NEED_DUMMY_PIC_IRQ=yes NEED_DUMMY_PIC_IRQ=yes
# do nothing default so sed on rtems-bsd-config.h always works.
SED_PATTERN += -e 's/^//'
GENERATED_FILES = rtemsbsd/freebsd/machine/rtems-bsd-config.h GENERATED_FILES = rtemsbsd/freebsd/machine/rtems-bsd-config.h
C_FILES = C_FILES =
@ -92,7 +94,6 @@ C_FILES += freebsd/net/if_media.c
C_FILES += freebsd/net/if_mib.c C_FILES += freebsd/net/if_mib.c
C_FILES += freebsd/net/if_spppfr.c C_FILES += freebsd/net/if_spppfr.c
C_FILES += freebsd/net/if_spppsubr.c C_FILES += freebsd/net/if_spppsubr.c
C_FILES += freebsd/net/if_stf.c
C_FILES += freebsd/net/if_tap.c C_FILES += freebsd/net/if_tap.c
C_FILES += freebsd/net/if_tun.c C_FILES += freebsd/net/if_tun.c
C_FILES += freebsd/net/if_vlan.c C_FILES += freebsd/net/if_vlan.c
@ -196,6 +197,7 @@ C_FILES += freebsd/netinet/libalias/alias.c
C_FILES += freebsd/netinet/libalias/alias_skinny.c C_FILES += freebsd/netinet/libalias/alias_skinny.c
C_FILES += freebsd/netinet/libalias/alias_sctp.c C_FILES += freebsd/netinet/libalias/alias_sctp.c
ifneq ($(DISABLE_IPV6),yes) ifneq ($(DISABLE_IPV6),yes)
C_FILES += freebsd/net/if_stf.c
C_FILES += freebsd/netinet6/dest6.c C_FILES += freebsd/netinet6/dest6.c
C_FILES += freebsd/netinet6/frag6.c C_FILES += freebsd/netinet6/frag6.c
C_FILES += freebsd/netinet6/icmp6.c C_FILES += freebsd/netinet6/icmp6.c
@ -646,9 +648,9 @@ C_D_FILES = $(C_FILES:%.c=%.d)
LIB = libbsd.a LIB = libbsd.a
all: $(GENERATED_FILES) $(LIB) lib_user all: $(LIB) lib_user
$(LIB): $(C_O_FILES) $(LIB): $(GENERATED_FILES) $(C_O_FILES)
$(AR) rcu $@ $^ $(AR) rcu $@ $^
lib_user: $(LIB) install_bsd lib_user: $(LIB) install_bsd
@ -1000,6 +1002,8 @@ install_bsd: $(LIB)
install -c -m 644 $(LIB) $(INSTALL_BASE) install -c -m 644 $(LIB) $(INSTALL_BASE)
cd rtemsbsd; for i in `find freebsd -name '*.h'` ; do \ cd rtemsbsd; for i in `find freebsd -name '*.h'` ; do \
install -c -m 644 -D "$$i" "$(INSTALL_BASE)/include/$$i" ; done install -c -m 644 -D "$$i" "$(INSTALL_BASE)/include/$$i" ; done
cd contrib/altq ; for i in `find freebsd -name '*.h'` ; do \
install -c -m 644 -D "$$i" "$(INSTALL_BASE)/include/$$i" ; done
for i in `find freebsd -name '*.h' | $(CPU_SED)` ; do \ for i in `find freebsd -name '*.h' | $(CPU_SED)` ; do \
install -c -m 644 -D "$$i" "$(INSTALL_BASE)/include/$$i" ; done install -c -m 644 -D "$$i" "$(INSTALL_BASE)/include/$$i" ; done
-cd freebsd/$(RTEMS_CPU)/include && for i in `find . -name '*.h'` ; do \ -cd freebsd/$(RTEMS_CPU)/include && for i in `find . -name '*.h'` ; do \

View File

@ -382,6 +382,8 @@ class ModuleManager:
'CFLAGS += -MT $@ -MD -MP -MF $(basename $@).d\n' \ 'CFLAGS += -MT $@ -MD -MP -MF $(basename $@).d\n' \
'NEED_DUMMY_PIC_IRQ=yes\n' \ 'NEED_DUMMY_PIC_IRQ=yes\n' \
'\n' \ '\n' \
'# do nothing default so sed on rtems-bsd-config.h always works.\n' \
'SED_PATTERN += -e \'s/^//\'\n' \
'GENERATED_FILES = rtemsbsd/freebsd/machine/rtems-bsd-config.h\n' \ 'GENERATED_FILES = rtemsbsd/freebsd/machine/rtems-bsd-config.h\n' \
'\n' '\n'
data += 'C_FILES =\n' data += 'C_FILES =\n'
@ -427,9 +429,9 @@ class ModuleManager:
'\n' \ '\n' \
'LIB = libbsd.a\n' \ 'LIB = libbsd.a\n' \
'\n' \ '\n' \
'all: $(GENERATED_FILES) $(LIB) lib_user\n' \ 'all: $(LIB) lib_user\n' \
'\n' \ '\n' \
'$(LIB): $(C_O_FILES)\n' \ '$(LIB): $(GENERATED_FILES) $(C_O_FILES)\n' \
'\t$(AR) rcu $@ $^\n' \ '\t$(AR) rcu $@ $^\n' \
'\n' \ '\n' \
'lib_user: $(LIB) install_bsd\n' \ 'lib_user: $(LIB) install_bsd\n' \
@ -491,6 +493,8 @@ class ModuleManager:
'\tinstall -c -m 644 $(LIB) $(INSTALL_BASE)\n' \ '\tinstall -c -m 644 $(LIB) $(INSTALL_BASE)\n' \
'\tcd rtemsbsd; for i in `find freebsd -name \'*.h\'` ; do \\\n' \ '\tcd rtemsbsd; for i in `find freebsd -name \'*.h\'` ; do \\\n' \
'\t install -c -m 644 -D "$$i" "$(INSTALL_BASE)/include/$$i" ; done\n' \ '\t install -c -m 644 -D "$$i" "$(INSTALL_BASE)/include/$$i" ; done\n' \
'\tcd contrib/altq; for i in `find freebsd -name \'*.h\'` ; do \\\n' \
'\t install -c -m 644 -D "$$i" "$(INSTALL_BASE)/include/$$i" ; done\n' \
'\tfor i in `find freebsd -name \'*.h\' | $(CPU_SED)` ; do \\\n' \ '\tfor i in `find freebsd -name \'*.h\' | $(CPU_SED)` ; do \\\n' \
'\t install -c -m 644 -D "$$i" "$(INSTALL_BASE)/include/$$i" ; done\n' \ '\t install -c -m 644 -D "$$i" "$(INSTALL_BASE)/include/$$i" ; done\n' \
'\t-cd freebsd/$(RTEMS_CPU)/include && for i in `find . -name \'*.h\'` ; do \\\n' \ '\t-cd freebsd/$(RTEMS_CPU)/include && for i in `find . -name \'*.h\'` ; do \\\n' \
@ -1174,7 +1178,8 @@ devUsbBase.addHeaderFiles(
'sys/file.h', 'sys/file.h',
'sys/filio.h', 'sys/filio.h',
'sys/ioccom.h', 'sys/ioccom.h',
'sys/_iovec.h', # FreeBSD version is in RTEMS since used by readv/writev
# 'sys/_iovec.h',
'sys/kernel.h', 'sys/kernel.h',
'sys/kobj.h', 'sys/kobj.h',
'sys/kthread.h', 'sys/kthread.h',
@ -1229,7 +1234,8 @@ devUsbBase.addHeaderFiles(
'sys/types.h', 'sys/types.h',
'sys/ucontext.h', 'sys/ucontext.h',
'sys/ucred.h', 'sys/ucred.h',
'sys/uio.h', # FreeBSD version is in RTEMS since used by readv/writev
# 'sys/uio.h',
'sys/aio.h', 'sys/aio.h',
'sys/unistd.h', 'sys/unistd.h',
'sys/vmmeter.h', 'sys/vmmeter.h',
@ -1648,7 +1654,6 @@ net.addSourceFiles(
'net/if_mib.c', 'net/if_mib.c',
'net/if_spppfr.c', 'net/if_spppfr.c',
'net/if_spppsubr.c', 'net/if_spppsubr.c',
'net/if_stf.c',
'net/if_tap.c', 'net/if_tap.c',
'net/if_tun.c', 'net/if_tun.c',
'net/if_vlan.c', 'net/if_vlan.c',
@ -1869,6 +1874,7 @@ netinet6.addHeaderFiles(
) )
netinet6.addSourceFiles( netinet6.addSourceFiles(
[ [
'net/if_stf.c',
'netinet6/dest6.c', 'netinet6/dest6.c',
'netinet6/frag6.c', 'netinet6/frag6.c',
'netinet6/icmp6.c', 'netinet6/icmp6.c',