diff options
Diffstat (limited to 'mk')
-rw-r--r-- | mk/build.mk | 18 | ||||
-rw-r--r-- | mk/fetch.mk | 2 | ||||
-rw-r--r-- | mk/host-bottom.mk | 16 | ||||
-rw-r--r-- | mk/image.mk | 107 | ||||
-rw-r--r-- | mk/kernel-build.mk | 15 | ||||
-rw-r--r-- | mk/kernel-vars.mk | 16 | ||||
-rw-r--r-- | mk/linux-ver.mk | 50 | ||||
-rw-r--r-- | mk/linux.mk | 4 | ||||
-rw-r--r-- | mk/mirrors.mk | 30 | ||||
-rw-r--r-- | mk/perl.mk | 2 | ||||
-rw-r--r-- | mk/pkg-bottom.mk | 13 | ||||
-rw-r--r-- | mk/python.mk | 3 | ||||
-rw-r--r-- | mk/python3.mk | 2 | ||||
-rw-r--r-- | mk/vars.mk | 36 |
14 files changed, 190 insertions, 124 deletions
diff --git a/mk/build.mk b/mk/build.mk index 1fe387598..89c7303bf 100644 --- a/mk/build.mk +++ b/mk/build.mk @@ -33,8 +33,6 @@ DEFCONFIG= ADK_DEBUG=n \ ADK_TARGET_USE_SSP=n \ ADK_TOOLCHAIN_WITH_LTO=n \ ADK_TARGET_USE_LTO=n \ - ADK_TOOLCHAIN_WITH_GOLD=n \ - ADK_TARGET_USE_GOLD=n \ ADK_TARGET_USE_GNU_HASHSTYLE=n \ ADK_TARGET_USE_PIE=n \ ADK_TARGET_USE_STATIC_LIBS_ONLY=n \ @@ -103,6 +101,12 @@ POSTCONFIG= -@\ rebuild=1;\ fi; \ done; \ + for i in ADK_TARGET_DUAL_BOOT ADK_TARGET_QEMU_WITH_GRAPHIC;do \ + if [ "$$(grep ^$$i .config|md5sum)" != "$$(grep ^$$i .config.old|md5sum)" ];then \ + touch .rebuild.grub;\ + rebuild=1;\ + fi; \ + done; \ for i in ADK_TARGET_GPU_MEM ADK_LINUX_KERNEL_SND_BCM2708;do \ if [ "$$(grep ^$$i .config|md5sum)" != "$$(grep ^$$i .config.old|md5sum)" ];then \ touch .rebuild.bcm28xx-bootloader;\ @@ -181,9 +185,13 @@ ifeq ($(ADK_TARGET_OS_BAREMETAL),y) $(MAKE) -f mk/build.mk package/hostcompile toolchain/final endif ifeq ($(ADK_TARGET_OS_LINUX),y) +ifeq ($(ADK_TARGET_NO_KERNEL),y) + $(MAKE) -f mk/build.mk package/hostcompile toolchain/final package_clean package/compile root_clean package/install package_index +else $(MAKE) -f mk/build.mk package/hostcompile toolchain/final target/config-prepare target/compile package_clean package/compile root_clean package/install target/install package_index endif endif +endif package_index: ifeq ($(ADK_TARGET_PACKAGE_IPKG),y) @@ -632,13 +640,13 @@ distclean cleandir: endif # ! ifeq ($(strip $(ADK_HAVE_DOT_CONFIG)),y) $(ADK_TOPDIR)/adk/tools/pkgmaker: $(ADK_TOPDIR)/adk/tools/pkgmaker.c $(ADK_TOPDIR)/adk/tools/sortfile.c $(ADK_TOPDIR)/adk/tools/strmap.c - @$(HOST_CC) $(HOST_CFLAGS) -o $@ adk/tools/pkgmaker.c adk/tools/sortfile.c adk/tools/strmap.c + @$(HOST_CC) $(HOST_CFLAGS) -w -o $@ adk/tools/pkgmaker.c adk/tools/sortfile.c adk/tools/strmap.c $(ADK_TOPDIR)/adk/tools/pkgrebuild: $(ADK_TOPDIR)/adk/tools/pkgrebuild.c $(ADK_TOPDIR)/adk/tools/strmap.c - @$(HOST_CC) $(HOST_CFLAGS) -o $@ adk/tools/pkgrebuild.c adk/tools/strmap.c + @$(HOST_CC) $(HOST_CFLAGS) -w -o $@ adk/tools/pkgrebuild.c adk/tools/strmap.c $(ADK_TOPDIR)/adk/tools/depmaker: $(ADK_TOPDIR)/adk/tools/depmaker.c - @$(HOST_CC) $(HOST_CFLAGS) -o $@ $(ADK_TOPDIR)/adk/tools/depmaker.c + @$(HOST_CC) $(HOST_CFLAGS) -w -o $@ $(ADK_TOPDIR)/adk/tools/depmaker.c menu .menu: $(wildcard package/*/Makefile) $(wildcard target/*/systems) $(wildcard target/*/systems/*) $(ADK_TOPDIR)/adk/tools/pkgmaker $(ADK_TOPDIR)/adk/tools/pkgrebuild $(wildcard tasks/*) @printf " ---> generating menu structure.. " diff --git a/mk/fetch.mk b/mk/fetch.mk index 0d3e90a34..bc6838256 100644 --- a/mk/fetch.mk +++ b/mk/fetch.mk @@ -92,7 +92,7 @@ $(1): (cd $${PKG_NAME}-$${PKG_VERSION}; git submodule update --init --recursive) $(DL_TRACE); \ fi; \ rm -rf $${PKG_NAME}-$${PKG_VERSION}/.git; \ - PATH='$(HOST_PATH)' tar cJf $${PKG_NAME}-$${PKG_VERSION}.tar.xz $${PKG_NAME}-$${PKG_VERSION}; \ + PATH='$(HOST_PATH)' tar czf $${PKG_NAME}-$${PKG_VERSION}.tar.gz $${PKG_NAME}-$${PKG_VERSION}; \ touch $$$${filename}.nohash; \ rm -rf $${PKG_NAME}-$${PKG_VERSION}; \ : check the size here; \ diff --git a/mk/host-bottom.mk b/mk/host-bottom.mk index 9daf8f7c6..26526dff9 100644 --- a/mk/host-bottom.mk +++ b/mk/host-bottom.mk @@ -61,11 +61,13 @@ ifeq (${HOST_CONFIG_STYLE},cmake) endif ifeq (${HOST_CONFIG_STYLE},meson) @$(CMD_TRACE) "configuring meson.. " - cd ${WRKSRC}; PATH='${HOST_PATH}' \ - meson --prefix $(STAGING_HOST_DIR)/usr \ + cd ${WRKSRC}; env PATH='${HOST_PATH}' CPPFLAGS='$(HOST_CPPFLAGS)' \ + LDFLAGS='$(HOST_LDFLAGS)' CFLAGS='$(HOST_CFLAGS)' \ + meson setup --prefix $(STAGING_HOST_DIR)/usr \ --pkg-config-path $(STAGING_HOST_DIR)/usr/lib/pkgconfig \ - --buildtype release $(MESON_FLAGS) \ - $(WRKSRC) $(WRKBUILD) + --buildtype release $(HOST_MESON_FLAGS) \ + --wrap-mode=nodownload \ + $(WRKSRC) $(WRKBUILD) $(MAKE_TRACE) endif ifeq (${HOST_CONFIG_STYLE},perl) @$(CMD_TRACE) "configuring perl module.. " @@ -86,7 +88,7 @@ host-build: ${_HOST_BUILD_COOKIE}: ${_HOST_CONFIGURE_COOKIE} @$(CMD_TRACE) "compiling.. " ifneq ($(filter meson,${HOST_STYLE}),) - PATH='$(HOST_PATH)' ninja -v -C $(WRKBUILD) + PATH='$(HOST_PATH)' LD_LIBRARY_PATH='$(STAGING_HOST_DIR)/usr/lib' ninja -v -C $(WRKBUILD) $(MAKE_TRACE) else ifneq (${HOST_STYLE},manual) cd ${WRKBUILD} && env ${HOST_MAKE_ENV} ${MAKE} -j${ADK_MAKE_JOBS} -f ${MAKE_FILE} \ ${HOST_MAKE_FLAGS} ${HOST_ALL_TARGET} $(MAKE_TRACE) @@ -109,6 +111,10 @@ ifeq (${HOST_INSTALL_STYLE},auto) cd ${WRKBUILD} && env ${HOST_MAKE_ENV} ${MAKE} -f ${MAKE_FILE} \ DESTDIR='${STAGING_HOST_DIR}' ${HOST_FAKE_FLAGS} ${HOST_INSTALL_TARGET} $(MAKE_TRACE) endif +ifeq (${HOST_INSTALL_STYLE},meson) + DESTDIR='' PATH='$(HOST_PATH)' \ + ninja -C $(WRKBUILD) install $(MAKE_TRACE) +endif ifeq (${HOST_INSTALL_STYLE},manual) env ${HOST_MAKE_ENV} ${MAKE} host-install $(MAKE_TRACE) endif diff --git a/mk/image.mk b/mk/image.mk index bc1fe5223..d2059c5cc 100644 --- a/mk/image.mk +++ b/mk/image.mk @@ -13,6 +13,8 @@ ifeq (${ADK_BINSH_ASH},y) BINSH:=ash else ifeq (${ADK_BINSH_BASH},y) BINSH:=bash +else ifeq (${ADK_BINSH_TOYSH},y) +BINSH:=toysh else ifeq (${ADK_BINSH_SASH},y) BINSH:=sash else ifeq (${ADK_BINSH_HUSH},y) @@ -30,6 +32,8 @@ ifeq (${ADK_ROOTSH_ASH},y) ROOTSH:=/bin/ash else ifeq (${ADK_ROOTSH_BASH},y) ROOTSH:=/bin/bash +else ifeq (${ADK_ROOTSH_TOYSH},y) +ROOTSH:=/bin/toysh else ifeq (${ADK_ROOTSH_SASH},y) ROOTSH:=/bin/sash else ifeq (${ADK_ROOTSH_HUSH},y) @@ -98,7 +102,7 @@ ifneq ($(ADK_TARGET_ARCH_AARCH64)$(ADK_TARGET_ARCH_X86_64)$(ADK_TARGET_ARCH_PPC6 test ! -d ${TARGET_DIR}/usr/lib || rm -rf ${TARGET_DIR}/usr/lib/ (cd ${TARGET_DIR}/usr ; ln -sf ${ADK_TARGET_LIBC_PATH} lib) endif -ifeq ($(ADK_TARGET_ARCH_S390),y) +ifeq ($(ADK_TARGET_ARCH_LOONGARCH)$(ADK_TARGET_ARCH_S390),y) (cd ${TARGET_DIR}/; ln -sf lib lib64) endif @@ -122,8 +126,8 @@ INITRAMFS= ${ADK_TARGET_SYSTEM}-${ADK_TARGET_LIBC}-${ADK_TARGET_FS} ROOTFSSQUASHFS= ${ADK_TARGET_SYSTEM}-${ADK_TARGET_LIBC}-${ADK_TARGET_FS}.img ROOTFSJFFS2= ${ADK_TARGET_SYSTEM}-${ADK_TARGET_LIBC}-jffs2.img ROOTFSUBIFS= ${ADK_TARGET_SYSTEM}-${ADK_TARGET_LIBC}-ubifs.img -ROOTFSTARBALL= ${ADK_TARGET_SYSTEM}-${ADK_TARGET_LIBC}-${ADK_TARGET_FS}+kernel.tar.xz -ROOTFSUSERTARBALL= ${ADK_TARGET_SYSTEM}-${ADK_TARGET_LIBC}-${ADK_TARGET_FS}.tar.xz +ROOTFSTARBALL= ${ADK_TARGET_SYSTEM}-${ADK_TARGET_LIBC}-${ADK_TARGET_FS}+kernel.tar.gz +ROOTFSUSERTARBALL= ${ADK_TARGET_SYSTEM}-${ADK_TARGET_LIBC}-${ADK_TARGET_FS}.tar.gz ROOTFSISO= ${ADK_TARGET_SYSTEM}-${ADK_TARGET_LIBC}.iso kernel-package: kernel-strip @@ -145,14 +149,14 @@ endif ${FW_DIR}/${ROOTFSTARBALL}: ${TARGET_DIR}/.adk kernel-package cd ${TARGET_DIR}; find . | sed -n '/^\.\//s///p' | sort | \ - $(CPIO) --quiet -o -Hustar --owner=0:0 | $(XZ) -c >$@ + $(CPIO) --quiet -o -Hustar --owner=0:0 | gzip -c >$@ ifeq ($(ADK_TARGET_QEMU),y) @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) endif ${FW_DIR}/${ROOTFSUSERTARBALL}: ${TARGET_DIR}/.adk cd ${TARGET_DIR}; find . | grep -v ./boot/ | sed -n '/^\.\//s///p' | sort | \ - $(CPIO) --quiet -o -Hustar --owner=0:0 | $(XZ) -c >$@ + $(CPIO) --quiet -o -Hustar --owner=0:0 | gzip -c >$@ ${STAGING_TARGET_DIR}/${INITRAMFS}_list: ${TARGET_DIR}/.adk PATH='${HOST_PATH}' $(BASH) ${SCRIPT_DIR}/gen_initramfs_list.sh -u squash -g squash \ @@ -160,13 +164,23 @@ ${STAGING_TARGET_DIR}/${INITRAMFS}_list: ${TARGET_DIR}/.adk ( \ echo "nod /dev/console 0644 0 0 c 5 1"; \ echo "nod /dev/tty 0644 0 0 c 5 0"; \ - for i in 0 1 2 3 4; do \ - echo "nod /dev/tty$$i 0644 0 0 c 4 $$$$i"; \ - done; \ - echo "nod /dev/null 0644 0 0 c 1 3"; \ + echo "nod /dev/tty0 0644 0 0 c 4 0"; \ + echo "nod /dev/tty1 0644 0 0 c 4 1"; \ + echo "nod /dev/tty2 0644 0 0 c 4 2"; \ + echo "nod /dev/tty3 0644 0 0 c 4 3"; \ + echo "nod /dev/tty4 0644 0 0 c 4 4"; \ + echo "nod /dev/tty5 0644 0 0 c 4 5"; \ + echo "nod /dev/tty6 0644 0 0 c 4 6"; \ + echo "nod /dev/tty11 0644 0 0 c 4 11"; \ + echo "nod /dev/null 0666 0 0 c 1 3"; \ + echo "nod /dev/zero 0666 0 0 c 1 5"; \ + echo "nod /dev/kmsg 0644 0 0 c 1 11"; \ echo "nod /dev/ram 0655 0 0 b 1 1"; \ + echo "nod /dev/mem 0665 0 0 c 1 1"; \ + echo "nod /dev/random 0666 0 0 c 1 8"; \ + echo "nod /dev/urandom 0666 0 0 c 1 9"; \ echo "nod /dev/ttyS0 0660 0 0 c 4 64"; \ - echo "nod /dev/ttyS1 0660 0 0 c 4 65"; \ + echo "nod /dev/ttysclp0 0660 0 0 c 4 65"; \ echo "nod /dev/ttyB0 0660 0 0 c 11 0"; \ echo "nod /dev/ttyB1 0660 0 0 c 11 1"; \ echo "nod /dev/ttyAMA0 0660 0 0 c 204 64"; \ @@ -178,6 +192,7 @@ ${STAGING_TARGET_DIR}/${INITRAMFS}_list: ${TARGET_DIR}/.adk echo "nod /dev/ttyBF1 0660 0 0 c 204 65"; \ echo "nod /dev/ttyUL0 0660 0 0 c 204 187"; \ echo "nod /dev/ttyUL1 0660 0 0 c 204 188"; \ + echo "nod /dev/ttyGF0 0660 0 0 c 254 0"; \ echo "slink /init /sbin/init 755 0 0"; \ ) >>$@ @@ -187,7 +202,7 @@ ${FW_DIR}/${INITRAMFS}: ${STAGING_TARGET_DIR}/${INITRAMFS}_list ${BUILD_DIR}/root.squashfs: ${TARGET_DIR}/.adk ${STAGING_HOST_DIR}/usr/bin/mksquashfs ${TARGET_DIR} \ - ${BUILD_DIR}/root.squashfs -comp xz \ + ${BUILD_DIR}/root.squashfs -comp gzip \ -nopad -noappend -root-owned $(MAKE_TRACE) ${FW_DIR}/${ROOTFSJFFS2}: ${TARGET_DIR} @@ -229,23 +244,17 @@ createinitramfs: ${STAGING_TARGET_DIR}/${INITRAMFS}_list echo 'CONFIG_INITRAMFS_ROOT_UID=0'; \ echo 'CONFIG_INITRAMFS_ROOT_GID=0'; \ echo 'CONFIG_INITRAMFS_IS_LARGE=n'; \ + echo 'CONFIG_INITRAMFS_PRESERVE_MTIME=n'; \ ) >> ${LINUX_DIR}/.config -ifeq ($(ADK_LINUX_KERNEL_COMP_XZ),y) +ifeq ($(ADK_LINUX_KERNEL_COMP_ZSTD),y) + echo "CONFIG_RD_XZ=n" >> ${LINUX_DIR}/.config echo "CONFIG_RD_BZIP2=n" >> ${LINUX_DIR}/.config echo "CONFIG_RD_GZIP=n" >> ${LINUX_DIR}/.config - echo "CONFIG_RD_LZMA=n" >> ${LINUX_DIR}/.config - echo "CONFIG_RD_LZ4=n" >> ${LINUX_DIR}/.config echo "CONFIG_RD_LZO=n" >> ${LINUX_DIR}/.config - echo "CONFIG_RD_XZ=y" >> ${LINUX_DIR}/.config - echo "CONFIG_RD_ZSTD=n" >> ${LINUX_DIR}/.config - echo "CONFIG_INITRAMFS_COMPRESSION_XZ=y" >> ${LINUX_DIR}/.config - echo "CONFIG_XZ_DEC_X86=n" >> ${LINUX_DIR}/.config - echo "CONFIG_XZ_DEC_POWERPC=n" >> ${LINUX_DIR}/.config - echo "CONFIG_XZ_DEC_IA64=n" >> ${LINUX_DIR}/.config - echo "CONFIG_XZ_DEC_ARM=n" >> ${LINUX_DIR}/.config - echo "CONFIG_XZ_DEC_ARMTHUMB=n" >> ${LINUX_DIR}/.config - echo "CONFIG_XZ_DEC_SPARC=n" >> ${LINUX_DIR}/.config - echo "CONFIG_XZ_DEC_TEST=n" >> ${LINUX_DIR}/.config + echo "CONFIG_RD_LZ4=n" >> ${LINUX_DIR}/.config + echo "CONFIG_RD_LZMA=n" >> ${LINUX_DIR}/.config + echo "CONFIG_RD_ZSTD=y" >> ${LINUX_DIR}/.config + echo "CONFIG_INITRAMFS_COMPRESSION_ZSTD=y" >> ${LINUX_DIR}/.config endif ifeq ($(ADK_LINUX_KERNEL_COMP_LZ4),y) echo "CONFIG_RD_XZ=n" >> ${LINUX_DIR}/.config @@ -331,12 +340,23 @@ GENCFG:=$(ADK_TOPDIR)/adk/genimage/$(ADK_TARGET_GENIMAGE_FILENAME) else GENCFG:=$(ADK_TOPDIR)/target/$(ADK_TARGET_ARCH)/$(ADK_TARGET_SYSTEM)/$(ADK_TARGET_GENIMAGE_FILENAME) endif +ifeq (,$(wildcard $(ADK_TOPDIR)/target/$(ADK_TARGET_ARCH)/$(ADK_TARGET_SYSTEM)/$(ADK_TARGET_EXTLINUX_FILENAME))) +EXTLINUX:=$(ADK_TOPDIR)/adk/extlinux/$(ADK_TARGET_EXTLINUX_FILENAME) +else +EXTLINUX:=$(ADK_TOPDIR)/target/$(ADK_TARGET_ARCH)/$(ADK_TARGET_SYSTEM)/$(ADK_TARGET_EXTLINUX_FILENAME) +endif ${FW_DIR}/${GENIMAGE}: ${TARGET_DIR} kernel-package @rm -rf ${FW_DIR}/temp @mkdir -p ${FW_DIR}/temp @$(CP) $(KERNEL) $(FW_DIR)/kernel - @dd if=/dev/zero of=${FW_DIR}/cfgfs.img bs=16384 count=1 $(MAKE_TRACE) + @dd if=/dev/zero of=${FW_DIR}/cfgfs.img bs=16384 count=1024 $(MAKE_TRACE) + mkdir -p ${FW_DIR}/extlinux + $(CP) $(EXTLINUX) $(FW_DIR)/extlinux + mkdir -p $(TARGET_DIR)/boot/extlinux + $(CP) $(EXTLINUX) $(TARGET_DIR)/boot/extlinux + $(CP) $(FW_DIR)/kernel $(TARGET_DIR)/boot + -$(CP) $(FW_DIR)/*.dtb $(TARGET_DIR)/boot 2>/dev/null ifeq ($(ADK_RUNTIME_FIX_PERMISSION),y) echo '#!/bin/sh' > $(ADK_TOPDIR)/scripts/fakeroot.sh echo "chown -R 0:0 $(TARGET_DIR)" >> $(ADK_TOPDIR)/scripts/fakeroot.sh @@ -346,23 +366,46 @@ ifeq ($(ADK_RUNTIME_FIX_PERMISSION),y) PATH='$(HOST_PATH)' $(FAKEROOT) $(ADK_TOPDIR)/scripts/fakeroot.sh rm $(ADK_TOPDIR)/scripts/fakeroot.sh $(STAGING_TARGET_DIR)/scripts/permissions.sh endif - PATH='${HOST_PATH}' $(FAKEROOT) mke2img \ - -G 4 \ +ifeq ($(ADK_TARGET_DUAL_BOOT),y) + $(CP) $(FW_DIR)/kernel $(TARGET_DIR) + -$(CP) $(FW_DIR)/*.dtb $(TARGET_DIR) 2>/dev/null + mkdir $(TARGET_DIR)/extlinux + $(CP) $(EXTLINUX) $(TARGET_DIR)/extlinux + $(SED) "s#root=.*#root=/dev/$(ADK_TARGET_ROOTDEV)p1#" $(TARGET_DIR)/extlinux/extlinux.conf + PATH='${HOST_PATH}' $(FAKEROOT) mkfs.ext2 \ + -d "$(TARGET_DIR)" \ + -r 1 -N 0 -m 5 -L "rootfs1" \ + $(FW_DIR)/rootfs1.ext "64M" $(MAKE_TRACE) + $(SED) "s#root=.*#root=/dev/$(ADK_TARGET_ROOTDEV)p2#" $(TARGET_DIR)/extlinux/extlinux.conf + PATH='${HOST_PATH}' $(FAKEROOT) mkfs.ext2 \ -d "$(TARGET_DIR)" \ - -o $(FW_DIR)/rootfs.ext $(MAKE_TRACE) + -r 1 -N 0 -m 5 -L "rootfs2" \ + $(FW_DIR)/rootfs2.ext "64M" $(MAKE_TRACE) PATH='${HOST_PATH}' genimage \ --config "$(GENCFG)" \ --tmppath "${FW_DIR}/temp" \ --rootpath "$(TARGET_DIR)" \ --inputpath "$(FW_DIR)" \ --outputpath "$(FW_DIR)" $(MAKE_TRACE) +else + PATH='${HOST_PATH}' $(FAKEROOT) mkfs.ext2 \ + -d "$(TARGET_DIR)" \ + -r 1 -N 0 -m 5 -L "rootfs" \ + $(FW_DIR)/rootfs.ext "64M" $(MAKE_TRACE) + PATH='${HOST_PATH}' genimage \ + --config "$(GENCFG)" \ + --tmppath "${FW_DIR}/temp" \ + --rootpath "$(TARGET_DIR)" \ + --inputpath "$(FW_DIR)" \ + --outputpath "$(FW_DIR)" $(MAKE_TRACE) +endif ifeq ($(ADK_TARGET_DUAL_BOOT),y) - (cd ${TARGET_DIR}; find . | grep -v ./boot/ | sed -n '/^\.\//s///p' | sort | \ + (cd ${TARGET_DIR}; find . | sed -n '/^\.\//s///p' | sort | \ PATH='${HOST_PATH}' $(CPIO) -o --quiet -Hustar --owner=0:0 | \ - ${XZ} -c > ${FW_DIR}/openadk.tar.xz) - (cd ${FW_DIR}; PATH='${HOST_PATH}' sha256sum openadk.tar.xz \ + gzip -c > ${FW_DIR}/openadk.tar.gz) + (cd ${FW_DIR}; PATH='${HOST_PATH}' sha256sum openadk.tar.gz \ | cut -d\ -f1 > sha256.txt) - (cd ${FW_DIR}; PATH='${HOST_PATH}' tar -cf ${ADK_TARGET_SYSTEM}-update.tar openadk.tar.xz sha256.txt) + (cd ${FW_DIR}; PATH='${HOST_PATH}' tar -cf ${ADK_TARGET_SYSTEM}-update.tar openadk.tar.gz sha256.txt) @rm -rf ${FW_DIR}/temp endif ifeq ($(ADK_PACKAGE_GRUB_EFI_X86)$(ADK_PACKAGE_GRUB_EFI_X86_64),y) diff --git a/mk/kernel-build.mk b/mk/kernel-build.mk index bae7ab168..29458abf0 100644 --- a/mk/kernel-build.mk +++ b/mk/kernel-build.mk @@ -17,15 +17,13 @@ KERNEL_FILE:=$(ADK_TARGET_KERNEL) KERNEL_TARGET:=$(ADK_TARGET_KERNEL) ifeq ($(ADK_TARGET_KERNEL_LINUXBIN),y) KERNEL_FILE:=vmlinux -KERNEL_TARGET:=$(ADK_TARGET_KERNEL) endif ifeq ($(ADK_TARGET_KERNEL_ZIMAGE),y) KERNEL_FILE:=vmlinux -KERNEL_TARGET:=$(ADK_TARGET_KERNEL) endif -ifeq ($(ADK_TARGET_KERNEL_VMLINUX_BOOTP),y) -KERNEL_FILE:=bootpfile -KERNEL_TARGET:=bootpfile +ifeq ($(ADK_TARGET_KERNEL_VMLINUX_EFI),y) +KERNEL_FILE:=vmlinux.efi +KERNEL_TARGET:=all endif ifeq ($(ADK_TARGET_KERNEL_VMLINUX_GZ),y) KERNEL_FILE:=vmlinux @@ -37,7 +35,6 @@ KERNEL_TARGET:=all endif ifeq ($(ADK_TARGET_KERNEL_IMAGE),y) KERNEL_FILE:=vmlinux -KERNEL_TARGET:=$(ADK_TARGET_KERNEL) endif ifeq ($(ADK_TARGET_KERNEL_SIMPLEIMAGE),y) KERNEL_FILE:=vmlinux.bin @@ -108,7 +105,6 @@ ifneq ($(KERNEL_MODULES_USED),) modules_install $(MAKE_TRACE) $(CMD_TRACE) " done" $(END_TRACE) -ifeq ($(ADK_RUNTIME_DEV_UDEV),) $(START_TRACE) "target/$(ADK_TARGET_ARCH)-kernel-modules-create-packages.. " rm -f ${PACKAGE_DIR}/kmod-* PATH='${HOST_PATH}' ${BASH} ${SCRIPT_DIR}/make-module-ipkgs.sh \ @@ -119,13 +115,14 @@ ifeq ($(ADK_RUNTIME_DEV_UDEV),) "${PACKAGE_DIR}" $(CMD_TRACE) " done" $(END_TRACE) -endif $(START_TRACE) "target/${ADK_TARGET_ARCH}-kernel-modules-install-packages.. " - for pkg in $(PACKAGE_DIR)/kmod-*; do \ + -for pkg in $(PACKAGE_DIR)/kmod-*; do \ [[ -e "$$pkg" ]] && $(PKG_INSTALL) $$pkg; \ done $(CMD_TRACE) " done" $(END_TRACE) + $(CP) $(LINUX_BUILD_DIR)/modules/lib/modules/$(KERNEL_VERSION)/modules.{order,builtin} \ + $(TARGET_DIR)/lib/modules/$(KERNEL_VERSION)/ endif clean: diff --git a/mk/kernel-vars.mk b/mk/kernel-vars.mk index 8a5d2053d..e65d513f6 100644 --- a/mk/kernel-vars.mk +++ b/mk/kernel-vars.mk @@ -15,20 +15,8 @@ KERNEL_MAKE_OPTS+= V=1 \ HOSTCC="${HOST_CC}" \ HOSTCXX="${HOST_CXX}" \ SHELL='${SHELL}' \ - CONFIG_SHELL='${SHELL}' - -# regex for relocs needs pcre -ifeq ($(OS_FOR_BUILD),Darwin) -KERNEL_MAKE_OPTS+= HOSTLDFLAGS='-lpcreposix -Wl,-no_pie' -endif - -# non-Linux platforms need elf.h -ifneq ($(OS_FOR_BUILD),Linux) -KERNEL_MAKE_OPTS+= HOSTCFLAGS='$(HOST_CPPFLAGS) ${HOST_CFLAGS}' -KERNEL_MAKE_OPTS+= HOST_EXTRACFLAGS='-I${LINUX_DIR}/tools/include -I${LINUX_DIR}/usr/include -I${LINUX_DIR}/security/selinux/include -I${ADK_TOPDIR}/adk/include -DKBUILD_NO_NLS' -else -KERNEL_MAKE_OPTS+= HOSTCFLAGS='${HOST_CFLAGS}' -endif + CONFIG_SHELL='${SHELL}' \ + HOSTCFLAGS='$(HOST_CPPFLAGS) $(HOST_CFLAGS)' ifneq ($(ADK_TARGET_KERNEL_LOADADDR),) KERNEL_MAKE_OPTS+= LOADADDR=$(ADK_TARGET_KERNEL_LOADADDR) diff --git a/mk/linux-ver.mk b/mk/linux-ver.mk index 52648efe3..bd66affde 100644 --- a/mk/linux-ver.mk +++ b/mk/linux-ver.mk @@ -15,35 +15,59 @@ KERNEL_FILE_VER:= $(ADK_TARGET_LINUX_KERNEL_GIT) KERNEL_RELEASE:= 1 KERNEL_VERSION:= $(ADK_TARGET_LINUX_KERNEL_GIT_VER)-$(KERNEL_RELEASE) endif +ifeq ($(ADK_TARGET_LINUX_KERNEL_VERSION_6_14),y) +KERNEL_FILE_VER:= 6.14.4 +KERNEL_RELEASE:= 1 +KERNEL_VERSION:= $(KERNEL_FILE_VER)-$(KERNEL_RELEASE) +KERNEL_HASH:= 9452f28d7a0051fba4886712395b484c4c7fcf9f85944a62fd3d97dc923f5339 +endif +ifeq ($(ADK_TARGET_LINUX_KERNEL_VERSION_6_12),y) +KERNEL_FILE_VER:= 6.12.25 +KERNEL_RELEASE:= 1 +KERNEL_VERSION:= $(KERNEL_FILE_VER)-$(KERNEL_RELEASE) +KERNEL_HASH:= c8af780f6f613ca24622116e4c512a764335ab66e75c6643003c16e49a8e3b90 +endif +ifeq ($(ADK_TARGET_LINUX_KERNEL_VERSION_6_6),y) +KERNEL_FILE_VER:= 6.6.88 +KERNEL_RELEASE:= 1 +KERNEL_VERSION:= $(KERNEL_FILE_VER)-$(KERNEL_RELEASE) +KERNEL_HASH:= 19df89b63ef7e950de7297dabfac0569183bf87636f4c300a25336c7da490650 +endif +ifeq ($(ADK_TARGET_LINUX_KERNEL_VERSION_6_1),y) +KERNEL_FILE_VER:= 6.1.135 +KERNEL_RELEASE:= 1 +KERNEL_VERSION:= $(KERNEL_FILE_VER)-$(KERNEL_RELEASE) +KERNEL_HASH:= e9d17ae1ff96a771e0c5061a50cf9209ce457cf28c8e01165d611523f3957eb9 +endif ifeq ($(ADK_TARGET_LINUX_KERNEL_VERSION_5_15),y) -KERNEL_FILE_VER:= 5.15.23 +KERNEL_FILE_VER:= 5.15.180 KERNEL_RELEASE:= 1 KERNEL_VERSION:= $(KERNEL_FILE_VER)-$(KERNEL_RELEASE) -KERNEL_HASH:= e839c6fe4db9327178ecccc7fb14035000496bb8028a32735213675eefa97a1c +KERNEL_HASH:= f51f68b8bbe60aca5e1ff3781f7e5d2ca6a31dd299c8446c39bf880bfff1cd39 endif ifeq ($(ADK_TARGET_LINUX_KERNEL_VERSION_5_10),y) -KERNEL_FILE_VER:= 5.10.100 +KERNEL_FILE_VER:= 5.10.236 KERNEL_RELEASE:= 1 KERNEL_VERSION:= $(KERNEL_FILE_VER)-$(KERNEL_RELEASE) -KERNEL_HASH:= d56965afc9b6a3d26d53db40ccd37fd9d15f2ca6bfd54ef6f0f8b6e92c170999 +KERNEL_HASH:= 6da5cc8f7d39ed3acb4d59129a3f1570d981526ebbf58ea82595b7b6e000fb89 endif ifeq ($(ADK_TARGET_LINUX_KERNEL_VERSION_5_4),y) -KERNEL_FILE_VER:= 5.4.193 +KERNEL_FILE_VER:= 5.4.292 KERNEL_RELEASE:= 1 KERNEL_VERSION:= $(KERNEL_FILE_VER)-$(KERNEL_RELEASE) -KERNEL_HASH:= 0d16d343956d311e3f4ab3f032fd626d8e6b67c0db94edd32f561407d374f2a0 +KERNEL_HASH:= 0bcbf580d1ea623ac5879d0f2d69796c82431b3f653c4749e63766dbf737be85 endif ifeq ($(ADK_TARGET_LINUX_KERNEL_VERSION_4_19),y) -KERNEL_FILE_VER:= 4.19.213 +KERNEL_FILE_VER:= 4.19.320 KERNEL_RELEASE:= 1 KERNEL_VERSION:= $(KERNEL_FILE_VER)-$(KERNEL_RELEASE) -KERNEL_HASH:= 38f28c1cd6db0b54ee37a14fd17db651fe68704d08f95e141b14d32b872f4e98 +KERNEL_HASH:= 9d671a12b00301b7ce63022d4e4afa3e40aa318f8f7f25a1147e602fdb1047a1 endif ifeq ($(ADK_TARGET_LINUX_KERNEL_VERSION_4_14),y) -KERNEL_FILE_VER:= 4.14.252 +KERNEL_FILE_VER:= 4.14.334 KERNEL_RELEASE:= 1 KERNEL_VERSION:= $(KERNEL_FILE_VER)-$(KERNEL_RELEASE) -KERNEL_HASH:= 933bb2e9359165da8a7eb8ae8321e88e3e070c34b827d51937ff3ba443e15908 +KERNEL_HASH:= 8a1d520cfa71e9faebae9d8c24101f5bffe48fcb897dede4cecad5af67c34a45 endif ifeq ($(ADK_TARGET_LINUX_KERNEL_VERSION_4_9),y) KERNEL_FILE_VER:= 4.9.287 @@ -63,6 +87,12 @@ KERNEL_RELEASE:= 1 KERNEL_VERSION:= $(KERNEL_FILE_VER)-$(KERNEL_RELEASE) KERNEL_HASH:= 80b1598d389c94e83fdf15d99c7da452aeb3093fbf8ed7c91584c06c09fc1fa6 endif +ifeq ($(ADK_TARGET_LINUX_KERNEL_VERSION_3_4),y) +KERNEL_FILE_VER:= 3.4.112 +KERNEL_RELEASE:= 1 +KERNEL_VERSION:= $(KERNEL_FILE_VER)-$(KERNEL_RELEASE) +KERNEL_HASH:= 29c8370c4c6e639ad5e38e6eb052058d5f45add3167f2aa4cc08e6569f024181 +endif ifeq ($(ADK_TARGET_LINUX_KERNEL_VERSION_2_6_32),y) KERNEL_FILE_VER:= 2.6.32.70 KERNEL_RELEASE:= 1 diff --git a/mk/linux.mk b/mk/linux.mk index 37f7b8684..09f62c2da 100644 --- a/mk/linux.mk +++ b/mk/linux.mk @@ -7,9 +7,11 @@ ifeq ($(ADK_TARGET_LINUX_KERNEL_VERSION_GIT),y) PKG_VERSION:= $(ADK_TARGET_LINUX_KERNEL_GIT) PKG_GIT:= $(ADK_TARGET_LINUX_KERNEL_GIT_TYPE) PKG_SITES:= $(ADK_TARGET_LINUX_KERNEL_GIT_REPO) +DISTFILES= $(PKG_NAME)-$(PKG_VERSION).tar.gz else PKG_VERSION:= $(KERNEL_FILE_VER) -PKG_SITES:= ${MASTER_SITE_KERNEL:=kernel/v5.x/} \ +PKG_SITES:= ${MASTER_SITE_KERNEL:=kernel/v6.x/} \ + ${MASTER_SITE_KERNEL:=kernel/v5.x/} \ ${MASTER_SITE_KERNEL:=kernel/v4.x/} \ ${MASTER_SITE_KERNEL:=kernel/v3.x/} \ ${MASTER_SITE_KERNEL:=kernel/v3.0/testing/} \ diff --git a/mk/mirrors.mk b/mk/mirrors.mk index a8dc27f6a..dba447fec 100644 --- a/mk/mirrors.mk +++ b/mk/mirrors.mk @@ -12,8 +12,8 @@ MASTER_SITE_MIRBSD?= \ ifeq ($(ADK_TARGET_KERNEL_NO_MIRROR),) MASTER_SITE_KERNEL?= \ + https://www.kernel.org/pub/linux/ \ http://www.kernel.org/pub/linux/ \ - ftp://www.kernel.org/pub/linux/ \ else MASTER_SITE_KERNEL?= \ @@ -22,23 +22,8 @@ MASTER_SITE_KERNEL?= \ endif MASTER_SITE_GNU?= \ + https://ftp.gnu.org/gnu/ \ http://ftp.gnu.org/gnu/ \ - ftp://ftp.gnu.org/gnu/ \ - ftp://ftp.funet.fi/pub/gnu/prep/ \ - ftp://mirrors.usc.edu/pub/gnu/ \ - ftp://ftp.cs.tu-berlin.de/pub/gnu/ \ - ftp://aeneas.mit.edu/pub/gnu/ \ - ftp://mirrors.dotsrc.org/gnu/ \ - ftp://ftp.wustl.edu/pub/gnu/ \ - ftp://ftp.kddilabs.jp/GNU/ \ - ftp://ftp.mirror.ac.uk/sites/ftp.gnu.org/gnu/ \ - ftp://sunsite.org.uk/package/gnu/ \ - ftp://ftp.informatik.hu-berlin.de/pub/gnu/ \ - ftp://ftp.rediris.es/mirror/gnu/gnu/ \ - ftp://ftp.cs.univ-paris8.fr/mirrors/ftp.gnu.org/ \ - ftp://ftp.chg.ru/pub/gnu/ \ - ftp://ftp.uvsq.fr/pub/gnu/ \ - ftp://ftp.sunet.se/pub/gnu/ \ MASTER_SITE_SOURCEFORGE?= \ http://jaist.dl.sourceforge.net/sourceforge/ \ @@ -50,19 +35,10 @@ MASTER_SITE_SOURCEFORGE?= \ http://easynews.dl.sourceforge.net/sourceforge/ \ MASTER_SITE_MYSQL?= \ - ftp://ftp.fu-berlin.de/unix/databases/mysql/ \ http://sunsite.informatik.rwth-aachen.de/mysql/ \ + ftp://ftp.fu-berlin.de/unix/databases/mysql/ \ http://mysql.easynet.be/ \ MASTER_SITE_GNOME?= \ https://download.gnome.org/sources/ \ - ftp://ftp.gnome.org/pub/GNOME/sources/ \ - ftp://ftp.linux.org.uk/mirrors/ftp.gnome.org/sources/ \ - ftp://ftp.acc.umu.se/pub/GNOME/sources/ \ - ftp://ftp.rpmfind.net/linux/gnome.org/sources/ \ - ftp://ftp.unina.it/pub/linux/GNOME/sources/ \ - ftp://ftp.belnet.be/mirror/ftp.gnome.org/sources/ \ - ftp://ftp.dit.upm.es/linux/gnome/sources/ \ - ftp://ftp.dataplus.se/pub/linux/gnome/sources/ \ - ftp://ftp.cse.buffalo.edu/pub/Gnome/sources/ \ diff --git a/mk/perl.mk b/mk/perl.mk index 893e8cb11..faaf078a9 100644 --- a/mk/perl.mk +++ b/mk/perl.mk @@ -1,4 +1,4 @@ -PERL_VERSION=5.32.1 +PERL_VERSION=5.38.0 PERL_ARCHNAME:=$(ADK_TARGET_CPU_ARCH)-linux PERL_SITEDIR:=/usr/lib/perl5/site_perl/$(PERL_VERSION) PERL_INCDIR:=/usr/lib/perl5/$(PERL_VERSION)/$(PERL_ARCHNAME)/CORE diff --git a/mk/pkg-bottom.mk b/mk/pkg-bottom.mk index 424a42ca9..d4b50ff12 100644 --- a/mk/pkg-bottom.mk +++ b/mk/pkg-bottom.mk @@ -53,11 +53,11 @@ ifneq ($(filter manual,${CONFIG_STYLE}),) else ifneq ($(filter meson,${CONFIG_STYLE}),) @$(CMD_TRACE) "configuring meson.. " (cd ${WRKSRC} && $(MESON_ENV) \ - meson --prefix /usr --libdir lib \ + meson setup --prefix /usr --libdir lib \ --cross-file $(STAGING_HOST_DIR)/etc/meson/cross-compilation.conf \ --build.pkg-config-path $(STAGING_HOST_DIR)/usr/lib/pkgconfig \ --buildtype release $(MESON_FLAGS) \ - $(WRKSRC) $(WRKBUILD)) + $(WRKSRC) $(WRKBUILD)) $(MAKE_TRACE) else ifneq ($(filter cmake,${CONFIG_STYLE}),) @$(CMD_TRACE) "configuring cmake.. " sed -e "s#@@TARGET_CC@@#$(TARGET_CC_NO_CCACHE)#" \ @@ -69,7 +69,7 @@ else ifneq ($(filter cmake,${CONFIG_STYLE}),) -e "s#@@STAGING_HOST_DIR@@#$(STAGING_HOST_DIR)#g" \ $(SCRIPT_DIR)/toolchain.cmake.in > $(SCRIPT_DIR)/toolchain.cmake (cd ${WRKBUILD} && PATH='${HOST_PATH}' \ - cmake -Wno-dev -DCMAKE_INSTALL_PREFIX:PATH=/usr \ + cmake -Wno-dev -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_TOOLCHAIN_FILE="$(SCRIPT_DIR)/toolchain.cmake" \ ${CMAKE_FLAGS} ${WRKSRC}) $(MAKE_TRACE) else ifneq ($(filter minimal,${CONFIG_STYLE}),) @@ -116,6 +116,7 @@ else ifeq ($(strip ${CONFIG_STYLE}),) --disable-dependency-tracking \ --disable-libtool-lock \ --disable-nls \ + --disable-silent-rules \ ${CONFIGURE_LIB} \ ${CONFIGURE_ARGS} $(MAKE_TRACE) else @@ -139,11 +140,11 @@ ${_BUILD_COOKIE}: ${_CONFIGURE_COOKIE} @env ${MAKE_ENV} ${MAKE} pre-build $(MAKE_TRACE) @$(CMD_TRACE) "compiling.. " ifneq ($(filter meson,${BUILD_STYLE}),) - PATH='$(HOST_PATH)' ninja -v -C $(WRKBUILD) + PATH='$(HOST_PATH)' LD_LIBRARY_PATH='$(STAGING_HOST_DIR)/usr/lib' ninja -v -C $(WRKBUILD) $(MAKE_TRACE) else ifneq ($(filter manual,${BUILD_STYLE}),) env ${MAKE_ENV} ${MAKE} ${MAKE_FLAGS} do-build $(MAKE_TRACE) else ifeq ($(strip ${BUILD_STYLE}),) - cd ${WRKBUILD} && env ${MAKE_ENV} ${MAKE} -f ${MAKE_FILE} \ + cd ${WRKBUILD} && env ${MAKE_ENV} LD_LIBRARY_PATH='$(STAGING_HOST_DIR)/usr/lib' ${MAKE} -f ${MAKE_FILE} \ ${MAKE_FLAGS} ${ALL_TARGET} $(MAKE_TRACE) else @echo "Invalid BUILD_STYLE '${BUILD_STYLE}'" >&2 @@ -167,7 +168,7 @@ ifneq ($(filter meson,${INSTALL_STYLE}),) else ifneq ($(filter manual,${INSTALL_STYLE}),) env ${MAKE_ENV} ${MAKE} do-install $(MAKE_TRACE) else ifeq ($(strip ${INSTALL_STYLE}),) - cd ${WRKBUILD} && env ${MAKE_ENV} ${MAKE} -f ${MAKE_FILE} \ + cd ${WRKBUILD} && env ${MAKE_ENV} LD_LIBRARY_PATH='$(STAGING_HOST_DIR)/usr/lib' ${MAKE} -f ${MAKE_FILE} \ DESTDIR='${WRKINST}' ${FAKE_FLAGS} ${INSTALL_TARGET} $(MAKE_TRACE) env ${MAKE_ENV} ${MAKE} post-install $(MAKE_TRACE) else diff --git a/mk/python.mk b/mk/python.mk deleted file mode 100644 index 56008760a..000000000 --- a/mk/python.mk +++ /dev/null @@ -1,3 +0,0 @@ -PYTHON_VERSION=2.7 -PYTHON_LIBDIR:=$(STAGING_HOST_DIR)/usr/lib -PYTHON:=${STAGING_HOST_DIR}/usr/bin/python diff --git a/mk/python3.mk b/mk/python3.mk index 8c0ca363b..c2e9f7a27 100644 --- a/mk/python3.mk +++ b/mk/python3.mk @@ -1,3 +1,3 @@ -PYTHON_VERSION=3.9 +PYTHON_VERSION=3.11 PYTHON_LIBDIR:=$(STAGING_HOST_DIR)/usr/lib PYTHON:=${STAGING_HOST_DIR}/usr/bin/python3 diff --git a/mk/vars.mk b/mk/vars.mk index 2be0c33cb..91dfc700e 100644 --- a/mk/vars.mk +++ b/mk/vars.mk @@ -168,6 +168,10 @@ ifeq ($(ADK_TARGET_ARCH_MIPS),y) TARGET_CFLAGS+= -m$(ADK_TARGET_FLOAT)-float TARGET_CXXFLAGS+= -m$(ADK_TARGET_FLOAT)-float endif +ifeq ($(ADK_TARGET_ARCH_OR1K),y) +TARGET_CFLAGS+= -m$(ADK_TARGET_FLOAT)-float +TARGET_CXXFLAGS+= -m$(ADK_TARGET_FLOAT)-float +endif endif ifeq ($(ADK_TARGET_BINFMT_FLAT),y) @@ -198,6 +202,13 @@ ifneq ($(ADK_TARGET_USE_LD_BIND_NOW),) TARGET_LDFLAGS+= -Wl,-z,now endif +ifeq ($(ADK_TARGET_ARCH_RISCV64)$(ADK_TARGET_ARCH_RISCV32),y) +ifeq ($(ADK_TARGET_BINFMT_FLAT),y) +TARGET_CFLAGS+= -fPIC +TARGET_CXXFLAGS+= -fPIC +endif +endif + # needed for musl ppc ifeq ($(ADK_TARGET_ARCH_PPC),y) ifeq ($(ADK_TARGET_LIB_MUSL),y) @@ -205,11 +216,17 @@ TARGET_LDFLAGS+= -Wl,--secure-plt endif endif +ifneq ($(ADK_TARGET_BINFMT_ELF)$(ADK_TARGET_WITH_MMU),y) ifeq ($(ADK_TARGET_USE_STATIC_LIBS_ONLY)$(ADK_TARGET_USE_STATIC_AND_SHARED_LIBS),y) TARGET_CFLAGS+= -static TARGET_CXXFLAGS+= -static TARGET_LDFLAGS+= -static endif +else +TARGET_CFLAGS+= -fpie +TARGET_CXXFLAGS+= -fpie +TARGET_LDFLAGS+= -fpie -pie +endif ifneq ($(ADK_TARGET_USE_SSP),) TARGET_CFLAGS+= -fstack-protector-all --param=ssp-buffer-size=4 @@ -280,8 +297,8 @@ endif # workaround gcc bug for m68k/coldfire ifeq ($(ADK_TARGET_CPU_CF),y) -TARGET_CFLAGS+= -fno-dwarf2-cfi-asm -TARGET_CXXFLAGS+= -fno-dwarf2-cfi-asm +TARGET_CFLAGS+= -fno-dwarf2-cfi-asm -mxgot +TARGET_CXXFLAGS+= -fno-dwarf2-cfi-asm -mxgot endif ifeq ($(ADK_TARGET_ARCH_ARM),y) @@ -298,13 +315,15 @@ TARGET_CXXFLAGS+= -marm endif endif +ifeq ($(ADK_TARGET_BINFMT_FDPIC),y) +TARGET_CFLAGS+= -mfdpic +TARGET_CXXFLAGS+= -mfdpic +TARGET_LDFLAGS+= -mfdpic +endif + # host compiler and linker flags HOST_CPPFLAGS:= -I$(STAGING_HOST_DIR)/usr/include -ifeq ($(OS_FOR_BUILD),Darwin) -HOST_LDFLAGS:= -L$(STAGING_HOST_DIR)/usr/lib -else HOST_LDFLAGS:= -L$(STAGING_HOST_DIR)/usr/lib -Wl,-rpath -Wl,${STAGING_HOST_DIR}/usr/lib -endif ifneq (${ADK_UPDATE_PATCHES_GIT},) PATCH= PATH='${HOST_PATH}' ${BASH} $(SCRIPT_DIR)/patch_git.sh @@ -316,11 +335,10 @@ PATCHP0= PATH='${HOST_PATH}' patch -p0 ifeq ($(ADK_STATIC_TOOLCHAIN),y) HOST_STATIC_CFLAGS:= -static -Wl,-static HOST_STATIC_CXXFLAGS:= -static -Wl,-static -HOST_STATIC_LDFLAGS:= -Wl,-static +HOST_STATIC_LDFLAGS:= -Wl,-static -all-static endif SED:= PATH='${HOST_PATH}' sed -i -e -XZ:= PATH='${HOST_PATH}' xz CPIO:= PATH='${HOST_PATH}' cpio LINUX_DIR:= $(BUILD_DIR)/$(ADK_TARGET_OS) KERNEL_MODULE_FLAGS:= ARCH=${ADK_TARGET_KARCH} \ @@ -404,7 +422,7 @@ PKG_INSTALL:= PATH='${HOST_PATH}' \ PKG_STATE_DIR:= $(TARGET_DIR)/usr/lib/opkg endif -ifeq ($(ADK_TARGET_PACKAGE_TXZ),y) +ifeq ($(ADK_TARGET_PACKAGE_TGZ),y) PKG_BUILD:= ${BASH} ${SCRIPT_DIR}/tarpkg build PKG_INSTALL:= PKG_INSTROOT='$(TARGET_DIR)' \ PATH='${HOST_PATH}' ${BASH} ${SCRIPT_DIR}/tarpkg install |