diff options
author | Waldemar Brodkorb <wbx@openadk.org> | 2013-10-24 14:59:22 +0200 |
---|---|---|
committer | Waldemar Brodkorb <wbx@openadk.org> | 2013-10-24 14:59:22 +0200 |
commit | d1ee3be7f4b966174d673876f961b44e37b4c85a (patch) | |
tree | d1dca9d3273dcf9eae0a72355b101bce1f1c9060 /package/ruby | |
parent | f082cffba0eac8316ec58164ee215e75c8a364ed (diff) |
add host build infrastructure; convert file, ncurses, glib and ruby to it. remove unneeded hacks for openldap and mesalib
Diffstat (limited to 'package/ruby')
-rw-r--r-- | package/ruby/Makefile | 44 | ||||
-rw-r--r-- | package/ruby/patches/patch-configure | 141 | ||||
-rw-r--r-- | package/ruby/patches/patch-configure.orig | 11 | ||||
-rw-r--r-- | package/ruby/patches/patch-missing_isinf_c | 19 | ||||
-rw-r--r-- | package/ruby/patches/patch-missing_isinf_c.orig | 11 | ||||
-rw-r--r-- | package/ruby/patches/patch-missing_isnan_c | 11 |
6 files changed, 222 insertions, 15 deletions
diff --git a/package/ruby/Makefile b/package/ruby/Makefile index 79e4e3a46..cf0bff905 100644 --- a/package/ruby/Makefile +++ b/package/ruby/Makefile @@ -4,14 +4,15 @@ include ${TOPDIR}/rules.mk PKG_NAME:= ruby -PKG_VERSION:= 1.9.3 -PKG_EXTRAVER:= 0 +PKG_VERSION:= 2.0.0 +PKG_EXTRAVER:= 247 PKG_RELEASE:= 1 -PKG_MD5SUM:= 8e2fef56185cfbaf29d0c8329fc77c05 +PKG_MD5SUM:= c351450a0bed670e0f5ca07da3458a5b PKG_DESCR:= interpreter for the ruby language PKG_SECTION:= lang +PKG_DEPENDS:= librt libpthread libgcc PKG_URL:= http://www.ruby-lang.org/ -PKG_SITES:= http://ftp.ruby-lang.org/pub/ruby/1.9/ +PKG_SITES:= http://ftp.ruby-lang.org/pub/ruby/2.0/ PKG_NOPARALLEL:= 1 PKG_HOST_DEPENDS:= !freebsd !cygwin @@ -19,26 +20,38 @@ PKG_HOST_DEPENDS:= !freebsd !cygwin DISTFILES:= ${PKG_NAME}-${PKG_VERSION}-p${PKG_EXTRAVER}.tar.gz WRKDIST= ${WRKDIR}/${PKG_NAME}-${PKG_VERSION}-p${PKG_EXTRAVER} +include ${TOPDIR}/mk/host.mk include ${TOPDIR}/mk/package.mk +$(eval $(call HOST_template,RUBY,ruby,${PKG_VERSION}-${PKG_RELEASE})) $(eval $(call PKG_template,RUBY,ruby,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) +# uClibc setpgrp does not take arguments +CONFIGURE_ENV+= ac_cv_func_setpgrp_void=yes \ + rb_cv_binary_elf=yes +CONFIGURE_ARGS+= --disable-install-doc \ + --with-baseruby=${STAGING_HOST_DIR}/usr/bin/ruby + MAKE_FILE:= GNUmakefile XAKE_FLAGS+= optflags='' debugflags='' dldflags="$(TARGET_LDFLAGS)" -# uClibc setpgrp does not take arguments -CONFIGURE_ENV+= ac_cv_func_setpgrp_void=yes rb_cv_binary_elf=yes -CONFIGURE_ARGS+= --disable-install-doc --with-baseruby=${STAGING_DIR}/bin/ruby ALL_TARGET:= main INSTALL_TARGET:= install-nodoc -pre-configure: - (cd ${WRKBUILD}; rm -rf config.{cache,status} ; \ - rb_cv_binary_elf=yes ./configure --prefix=$(STAGING_HOST_DIR) --disable-install-doc \ - ); - -$(MAKE) -C ${WRKBUILD} main Q="" - cp ${WRKBUILD}/ruby ${STAGING_DIR}/bin/ruby - $(MAKE) -C ${WRKBUILD} install-nodoc - $(MAKE) -C ${WRKBUILD} clean +HOST_CONFIGURE_ARGS+= --disable-install-doc \ + --disable-shared \ + --prefix=$(HOST_WRKINST)/usr \ + --bindir=$(HOST_WRKINST)/usr/bin \ + --mandir=$(HOST_WRKINST)/usr/share/man \ + --disable-rubygems +HOST_ALL_TARGET:= main +HOST_INSTALL_TARGET:= install-nodoc +HOST_XAKE_FLAGS:= V=1 DESTDIR="" + +ruby-hostinstall: + $(INSTALL_BIN) $(HOST_WRKINST)/usr/bin/ruby \ + $(STAGING_HOST_DIR)/usr/bin + $(CP) $(HOST_WRKINST)/usr/lib/ruby \ + $(STAGING_HOST_DIR)/usr/lib ruby-install: ${INSTALL_DIR} ${IDIR_RUBY}/usr/lib/ruby @@ -47,4 +60,5 @@ ruby-install: ${CP} ${WRKINST}/usr/lib/ruby/* ${IDIR_RUBY}/usr/lib/ruby ${INSTALL_BIN} ${WRKINST}/usr/bin/* ${IDIR_RUBY}/usr/bin +include ${TOPDIR}/mk/host-bottom.mk include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/ruby/patches/patch-configure b/package/ruby/patches/patch-configure new file mode 100644 index 000000000..f278b96ee --- /dev/null +++ b/package/ruby/patches/patch-configure @@ -0,0 +1,141 @@ +--- ruby-2.0.0-p247.orig/configure 2013-06-27 13:16:17.000000000 +0200 ++++ ruby-2.0.0-p247/configure 2013-10-24 11:12:04.000000000 +0200 +@@ -7373,138 +7373,6 @@ else + fi + + +- # -fstack-protector +- case "$target_os" in #( +- mingw*|nacl|haiku) : +- +- stack_protector=no +- ;; #( +- *) : +- +- +- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -fstack-protector is accepted as CFLAGS" >&5 +-$as_echo_n "checking whether -fstack-protector is accepted as CFLAGS... " >&6; } +- save_CFLAGS="$CFLAGS" +-CFLAGS="$CFLAGS $rb_cv_warnflags" +-if test "${ac_c_werror_flag+set}"; then +- rb_c_werror_flag="$ac_c_werror_flag" +-else +- unset rb_c_werror_flag +-fi +-ac_c_werror_flag=yes +- +- CFLAGS="$CFLAGS -fstack-protector" +- cat confdefs.h - <<_ACEOF >conftest.$ac_ext +-/* end confdefs.h. */ +- +-int +-main () +-{ +- +- ; +- return 0; +-} +-_ACEOF +-if ac_fn_c_try_compile "$LINENO"; then : +- stack_protector=yes +- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +-$as_echo "yes" >&6; } +-else +- stack_protector=no +- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +-$as_echo "no" >&6; } +-fi +-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +- +-CFLAGS="$save_CFLAGS" +-save_CFLAGS= +-if test "${rb_c_werror_flag+set}"; then +- ac_c_werror_flag="$rb_c_werror_flag" +-else +- unset ac_c_werror_flag +-fi +- +- if test "x$stack_protector" = xyes; then +- +- save_LDFLAGS="$LDFLAGS" +- LDFLAGS="$LDFLAGS -fstack-protector" +- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -fstack-protector is accepted as LDFLAGS" >&5 +-$as_echo_n "checking whether -fstack-protector is accepted as LDFLAGS... " >&6; } +- save_CFLAGS="$CFLAGS" +-CFLAGS="$CFLAGS $rb_cv_warnflags" +-if test "${ac_c_werror_flag+set}"; then +- rb_c_werror_flag="$ac_c_werror_flag" +-else +- unset rb_c_werror_flag +-fi +-ac_c_werror_flag=yes +- +- cat confdefs.h - <<_ACEOF >conftest.$ac_ext +-/* end confdefs.h. */ +- +-int +-main () +-{ +- +- ; +- return 0; +-} +-_ACEOF +-if ac_fn_c_try_link "$LINENO"; then : +- +- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +-$as_echo "yes" >&6; } +-else +- stack_protector=broken +- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +-$as_echo "no" >&6; } +-fi +-rm -f core conftest.err conftest.$ac_objext \ +- conftest$ac_exeext conftest.$ac_ext +- +-CFLAGS="$save_CFLAGS" +-save_CFLAGS= +-if test "${rb_c_werror_flag+set}"; then +- ac_c_werror_flag="$rb_c_werror_flag" +-else +- unset ac_c_werror_flag +-fi +- LDFLAGS="$save_LDFLAGS" +- save_LDFLAGS= +- +- fi +- ;; +-esac +- if test "x$stack_protector" = xyes; then +- # RUBY_APPEND_OPTION(XCFLAGS, -fstack-protector) +- case " ${XCFLAGS-} " in #( +- *' -fstack-protector '*) : +- ;; #( +- ' ') : +- XCFLAGS="-fstack-protector" ;; #( +- *) : +- XCFLAGS="$XCFLAGS -fstack-protector" ;; +-esac +- # RUBY_APPEND_OPTION(XLDFLAGS, -fstack-protector) +- case " ${XLDFLAGS-} " in #( +- *' -fstack-protector '*) : +- ;; #( +- ' ') : +- XLDFLAGS="-fstack-protector" ;; #( +- *) : +- XLDFLAGS="$XLDFLAGS -fstack-protector" ;; +-esac +- # RUBY_APPEND_OPTION(LDFLAGS, -fstack-protector) +- case " ${LDFLAGS-} " in #( +- *' -fstack-protector '*) : +- ;; #( +- ' ') : +- LDFLAGS="-fstack-protector" ;; #( +- *) : +- LDFLAGS="$LDFLAGS -fstack-protector" ;; +-esac +- fi +- + case "$target_os" in #( + mingw*) : + diff --git a/package/ruby/patches/patch-configure.orig b/package/ruby/patches/patch-configure.orig new file mode 100644 index 000000000..0405e2e91 --- /dev/null +++ b/package/ruby/patches/patch-configure.orig @@ -0,0 +1,11 @@ +--- ruby-2.0.0-p247.orig/configure 2013-06-27 13:16:17.000000000 +0200 ++++ ruby-2.0.0-p247/configure 2013-10-24 10:36:04.000000000 +0200 +@@ -7372,6 +7372,8 @@ else + unset ac_c_werror_flag + fi + ++# FIXME ++stack_protector=no + + # -fstack-protector + case "$target_os" in #( diff --git a/package/ruby/patches/patch-missing_isinf_c b/package/ruby/patches/patch-missing_isinf_c new file mode 100644 index 000000000..6029850b9 --- /dev/null +++ b/package/ruby/patches/patch-missing_isinf_c @@ -0,0 +1,19 @@ +--- ruby-2.0.0-p247.orig/missing/isinf.c 2011-05-15 13:55:52.000000000 +0200 ++++ ruby-2.0.0-p247/missing/isinf.c 2013-10-24 09:18:55.000000000 +0200 +@@ -5,6 +5,7 @@ + #define _IEEE 1 + #include <nan.h> + ++ + int + isinf(double n) + { +@@ -52,6 +53,8 @@ static double zero(void) { return 0.0; } + static double one (void) { return 1.0; } + static double inf (void) { return one() / zero(); } + ++#undef isinf ++ + int + isinf(double n) + { diff --git a/package/ruby/patches/patch-missing_isinf_c.orig b/package/ruby/patches/patch-missing_isinf_c.orig new file mode 100644 index 000000000..60b60aead --- /dev/null +++ b/package/ruby/patches/patch-missing_isinf_c.orig @@ -0,0 +1,11 @@ +--- ruby-2.0.0-p247.orig/missing/isinf.c 2011-05-15 13:55:52.000000000 +0200 ++++ ruby-2.0.0-p247/missing/isinf.c 2013-10-24 09:03:04.000000000 +0200 +@@ -5,6 +5,8 @@ + #define _IEEE 1 + #include <nan.h> + ++#undef isinf ++ + int + isinf(double n) + { diff --git a/package/ruby/patches/patch-missing_isnan_c b/package/ruby/patches/patch-missing_isnan_c new file mode 100644 index 000000000..f85fef4ec --- /dev/null +++ b/package/ruby/patches/patch-missing_isnan_c @@ -0,0 +1,11 @@ +--- ruby-2.0.0-p247.orig/missing/isnan.c 2010-07-28 10:12:01.000000000 +0200 ++++ ruby-2.0.0-p247/missing/isnan.c 2013-10-24 09:02:41.000000000 +0200 +@@ -4,6 +4,8 @@ + + static int double_ne(double n1, double n2); + ++#undef isnan ++ + int + isnan(double n) + { |