From fbfe56ba11baf48575cfc02fb1000fa2000b782f Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Tue, 16 Jun 2015 01:25:02 -0500 Subject: fix h8/300 userland build --- mk/vars.mk | 2 ++ package/busybox/Makefile | 2 +- package/busybox/config/Config.in | 2 +- package/sash/Makefile | 2 +- package/sash/src/Makefile | 6 +++--- target/config/Config.in.libc.choice | 2 ++ target/h8300/Makefile | 34 ++++++++++++++++++++++++++++++++++ target/h8300/systems/sim-h8300h | 3 ++- 8 files changed, 46 insertions(+), 7 deletions(-) diff --git a/mk/vars.mk b/mk/vars.mk index 170580396..0a551fbd3 100644 --- a/mk/vars.mk +++ b/mk/vars.mk @@ -177,7 +177,9 @@ endif ifeq ($(ADK_TARGET_ARCH_H8300),y) TARGET_CFLAGS+= -mh +TARGET_LDFLAGS+= -mh ifeq ($(ADK_TARGET_BINFMT_FLAT),y) +TARGET_LDFLAGS+= -Wl,-elf2flt TARGET_CFLAGS+= -Wl,-elf2flt TARGET_CXXFLAGS+= -Wl,-elf2flt endif diff --git a/package/busybox/Makefile b/package/busybox/Makefile index 25dae3d21..a97c1ae3d 100644 --- a/package/busybox/Makefile +++ b/package/busybox/Makefile @@ -41,7 +41,7 @@ do-configure: symbol=$$(echo $$sym|sed -e "s#=y##"); \ printf "# CONFIG_$${symbol} is not set\n" >> ${WRKBUILD}/.config; \ done -ifneq ($(ADK_TARGET_WITH_MMU),y) +ifeq ($(ADK_TARGET_WITHOUT_MMU),y) echo 'CONFIG_NOMMU=y' >> ${WRKBUILD}/.config endif $(SED) 's;@IDIR@;${WRKINST};' ${WRKBUILD}/.config diff --git a/package/busybox/config/Config.in b/package/busybox/config/Config.in index f743bd59f..54d4e1120 100644 --- a/package/busybox/config/Config.in +++ b/package/busybox/config/Config.in @@ -518,7 +518,7 @@ config BUSYBOX_PIE config BUSYBOX_NOMMU bool "Force NOMMU build" - default y if ADK_TARGET_UCLINUX + default y if ADK_TARGET_WITHOUT_MMU default n help Busybox tries to detect whether architecture it is being diff --git a/package/sash/Makefile b/package/sash/Makefile index 337cb166c..5ea50432a 100644 --- a/package/sash/Makefile +++ b/package/sash/Makefile @@ -5,7 +5,7 @@ include ${ADK_TOPDIR}/rules.mk PKG_NAME:= sash PKG_VERSION:= 1.0 -PKG_RELEASE:= 2 +PKG_RELEASE:= 3 PKG_DESCR:= standalone shell PKG_SECTION:= base/shells diff --git a/package/sash/src/Makefile b/package/sash/src/Makefile index 90d6adf99..a7bd5894a 100644 --- a/package/sash/src/Makefile +++ b/package/sash/src/Makefile @@ -19,13 +19,13 @@ CFLAGS += -DCOMMAND_HISTORY all: $(SH) $(SHUTDOWN) $(REBOOT) $(SH): $(SHOBJS) $(LIBSASH) - $(CC) $(LDFLAGS) -o $@ $(SHOBJS) $(LIBSASH) $(LDLIBS$(LDLIBS_$@)) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(SHOBJS) $(LIBSASH) $(LDLIBS$(LDLIBS_$@)) $(SHUTDOWN): $(SHUTDOWNOBJS) $(LIBSASH) - $(CC) $(LDFLAGS) -o $@ $(SHUTDOWNOBJS) $(LIBSASH) $(LDLIBS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(SHUTDOWNOBJS) $(LIBSASH) $(LDLIBS) $(REBOOT): $(REBOOTOBJS) $(LIBSASH) - $(CC) $(LDFLAGS) -o $@ $(REBOOTOBJS) $(LIBSASH) $(LDLIBS$(LDLIBS_$@)) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(REBOOTOBJS) $(LIBSASH) $(LDLIBS$(LDLIBS_$@)) dummy_target: diff --git a/target/config/Config.in.libc.choice b/target/config/Config.in.libc.choice index 112408b0a..a49f4b5ba 100644 --- a/target/config/Config.in.libc.choice +++ b/target/config/Config.in.libc.choice @@ -38,8 +38,10 @@ config ADK_TARGET_LIB_GLIBC depends on !ADK_TARGET_ARCH_AVR32 depends on !ADK_TARGET_ARCH_BFIN depends on !ADK_TARGET_ARCH_CRIS + depends on !ADK_TARGET_ARCH_H8300 depends on !ADK_TARGET_ARCH_XTENSA depends on !ADK_TARGET_UCLINUX + depends on !ADK_TARGET_WITHOUT_MMU help http://www.gnu.org/libc diff --git a/target/h8300/Makefile b/target/h8300/Makefile index ebc17340e..9da5ca266 100644 --- a/target/h8300/Makefile +++ b/target/h8300/Makefile @@ -7,3 +7,37 @@ include $(ADK_TOPDIR)/mk/modules.mk include $(ADK_TOPDIR)/mk/kernel-build.mk include $(ADK_TOPDIR)/mk/image.mk +KERNEL:=$(LINUX_DIR)/vmlinux + +# target helper text +ifeq ($(ADK_TARGET_FS),initramfs) +targethelp: + @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' + @echo 'The initramfs image is: ${FW_DIR}/${INITRAMFS}' +endif +ifeq ($(ADK_TARGET_FS),initramfsarchive) +targethelp: + @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' + @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)" +endif +ifeq ($(ADK_TARGET_FS),initramfspiggyback) +targethelp: + @echo 'The kernel+initramfs file is: $(FW_DIR)/${TARGET_KERNEL}' +endif + +kernel-strip: + @cp $(KERNEL) $(BUILD_DIR)/$(TARGET_KERNEL) + +kernel-install: kernel-strip + @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) + +# filesystem specific targets +ifeq ($(ADK_TARGET_FS),initramfs) +imageinstall: kernel-install $(FW_DIR)/$(INITRAMFS) targethelp +endif +ifeq ($(ADK_TARGET_FS),initramfsarchive) +imageinstall: kernel-install $(FW_DIR)/$(ROOTFSUSERTARBALL) targethelp +endif +ifeq ($(ADK_TARGET_FS),initramfspiggyback) +imageinstall: createinitramfs targethelp +endif diff --git a/target/h8300/systems/sim-h8300h b/target/h8300/systems/sim-h8300h index 8583f4581..f75e14599 100644 --- a/target/h8300/systems/sim-h8300h +++ b/target/h8300/systems/sim-h8300h @@ -1,7 +1,8 @@ config ADK_TARGET_SYSTEM_SIM_H8300H bool "Simulator" select ADK_CPU_H8300 + select ADK_TARGET_SIM select ADK_TARGET_PACKAGE_TXZ help - H8/300 simulator. + H8/300 GDB simulator. -- cgit v1.2.3