def write(self): try: out = tempfile.NamedTemporaryFile(delete = False) out.write(self.script) out.close() wscript = builder.RTEMS_DIR + '/wscript' builder.processIfDifferent(out.name, wscript, "wscript") finally: try: os.remove(out.name) except: pass
def write(self): try: out = tempfile.NamedTemporaryFile(delete=False) out.write(self.script) out.close() wscript = builder.RTEMS_DIR + '/wscript' builder.processIfDifferent(out.name, wscript, "wscript") finally: try: os.remove(out.name) except: pass
def generate(self): data = 'include config.inc\n' \ '\n' \ 'RTEMS_MAKEFILE_PATH = $(PREFIX)/$(TARGET)/$(BSP)\n' \ 'include $(RTEMS_MAKEFILE_PATH)/Makefile.inc\n' \ 'include $(RTEMS_CUSTOM)\n' \ 'include $(PROJECT_ROOT)/make/leaf.cfg\n' \ '\n' \ 'COMMON_FLAGS += -fno-strict-aliasing\n' \ 'COMMON_FLAGS += -ffreestanding\n' \ 'COMMON_FLAGS += -fno-common\n' \ 'COMMON_FLAGS += -Irtemsbsd/include\n' \ 'COMMON_FLAGS += -Irtemsbsd/$(RTEMS_CPU)/include\n' \ 'COMMON_FLAGS += -Ifreebsd/sys\n' \ 'COMMON_FLAGS += -Ifreebsd/sys/$(RTEMS_CPU)/include\n' \ 'COMMON_FLAGS += -Ifreebsd/sys/contrib/altq\n' \ 'COMMON_FLAGS += -Ifreebsd/sys/contrib/pf\n' \ 'COMMON_FLAGS += -Ifreebsd/include\n' \ 'COMMON_FLAGS += -Ifreebsd/lib/libc/include\n' \ 'COMMON_FLAGS += -Ifreebsd/lib/libc/isc/include\n' \ 'COMMON_FLAGS += -Ifreebsd/lib/libc/resolv\n' \ 'COMMON_FLAGS += -Ifreebsd/lib/libutil\n' \ 'COMMON_FLAGS += -Ifreebsd/lib/libkvm\n' \ 'COMMON_FLAGS += -Ifreebsd/lib/libmemstat\n' \ 'COMMON_FLAGS += -Ifreebsd/lib/libipsec\n' \ 'COMMON_FLAGS += -Irtemsbsd/sys\n' \ 'COMMON_FLAGS += -ImDNSResponder/mDNSCore\n' \ 'COMMON_FLAGS += -ImDNSResponder/mDNSShared\n' \ 'COMMON_FLAGS += -ImDNSResponder/mDNSPosix\n' \ 'COMMON_FLAGS += -Itestsuite/include\n' \ 'COMMON_FLAGS += -DHAVE_RTEMS_PCI_H=1\n' \ 'COMMON_FLAGS += -Wall\n' \ 'COMMON_FLAGS += -Wno-format\n' \ 'COMMON_FLAGS += -MT $@ -MD -MP -MF $(basename $@).d\n' \ 'CFLAGS += $(COMMON_FLAGS)\n' \ 'CFLAGS += -std=gnu11\n' \ 'CXXFLAGS += $(COMMON_FLAGS)\n' \ 'CXXFLAGS += -std=gnu++11\n' \ 'NEED_DUMMY_PIC_IRQ=yes\n' \ '\n' \ 'TEST_NETWORK_CONFIG = testsuite/include/rtems/bsd/test/network-config.h\n' \ '\n' \ 'TESTS =\n' \ 'RUN_TESTS =\n' \ '\n' \ 'NET_TESTS =\n' \ 'RUN_NET_TESTS =\n' \ '\n' \ 'O_FILES =\n' \ 'D_FILES =\n' \ '\n' \ 'LIB = libbsd.a\n' \ 'LIB_GEN_FILES =\n' \ 'LIB_C_FILES =\n' \ 'LIB_CXX_FILES =\n' \ 'LIB_CXX_FILES += rtemsbsd/rtems/rtems-bsd-cxx.cc\n' for mn in self.getModules(): m = self[mn] if m.conditionalOn != "none": data += 'ifneq ($(' + m.conditionalOn + '),yes)\n' for f in m.files: data += f.getFragment() for cpu, files in sorted(m.cpuDependentSourceFiles.items()): data += 'ifeq ($(RTEMS_CPU), ' + cpu + ')\n' for f in files: data += f.getFragment() if cpu in ("arm", "i386", "lm32", "mips", "powerpc", "sparc", "m68k"): data += 'NEED_DUMMY_PIC_IRQ=no\n' data += 'endif\n' if m.conditionalOn != "none": data += 'endif # ' + m.conditionalOn + '\n' data += '\n' \ 'ifeq ($(NEED_DUMMY_PIC_IRQ),yes)\n' \ 'CFLAGS += -I rtems-dummy-pic-irq/include\n' \ 'endif\n' \ 'LIB_O_FILES = $(LIB_C_FILES:%.c=%.o) $(LIB_CXX_FILES:%.cc=%.o)\n' \ 'O_FILES += $(LIB_O_FILES)\n' \ 'D_FILES += $(LIB_C_FILES:%.c=%.d) $(LIB_CXX_FILES:%.cc=%.d)\n' \ '\n' \ 'all: $(LIB) $(TESTS) $(TEST_NETWORK_CONFIG) $(NET_TESTS)\n' \ '\n' \ '$(LIB): $(LIB_GEN_FILES) $(LIB_O_FILES)\n' \ '\trm -f $@\n' \ '\t$(AR) rcu $@ $^\n' \ '\n' \ 'run_tests: $(RUN_TESTS)\n' \ '\t$(TEST_RUNNER) $^\n' \ '\tcheck_endof\n' \ '\n' \ 'run_net_tests: $(RUN_NET_TESTS)\n' \ '\t$(TEST_RUNNER) -N -T $(NET_TAP_INTERFACE) $^\n' \ '\tcheck_endof\n' \ '\n' \ '$(TEST_NETWORK_CONFIG): $(TEST_NETWORK_CONFIG).in config.inc\n' \ '\tsed -e \'s/@NET_CFG_SELF_IP@/$(NET_CFG_SELF_IP)/\' \\\n' \ '\t-e \'s/@NET_CFG_NETMASK@/$(NET_CFG_NETMASK)/\' \\\n' \ '\t-e \'s/@NET_CFG_PEER_IP@/$(NET_CFG_PEER_IP)/\' \\\n' \ '\t-e \'s/@NET_CFG_GATEWAY_IP@/$(NET_CFG_GATEWAY_IP)/\' \\\n' \ '\t< $< > $@\n' \ '\n' \ 'CPU_SED = sed\n' \ 'CPU_SED += -e \'/arm/d\'\n' \ 'CPU_SED += -e \'/i386/d\'\n' \ 'CPU_SED += -e \'/powerpc/d\'\n' \ 'CPU_SED += -e \'/mips/d\'\n' \ 'CPU_SED += -e \'/sparc64/d\'\n' \ '\n' \ 'LIB_DIR = $(INSTALL_BASE)/lib\n' \ 'INCLUDE_DIR = $(INSTALL_BASE)/lib/include\n' \ '\n' \ 'install: $(LIB)\n' \ '\tinstall -d $(LIB_DIR)\n' \ '\tinstall -m 644 $(LIB) $(LIB_DIR)\n' \ '\tcd rtemsbsd/include ; for i in `find . -type d` ; do \\\n' \ '\t install -d $(INCLUDE_DIR)/$$i ; \\\n' \ '\t install -m 644 $$i/*.h $(INCLUDE_DIR)/$$i ; done\n' \ '\tinstall -d $(INCLUDE_DIR)/mghttpd\n' \ '\tinstall -m 644 rtemsbsd/mghttpd/mongoose.h $(INCLUDE_DIR)/mghttpd\n' \ '\tcd freebsd/include ; for i in `find . -type d` ; do \\\n' \ '\t install -d $(INCLUDE_DIR)/$$i ; \\\n' \ '\t install -m 644 $$i/*.h $(INCLUDE_DIR)/$$i ; done\n' \ '\tcd freebsd/sys/contrib/altq ; \\\n' \ '\t install -d $(INCLUDE_DIR)/altq ; \\\n' \ '\t install -m 644 altq/*.h $(INCLUDE_DIR)/altq\n' \ '\tfor i in bsm cam net net80211 netatalk netinet netinet6 netipsec sys vm ; do \\\n' \ '\t install -d $(INCLUDE_DIR)/$$i ; \\\n' \ '\t install -m 644 freebsd/sys/$$i/*.h $(INCLUDE_DIR)/$$i ; done\n' \ '\tcd freebsd/sys/dev/mii ; \\\n' \ '\t install -d $(INCLUDE_DIR)/dev/mii ; \\\n' \ '\t install -m 644 *.h $(INCLUDE_DIR)/dev/mii\n' \ '\tinstall -m 644 mDNSResponder/mDNSCore/mDNSDebug.h $(INCLUDE_DIR)\n' \ '\tinstall -m 644 mDNSResponder/mDNSCore/mDNSEmbeddedAPI.h $(INCLUDE_DIR)\n' \ '\tinstall -m 644 mDNSResponder/mDNSShared/dns_sd.h $(INCLUDE_DIR)\n' \ '\tinstall -m 644 mDNSResponder/mDNSPosix/mDNSPosix.h $(INCLUDE_DIR)\n' \ '\n' \ 'clean:\n' \ '\trm -f $(LIB_GEN_FILES) $(LIB) $(TESTS) $(O_FILES) $(D_FILES)\n' \ '\trm -f libbsd.html\n' \ '\n' \ '-include $(D_FILES)\n' \ '\n' \ 'doc: libbsd.html\n' \ '\n' \ 'libbsd.html: libbsd.txt\n' \ '\tasciidoc -o libbsd.html libbsd.txt\n' try: out = tempfile.NamedTemporaryFile(delete=False) out.write(data) out.close() makefile = builder.RTEMS_DIR + '/Makefile' builder.processIfDifferent(out.name, makefile, "Makefile") finally: try: os.remove(out.name) except: pass
def generate(self): data = 'include config.inc\n' \ '\n' \ 'RTEMS_MAKEFILE_PATH = $(PREFIX)/$(TARGET)/$(BSP)\n' \ 'include $(RTEMS_MAKEFILE_PATH)/Makefile.inc\n' \ 'include $(RTEMS_CUSTOM)\n' \ 'include $(PROJECT_ROOT)/make/leaf.cfg\n' \ '\n' \ 'COMMON_FLAGS += -fno-strict-aliasing\n' \ 'COMMON_FLAGS += -ffreestanding\n' \ 'COMMON_FLAGS += -fno-common\n' \ 'COMMON_FLAGS += -Irtemsbsd/include\n' \ 'COMMON_FLAGS += -Irtemsbsd/$(RTEMS_CPU)/include\n' \ 'COMMON_FLAGS += -Ifreebsd/sys\n' \ 'COMMON_FLAGS += -Ifreebsd/sys/$(RTEMS_CPU)/include\n' \ 'COMMON_FLAGS += -Ifreebsd/sys/contrib/altq\n' \ 'COMMON_FLAGS += -Ifreebsd/sys/contrib/pf\n' \ 'COMMON_FLAGS += -Ifreebsd/include\n' \ 'COMMON_FLAGS += -Ifreebsd/lib/libc/include\n' \ 'COMMON_FLAGS += -Ifreebsd/lib/libc/isc/include\n' \ 'COMMON_FLAGS += -Ifreebsd/lib/libc/resolv\n' \ 'COMMON_FLAGS += -Ifreebsd/lib/libutil\n' \ 'COMMON_FLAGS += -Ifreebsd/lib/libkvm\n' \ 'COMMON_FLAGS += -Ifreebsd/lib/libmemstat\n' \ 'COMMON_FLAGS += -Ifreebsd/lib/libipsec\n' \ 'COMMON_FLAGS += -Irtemsbsd/sys\n' \ 'COMMON_FLAGS += -ImDNSResponder/mDNSCore\n' \ 'COMMON_FLAGS += -ImDNSResponder/mDNSShared\n' \ 'COMMON_FLAGS += -ImDNSResponder/mDNSPosix\n' \ 'COMMON_FLAGS += -Itestsuite/include\n' \ 'COMMON_FLAGS += -DHAVE_RTEMS_PCI_H=1\n' \ 'COMMON_FLAGS += -Wall\n' \ 'COMMON_FLAGS += -Wno-format\n' \ 'COMMON_FLAGS += -MT $@ -MD -MP -MF $(basename $@).d\n' \ 'CFLAGS += $(COMMON_FLAGS)\n' \ 'CFLAGS += -std=gnu11\n' \ 'CXXFLAGS += $(COMMON_FLAGS)\n' \ 'CXXFLAGS += -std=gnu++11\n' \ 'NEED_DUMMY_PIC_IRQ=yes\n' \ '\n' \ 'TEST_NETWORK_CONFIG = testsuite/include/rtems/bsd/test/network-config.h\n' \ '\n' \ 'TESTS =\n' \ 'RUN_TESTS =\n' \ '\n' \ 'NET_TESTS =\n' \ 'RUN_NET_TESTS =\n' \ '\n' \ 'O_FILES =\n' \ 'D_FILES =\n' \ '\n' \ 'LIB = libbsd.a\n' \ 'LIB_GEN_FILES =\n' \ 'LIB_C_FILES =\n' \ 'LIB_CXX_FILES =\n' \ 'LIB_CXX_FILES += rtemsbsd/rtems/rtems-bsd-cxx.cc\n' for mn in self.getModules(): m = self[mn] if m.conditionalOn != "none": data += 'ifneq ($(' + m.conditionalOn + '),yes)\n' for f in m.files: data += f.getFragment() for cpu, files in sorted(m.cpuDependentSourceFiles.items()): data += 'ifeq ($(RTEMS_CPU), ' + cpu + ')\n' for f in files: data += f.getFragment() if cpu in ("arm", "i386", "lm32", "mips", "powerpc", "sparc", "m68k"): data += 'NEED_DUMMY_PIC_IRQ=no\n' data += 'endif\n' if m.conditionalOn != "none": data += 'endif # ' + m.conditionalOn +'\n' data += '\n' \ 'ifeq ($(NEED_DUMMY_PIC_IRQ),yes)\n' \ 'CFLAGS += -I rtems-dummy-pic-irq/include\n' \ 'endif\n' \ 'LIB_O_FILES = $(LIB_C_FILES:%.c=%.o) $(LIB_CXX_FILES:%.cc=%.o)\n' \ 'O_FILES += $(LIB_O_FILES)\n' \ 'D_FILES += $(LIB_C_FILES:%.c=%.d) $(LIB_CXX_FILES:%.cc=%.d)\n' \ '\n' \ 'all: $(LIB) $(TESTS) $(TEST_NETWORK_CONFIG) $(NET_TESTS)\n' \ '\n' \ '$(LIB): $(LIB_GEN_FILES) $(LIB_O_FILES)\n' \ '\trm -f $@\n' \ '\t$(AR) rcu $@ $^\n' \ '\n' \ 'run_tests: $(RUN_TESTS)\n' \ '\t$(TEST_RUNNER) $^\n' \ '\tcheck_endof\n' \ '\n' \ 'run_net_tests: $(RUN_NET_TESTS)\n' \ '\t$(TEST_RUNNER) -N -T $(NET_TAP_INTERFACE) $^\n' \ '\tcheck_endof\n' \ '\n' \ '$(TEST_NETWORK_CONFIG): $(TEST_NETWORK_CONFIG).in config.inc\n' \ '\tsed -e \'s/@NET_CFG_SELF_IP@/$(NET_CFG_SELF_IP)/\' \\\n' \ '\t-e \'s/@NET_CFG_NETMASK@/$(NET_CFG_NETMASK)/\' \\\n' \ '\t-e \'s/@NET_CFG_PEER_IP@/$(NET_CFG_PEER_IP)/\' \\\n' \ '\t-e \'s/@NET_CFG_GATEWAY_IP@/$(NET_CFG_GATEWAY_IP)/\' \\\n' \ '\t< $< > $@\n' \ '\n' \ 'CPU_SED = sed\n' \ 'CPU_SED += -e \'/arm/d\'\n' \ 'CPU_SED += -e \'/i386/d\'\n' \ 'CPU_SED += -e \'/powerpc/d\'\n' \ 'CPU_SED += -e \'/mips/d\'\n' \ 'CPU_SED += -e \'/sparc64/d\'\n' \ '\n' \ 'LIB_DIR = $(INSTALL_BASE)/lib\n' \ 'INCLUDE_DIR = $(INSTALL_BASE)/lib/include\n' \ '\n' \ 'install: $(LIB)\n' \ '\tinstall -d $(LIB_DIR)\n' \ '\tinstall -m 644 $(LIB) $(LIB_DIR)\n' \ '\tcd rtemsbsd/include ; for i in `find . -type d` ; do \\\n' \ '\t install -d $(INCLUDE_DIR)/$$i ; \\\n' \ '\t install -m 644 $$i/*.h $(INCLUDE_DIR)/$$i ; done\n' \ '\tinstall -d $(INCLUDE_DIR)/mghttpd\n' \ '\tinstall -m 644 rtemsbsd/mghttpd/mongoose.h $(INCLUDE_DIR)/mghttpd\n' \ '\tcd freebsd/include ; for i in `find . -type d` ; do \\\n' \ '\t install -d $(INCLUDE_DIR)/$$i ; \\\n' \ '\t install -m 644 $$i/*.h $(INCLUDE_DIR)/$$i ; done\n' \ '\tcd freebsd/sys/contrib/altq ; \\\n' \ '\t install -d $(INCLUDE_DIR)/altq ; \\\n' \ '\t install -m 644 altq/*.h $(INCLUDE_DIR)/altq\n' \ '\tfor i in bsm cam net net80211 netatalk netinet netinet6 netipsec sys vm ; do \\\n' \ '\t install -d $(INCLUDE_DIR)/$$i ; \\\n' \ '\t install -m 644 freebsd/sys/$$i/*.h $(INCLUDE_DIR)/$$i ; done\n' \ '\tcd freebsd/sys/dev/mii ; \\\n' \ '\t install -d $(INCLUDE_DIR)/dev/mii ; \\\n' \ '\t install -m 644 *.h $(INCLUDE_DIR)/dev/mii\n' \ '\tinstall -m 644 mDNSResponder/mDNSCore/mDNSDebug.h $(INCLUDE_DIR)\n' \ '\tinstall -m 644 mDNSResponder/mDNSCore/mDNSEmbeddedAPI.h $(INCLUDE_DIR)\n' \ '\tinstall -m 644 mDNSResponder/mDNSShared/dns_sd.h $(INCLUDE_DIR)\n' \ '\tinstall -m 644 mDNSResponder/mDNSPosix/mDNSPosix.h $(INCLUDE_DIR)\n' \ '\n' \ 'clean:\n' \ '\trm -f $(LIB_GEN_FILES) $(LIB) $(TESTS) $(O_FILES) $(D_FILES)\n' \ '\trm -f libbsd.html\n' \ '\n' \ '-include $(D_FILES)\n' \ '\n' \ 'doc: libbsd.html\n' \ '\n' \ 'libbsd.html: libbsd.txt\n' \ '\tasciidoc -o libbsd.html libbsd.txt\n' try: out = tempfile.NamedTemporaryFile(delete = False) out.write(data) out.close() makefile = builder.RTEMS_DIR + '/Makefile' builder.processIfDifferent(out.name, makefile, "Makefile") finally: try: os.remove(out.name) except: pass