From e7dcf9e5af0cc0c7afd3e887f7731d855aa39094 Mon Sep 17 00:00:00 2001 From: Francois Perrad Date: Wed, 22 Apr 2026 18:31:25 +0200 Subject: [PATCH] package/ficl: bump to version 3.065 - sources are now hosted on Github - ficl have its own LICENSE file - remove one upstreamed patch - support only static lib - requires C11 Signed-off-by: Francois Perrad Signed-off-by: Julien Olivain --- ...=> 0001-makefile.linux-pass-LDFLAGS.patch} | 26 +++++----- package/ficl/0001-missing-include.patch | 26 ---------- package/ficl/Config.in | 6 ++- package/ficl/ficl.hash | 4 +- package/ficl/ficl.mk | 47 ++++--------------- 5 files changed, 31 insertions(+), 78 deletions(-) rename package/ficl/{0002-Makefile.linux-pass-LDFLAGS.patch => 0001-makefile.linux-pass-LDFLAGS.patch} (70%) delete mode 100644 package/ficl/0001-missing-include.patch diff --git a/package/ficl/0002-Makefile.linux-pass-LDFLAGS.patch b/package/ficl/0001-makefile.linux-pass-LDFLAGS.patch similarity index 70% rename from package/ficl/0002-Makefile.linux-pass-LDFLAGS.patch rename to package/ficl/0001-makefile.linux-pass-LDFLAGS.patch index d05b49b7ff..1ac86466d4 100644 --- a/package/ficl/0002-Makefile.linux-pass-LDFLAGS.patch +++ b/package/ficl/0001-makefile.linux-pass-LDFLAGS.patch @@ -17,23 +17,25 @@ Upstream: upstream is dead Signed-off-by: Dario Binacchi [francois: downgrade to 3.03] Signed-off-by: Francois Perrad +[francois: upgrade to 3.065] +Signed-off-by: Francois Perrad --- - Makefile.linux | 2 +- + makefile.linux | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/Makefile.linux b/Makefile.linux -index 5f1a41f..df887e6 100644 ---- a/Makefile.linux -+++ b/Makefile.linux -@@ -13,7 +13,7 @@ MAJOR = 3 - MINOR = 0.1 +diff --git a/makefile.linux b/makefile.linux +index 1e467ea..fad7059 100755 +--- a/makefile.linux ++++ b/makefile.linux +@@ -26,7 +26,7 @@ libficl.a: $(OBJECTS) - ficl: testmain.o ficl.h sysdep.h libficl.a -- $(CC) testmain.o -o ficl -L. -lficl -lm -+ $(CC) $(LDFLAGS) testmain.o -o ficl -L. -lficl -lm - - lib: libficl.so.$(MAJOR).$(MINOR) + # === Console Test executable === + ficl: $(FICL_TEST_OBJ) ficl.h sysdep.h libficl.a +- $(CC) $(FICL_TEST_OBJ) -o ficl -L. -lficl -lm ++ $(CC) $(LDFLAGS) $(FICL_TEST_OBJ) -o ficl -L. -lficl -lm + # === Compile rules === + .SUFFIXES: .cxx .cc .c .o -- 2.35.1 diff --git a/package/ficl/0001-missing-include.patch b/package/ficl/0001-missing-include.patch deleted file mode 100644 index 8c6547c46e..0000000000 --- a/package/ficl/0001-missing-include.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 87c78eea2c4ac69c09947c8e49f8e8668640071c Mon Sep 17 00:00:00 2001 -From: Francois Perrad -Date: Sun, 7 Dec 2025 10:15:27 +0100 -Subject: [PATCH] missing include - -Signed-off-by: Francois Perrad -Upstream: upstream is dead ---- - fileaccess.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/fileaccess.c b/fileaccess.c -index 738889d..c03d5d6 100644 ---- a/fileaccess.c -+++ b/fileaccess.c -@@ -4,6 +4,7 @@ - #include - #include - #include -+#include - #include "ficl.h" - - #if FICL_WANT_FILE --- -2.43.0 - diff --git a/package/ficl/Config.in b/package/ficl/Config.in index 4d9ab4a5bf..21861652ef 100644 --- a/package/ficl/Config.in +++ b/package/ficl/Config.in @@ -1,9 +1,13 @@ config BR2_PACKAGE_FICL bool "ficl" + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 # C11/static_assert help Ficl is a programming language interpreter designed to be embedded into other systems as a command, macro, and development prototyping language. Ficl is an acronym for "Forth Inspired Command Language". - http://ficl.sourceforge.net + https://ficl.sourceforge.net/ + +comment "ficl needs a gcc >= 4.6" + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 diff --git a/package/ficl/ficl.hash b/package/ficl/ficl.hash index 1a4a54e704..6023708ff0 100644 --- a/package/ficl/ficl.hash +++ b/package/ficl/ficl.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 064abbea44b2cbbeb53b8df8e5588ed41c4d32dd19bdb897e5d21507691407b2 ficl303.tar.gz -sha256 18527f5cdc213d29fb65791e153690974e5426b7e989f3b8eee61c2e5f9e5fcd ReadMe.txt +sha256 09a4649a68a075999c2bc26129cf233c4d672335a9c68b98ffcbf1bc8962e5e1 ficl3065.tar.gz +sha256 b7a894f23d7d7302852405b3d1b6fd88e76b4c116a68f046d4547c073c75d3ea LICENSE diff --git a/package/ficl/ficl.mk b/package/ficl/ficl.mk index ef2e1408ce..1ab1bb6a39 100644 --- a/package/ficl/ficl.mk +++ b/package/ficl/ficl.mk @@ -4,56 +4,29 @@ # ################################################################################ -FICL_VERSION = 3.03 +FICL_VERSION = 3.065 FICL_TAG = ficl$(subst .,,$(FICL_VERSION)) -FICL_VERSION_SO = 3.0.1 FICL_SOURCE = $(FICL_TAG).tar.gz -FICL_SITE = https://sourceforge.net/projects/ficl/files/ficl-all/$(FICL_TAG) -FICL_LICENSE = BSD-2-Clause -FICL_LICENSE_FILES = ReadMe.txt +FICL_SITE = $(call github,jwsadler58,ficl,$(FICL_TAG)) +FICL_LICENSE = BSD-3-Clause +FICL_LICENSE_FILES = LICENSE FICL_INSTALL_STAGING = YES -ifeq ($(BR2_STATIC_LIBS),y) -FICL_BUILD_TARGETS += ficl -define FICL_INSTALL_STATIC_BIN - $(INSTALL) -D -m 0755 $(@D)/ficl $(TARGET_DIR)/usr/bin/ficl -endef -endif - -ifeq ($(BR2_STATIC_LIBS)$(BR2_SHARED_STATIC_LIBS),y) -FICL_BUILD_TARGETS += libficl.a -define FICL_INSTALL_STATIC_LIB - $(INSTALL) -D -m 0644 $(@D)/libficl.a $(STAGING_DIR)/usr/lib/libficl.a -endef -endif - -ifeq ($(BR2_SHARED_LIBS)$(BR2_SHARED_STATIC_LIBS),y) -FICL_BUILD_TARGETS += testmain libficl.so.$(FICL_VERSION_SO) -define FICL_INSTALL_SHARED_BIN - $(INSTALL) -D -m 0755 $(@D)/testmain $(TARGET_DIR)/usr/bin/ficl -endef -define FICL_INSTALL_SHARED_LIB - $(INSTALL) -D -m 0755 $(@D)/libficl.so.$(FICL_VERSION_SO) $(1)/usr/lib/libficl.so.$(FICL_VERSION_SO) - ln -sf libficl.so.$(FICL_VERSION_SO) $(1)/usr/lib/libficl.so.3 - ln -sf libficl.so.$(FICL_VERSION_SO) $(1)/usr/lib/libficl.so -endef -endif +FICL_DEPENDENCIES = host-python3 define FICL_BUILD_CMDS - $(MAKE) -C $(@D) -f Makefile.linux $(TARGET_CONFIGURE_OPTS) \ - CFLAGS="$(TARGET_CFLAGS) -fgnu89-inline -fPIC -I. -Dlinux" CPPFLAGS="" $(FICL_BUILD_TARGETS) + # workaround for static_assert on uclibc-ng < 1.0.42 + $(MAKE) -C $(@D) -f makefile.linux $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TARGET_CFLAGS) -std=c11 -Dlinux -D_POSIX_C_SOURCE=200809L -Dstatic_assert=_Static_assert -I. " CPPFLAGS="" ficl endef define FICL_INSTALL_STAGING_CMDS - $(FICL_INSTALL_STATIC_LIB) - $(call FICL_INSTALL_SHARED_LIB,$(STAGING_DIR)) + $(INSTALL) -D -m 0644 $(@D)/libficl.a $(STAGING_DIR)/usr/lib/libficl.a $(INSTALL) -D -m 0644 $(@D)/ficl.h $(STAGING_DIR)/usr/include/ficl.h endef define FICL_INSTALL_TARGET_CMDS - $(FICL_INSTALL_STATIC_BIN) - $(FICL_INSTALL_SHARED_BIN) - $(call FICL_INSTALL_SHARED_LIB,$(TARGET_DIR)) + $(INSTALL) -D -m 0755 $(@D)/ficl $(TARGET_DIR)/usr/bin/ficl endef $(eval $(generic-package))