Skip to contentSkip to conversation

gauche: new package

PATCH Superseded Hiroshi Kawashima 2 participants 4 messages Oct 24, 2015 – Oct 30, 2015

v2 of 5 Superseded Latest is v5 →

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/1 gauche: new package

Gauche is an R7RS Scheme implementation developed to be a handy script interpriter, which allows programmers and systemadministrators to write small to large scripts for their daily chores. Quick startup, built-in system interface, native multilingual support are some of my goals.

---
Changes v1 -> v2
- change help description to written in project's web page.
- add brief description and SoB in patch file.
- change depens on BR2_TOOLCHAIN_HAS_THREADS -> BR2_TOOLCHAIN_HAS_THREADS_NPTL.
- add brief description why "-std=gnu99" needed in GAUCHE_CONF_ENV.
- add depends on BR2_ARCH_HAS_ATOMICS (Boehm gc need this).
- add # fork() to 'depends on BR2_USE_MMU'.
- remove empty comment line in hash file.
- remove unnecessary GAUCHE_CONF_OPTS.

---
 package/Config.in                       |    1 +
 package/gauche/0001-fix-so-suffix.patch |   16 ++++++++++++++++
 package/gauche/Config.in                |   18 ++++++++++++++++++
 package/gauche/gauche.hash              |    2 ++
 package/gauche/gauche.mk                |   19 +++++++++++++++++++
 5 files changed, 56 insertions(+), 0 deletions(-)
 create mode 100644 package/gauche/0001-fix-so-suffix.patch
 create mode 100644 package/gauche/Config.in
 create mode 100644 package/gauche/gauche.hash
 create mode 100644 package/gauche/gauche.mk
package/Config.in +1 -0
index 2f74439..602ece9 100644
@@ -460,6 +460,7 @@ menu "Erlang libraries/modules"
 	source "package/erlang-p1-zlib/Config.in"
 endmenu
 endif
+	source "package/gauche/Config.in"
 	source "package/guile/Config.in"
 	source "package/haserl/Config.in"
 	source "package/jamvm/Config.in"
package/gauche/0001-fix-so-suffix.patch new file +16 -0
new file mode 100644
index 0000000..3e82ddb
@@ -0,0 +1,16 @@
+With uclibc configuration, $host does not match to '*-linux-gnu-*'.
+
+Signed-off-by: Hiroshi Kawashima <[email protected]>
+
+diff -ur a/configure b/configure
+--- a/configure	2014-07-20 15:15:05.000000000 +0900
++++ b/configure	2015-10-20 21:52:32.791442291 +0900
+@@ -6843,7 +6843,7 @@
+     SHLIB_MAIN_LDFLAGS=""
+     SHLIB_OK=ok
+     ;;
+-  *-linux-gnu*|*-*-gnu*|*freebsd*|*dragonfly*)
++  *-linux-*|*-*-gnu*|*freebsd*|*dragonfly*)
+     SHLIB_SO_CFLAGS="-fPIC"
+     SHLIB_SO_LDFLAGS="$rpath -shared -o"
+     SHLIB_SO_SUFFIX="so"
package/gauche/Config.in new file +18 -0
new file mode 100644
index 0000000..1074bc1
@@ -0,0 +1,18 @@
+config BR2_PACKAGE_GAUCHE
+	bool "gauche"
+	depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
+	depends on BR2_USE_MMU # fork()
+	depends on BR2_ARCH_HAS_ATOMICS
+	help
+	  Gauche is an R7RS Scheme implementation developed to be a
+	  handy script interpriter, which allows programmers and
+	  systemadministrators to write small to large scripts for their
+	  daily chores. Quick startup, built-in system interface, native
+	  multilingual support are some of my goals.
+
+	  http://practical-scheme.net/gauche/
+
+comment "gauche needs a toolchain w/ NPTL"
+	depends on BR2_USE_MMU
+	depends on BR2_ARCH_HAS_ATOMICS
+	depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL
package/gauche/gauche.hash new file +2 -0
new file mode 100644
index 0000000..9ec106a
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256 7b18bcd70beaced1e004594be46c8cff95795318f6f5830dd2a8a700410fc149  Gauche-0.9.4.tgz
package/gauche/gauche.mk new file +19 -0
new file mode 100644
index 0000000..39ddfdc
@@ -0,0 +1,19 @@
+################################################################################
+#
+# gauche
+#
+################################################################################
+
+GAUCHE_VERSION = 0.9.4
+GAUCHE_SOURCE = Gauche-$(GAUCHE_VERSION).tgz
+GAUCHE_SITE = http://prdownloads.sourceforge.net/gauche
+GAUCHE_LICENSE = BSD
+GAUCHE_LICENSE_FILES = COPYING
+GAUCHE_DEPENDENCIES = host-gauche
+
+# Checking c99 support in configure fails without WCHAR. But we do not
+# need WCHAR at gauche runtime, so explicitly specify here.
+GAUCHE_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -std=gnu99"
+
+$(eval $(host-autotools-package))
+$(eval $(autotools-package))
Signature · 4 lines
1.7.1

============================================================
    Hiroshi Kawashima
#1 lore raw

PATCH v2 1/1 gauche: new package

Dear maintainer.

If no further comment, could you pull up this ?

Quoted 134 lines · Hiroshi Kawashima

Gauche is an R7RS Scheme implementation developed to be a handy script interpriter, which allows programmers and systemadministrators to write small to large scripts for their daily chores. Quick startup, built-in system interface, native multilingual support are some of my goals.

---
Changes v1 -> v2
- change help description to written in project's web page.
- add brief description and SoB in patch file.
- change depens on BR2_TOOLCHAIN_HAS_THREADS -> BR2_TOOLCHAIN_HAS_THREADS_NPTL.
- add brief description why "-std=gnu99" needed in GAUCHE_CONF_ENV.
- add depends on BR2_ARCH_HAS_ATOMICS (Boehm gc need this).
- add # fork() to 'depends on BR2_USE_MMU'.
- remove empty comment line in hash file.
- remove unnecessary GAUCHE_CONF_OPTS.

---
 package/Config.in                       |    1 +
 package/gauche/0001-fix-so-suffix.patch |   16 ++++++++++++++++
 package/gauche/Config.in                |   18 ++++++++++++++++++
 package/gauche/gauche.hash              |    2 ++
 package/gauche/gauche.mk                |   19 +++++++++++++++++++
 5 files changed, 56 insertions(+), 0 deletions(-)
 create mode 100644 package/gauche/0001-fix-so-suffix.patch
 create mode 100644 package/gauche/Config.in
 create mode 100644 package/gauche/gauche.hash
 create mode 100644 package/gauche/gauche.mk
package/Config.in +1 -0
index 2f74439..602ece9 100644
@@ -460,6 +460,7 @@ menu "Erlang libraries/modules"
 	source "package/erlang-p1-zlib/Config.in"
 endmenu
 endif
+	source "package/gauche/Config.in"
 	source "package/guile/Config.in"
 	source "package/haserl/Config.in"
 	source "package/jamvm/Config.in"
package/gauche/0001-fi renamed from package/gauche/0001-fix-so-suffix.patch +0 -0

x-so-suffix.patch
new file mode 100644
index 0000000..3e82ddb

package/gauche/0001-fix-so-suffix.patch new file +16 -0
@@ -0,0 +1,16 @@
+With uclibc configuration, $host does not match to '*-linux-gnu-*'.
+
+Signed-off-by: Hiroshi Kawashima <[email protected]>
+
+diff -ur a/configure b/configure
+--- a/configure	2014-07-20 15:15:05.000000000 +0900
++++ b/configure	2015-10-20 21:52:32.791442291 +0900
+@@ -6843,7 +6843,7 @@
+     SHLIB_MAIN_LDFLAGS=""
+     SHLIB_OK=ok
+     ;;
+-  *-linux-gnu*|*-*-gnu*|*freebsd*|*dragonfly*)
++  *-linux-*|*-*-gnu*|*freebsd*|*dragonfly*)
+     SHLIB_SO_CFLAGS="-fPIC"
+     SHLIB_SO_LDFLAGS="$rpath -shared -o"
+     SHLIB_SO_SUFFIX="so"
package/gauche/Config.in new file +18 -0
new file mode 100644
index 0000000..1074bc1
@@ -0,0 +1,18 @@
+config BR2_PACKAGE_GAUCHE
+	bool "gauche"
+	depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
+	depends on BR2_USE_MMU # fork()
+	depends on BR2_ARCH_HAS_ATOMICS
+	help
+	  Gauche is an R7RS Scheme implementation developed to be a
+	  handy script interpriter, which allows programmers and
+	  systemadministrators to write small to large scripts for their
+	  daily chores. Quick startup, built-in system interface, native
+	  multilingual support are some of my goals.
+
+	  http://practical-scheme.net/gauche/
+
+comment "gauche needs a toolchain w/ NPTL"
+	depends on BR2_USE_MMU
+	depends on BR2_ARCH_HAS_ATOMICS
+	depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL
package/gauche/gauche.hash new file +2 -0
new file mode 100644
index 0000000..9ec106a
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256 7b18bcd70beaced1e004594be46c8cff95795318f6f5830dd2a8a700410fc149  Gau

che-0.9.4.tgz

package/gauche/gauche.mk new file +1 -0
new file mode 100644
index 0000000..39ddfdc
@@ -0,0 +1,19 @@
+############################################################################

####

package/gauche/gauche.mk new file +4 -0
+#
+# gauche
+#
+############################################################################

####

package/gauche/gauche.mk new file +14 -0
+
+GAUCHE_VERSION = 0.9.4
+GAUCHE_SOURCE = Gauche-$(GAUCHE_VERSION).tgz
+GAUCHE_SITE = http://prdownloads.sourceforge.net/gauche
+GAUCHE_LICENSE = BSD
+GAUCHE_LICENSE_FILES = COPYING
+GAUCHE_DEPENDENCIES = host-gauche
+
+# Checking c99 support in configure fails without WCHAR. But we do not
+# need WCHAR at gauche runtime, so explicitly specify here.
+GAUCHE_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -std=gnu99"
+
+$(eval $(host-autotools-package))
+$(eval $(autotools-package))
Signature · 8 lines
1.7.1

============================================================
    Hiroshi Kawashima
_______________________________________________
buildroot mailing list
buildroot at busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

============================================================
Hiroshi Kawashima

#2 lore raw

PATCH v2 1/1 gauche: new package

In reply to Hiroshi Kawashima

Dear Hiroshi Kawashima,

your patch looks good to me. The only thing I would have added is a little comment in the patch saying that you are patching the configure directly because it fails to autoreconf.

Quoted 6 lines · Hiroshi Kawashima

Gauche is an R7RS Scheme implementation developed to be a handy script interpriter, which allows programmers and systemadministrators to write small to large scripts for their daily chores. Quick startup, built-in system interface, native multilingual support are some of my goals.

Build test for MIPS architecture:

$ file output/target/usr/bin/gosh
output/target/usr/bin/gosh: ELF 32-bit LSB executable, MIPS, MIPS32 rel2
version 1, dynamically linked (uses shared libs), for GNU/Linux 2.6.32,
with unknown capability 0xf41 = 0x756e6700, with unknown capability
0x70100 = 0x1040000, not stripped

Regards,

Vincent.

#3 lore raw

PATCH v2 1/1 gauche: new package

Dear Vincente.

Thank you for your review and test.

I will send v3 patch refrect your comment with your Reviewed/Tesed.

Regards,
Kawashima

Quoted 24 lines · Vicente Olivert Riera

Dear Hiroshi Kawashima,

your patch looks good to me. The only thing I would have added is a little comment in the patch saying that you are patching the configure directly because it fails to autoreconf.

Quoted 6 lines · Hiroshi Kawashima

Gauche is an R7RS Scheme implementation developed to be a handy script interpriter, which allows programmers and systemadministrators to write small to large scripts for their daily chores. Quick startup, built-in system interface, native multilingual support are some of my goals.

Build test for MIPS architecture:

$ file output/target/usr/bin/gosh
output/target/usr/bin/gosh: ELF 32-bit LSB executable, MIPS, MIPS32 rel2
version 1, dynamically linked (uses shared libs), for GNU/Linux 2.6.32,
with unknown capability 0xf41 = 0x756e6700, with unknown capability
0x70100 = 0x1040000, not stripped
Quoted 3 lines

Regards,

Vincent.

============================================================
Hiroshi Kawashima