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
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
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_spppfr.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_tun.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_sctp.c
ifneq ($(DISABLE_IPV6),yes)
C_FILES += freebsd/net/if_stf.c
C_FILES += freebsd/netinet6/dest6.c
C_FILES += freebsd/netinet6/frag6.c
C_FILES += freebsd/netinet6/icmp6.c
@ -646,9 +648,9 @@ C_D_FILES = $(C_FILES:%.c=%.d)
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 $@ $^
lib_user: $(LIB) install_bsd
@ -1000,6 +1002,8 @@ install_bsd: $(LIB)
install -c -m 644 $(LIB) $(INSTALL_BASE)
cd rtemsbsd; for i in `find freebsd -name '*.h'` ; do \
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 \
install -c -m 644 -D "$$i" "$(INSTALL_BASE)/include/$$i" ; done
-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' \
'NEED_DUMMY_PIC_IRQ=yes\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' \
'\n'
data += 'C_FILES =\n'
@ -427,9 +429,9 @@ class ModuleManager:
'\n' \
'LIB = libbsd.a\n' \
'\n' \
'all: $(GENERATED_FILES) $(LIB) lib_user\n' \
'all: $(LIB) lib_user\n' \
'\n' \
'$(LIB): $(C_O_FILES)\n' \
'$(LIB): $(GENERATED_FILES) $(C_O_FILES)\n' \
'\t$(AR) rcu $@ $^\n' \
'\n' \
'lib_user: $(LIB) install_bsd\n' \
@ -491,6 +493,8 @@ class ModuleManager:
'\tinstall -c -m 644 $(LIB) $(INSTALL_BASE)\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' \
'\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' \
'\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' \
@ -1174,7 +1178,8 @@ devUsbBase.addHeaderFiles(
'sys/file.h',
'sys/filio.h',
'sys/ioccom.h',
'sys/_iovec.h',
# FreeBSD version is in RTEMS since used by readv/writev
# 'sys/_iovec.h',
'sys/kernel.h',
'sys/kobj.h',
'sys/kthread.h',
@ -1229,7 +1234,8 @@ devUsbBase.addHeaderFiles(
'sys/types.h',
'sys/ucontext.h',
'sys/ucred.h',
'sys/uio.h',
# FreeBSD version is in RTEMS since used by readv/writev
# 'sys/uio.h',
'sys/aio.h',
'sys/unistd.h',
'sys/vmmeter.h',
@ -1648,7 +1654,6 @@ net.addSourceFiles(
'net/if_mib.c',
'net/if_spppfr.c',
'net/if_spppsubr.c',
'net/if_stf.c',
'net/if_tap.c',
'net/if_tun.c',
'net/if_vlan.c',
@ -1869,6 +1874,7 @@ netinet6.addHeaderFiles(
)
netinet6.addSourceFiles(
[
'net/if_stf.c',
'netinet6/dest6.c',
'netinet6/frag6.c',
'netinet6/icmp6.c',