$NetBSD: patch-aa,v 1.15 2012/07/25 20:25:50 bsiegert Exp $ * Adding Interix and MirBSD support. --- configure.in.orig Fri Feb 18 10:37:23 2011 +++ configure.in @@ -456,6 +456,9 @@ bsdi*) LIBS="-lm $LIBS" AC_DEFINE(BROKEN_SETREUID, 1) AC_DEFINE(BROKEN_SETREGID, 1) ac_cv_sizeof_rlim_t=8;; +interix3*) LIBS="-lm $LIBS" + ac_cv_func_getpgrp_void=yes + ;; freebsd*) LIBS="-lm $LIBS" AC_CACHE_CHECK([whether -lxpg4 has to be linked], rb_cv_lib_xpg4_needed, @@ -1232,6 +1235,13 @@ if test "$with_dln_a_out" != yes; then LDFLAGS="$LDFLAGS -Wl,-export-dynamic" fi rb_cv_dlopen=yes ;; + interix3*) : ${LDSHARED='${CC} -shared'} + LDFLAGS="$LDFLAGS -Wl,-E" + # use special random-slot linkage in 0x[56]XXXXXXX + DLDFLAGS="$DLDFLAGS "'-Wl,-h,$(.TARGET) -Wl,--image-base,$$(($$RANDOM %4096/2*262144+1342177280))' + LIBPATHFLAG=' -L%1$-s' + RPATHFLAG=' -Wl,-R%1$-s' + rb_cv_dlopen=yes ;; interix*) : ${LDSHARED="$CC -shared"} XLDFLAGS="$XLDFLAGS -Wl,-E" LIBPATHFLAG=" -L%1\$-s" @@ -1244,7 +1254,7 @@ if test "$with_dln_a_out" != yes; then test "$GCC" = yes && test "$rb_cv_prog_gnu_ld" = yes || LDSHARED="ld -Bshareable" fi rb_cv_dlopen=yes ;; - openbsd*) : ${LDSHARED="\$(CC) -shared ${CCDLFLAGS}"} + openbsd*|mirbsd*) : ${LDSHARED="\$(CC) -shared ${CCDLFLAGS}"} if test "$rb_cv_binary_elf" = yes; then LDFLAGS="$LDFLAGS -Wl,-E" fi @@ -1545,7 +1555,7 @@ if test "$enable_shared" = 'yes'; then LIBRUBY_ALIASES="" fi ;; - openbsd*) + openbsd*|mirbsd*) SOLIBS='$(LIBS)' LIBRUBY_SO='lib$(RUBY_INSTALL_NAME).so.$(MAJOR).'`expr ${MINOR} \* 10 + ${TEENY}` ;; @@ -1581,6 +1591,14 @@ if test "$enable_shared" = 'yes'; then LIBRUBY_DLDFLAGS='-install_name $(libdir)/lib$(RUBY_SO_NAME).dylib -current_version $(MAJOR).$(MINOR).$(TEENY) -compatibility_version $(MAJOR).$(MINOR)' LIBRUBY_ALIASES='lib$(RUBY_SO_NAME).$(MAJOR).$(MINOR).dylib lib$(RUBY_SO_NAME).dylib' ;; + interix3*) + SOLIBS='$(LIBS)' + LIBRUBY_SO='lib$(RUBY_SO_NAME).so.$(MAJOR)$(MINOR).$(TEENY)' + # link explicitly to 0x48000000 + LIBRUBY_DLDFLAGS='-Wl,-h,lib$(RUBY_SO_NAME).so.$(MAJOR)$(MINOR) -Wl,--image-base,1207959552' + LIBRUBYARG_SHARED='-Wl,-R -Wl,${libdir} -L${libdir} -L. -l$(RUBY_SO_NAME)' + LIBRUBY_ALIASES='lib$(RUBY_SO_NAME).so.$(MAJOR)$(MINOR) lib$(RUBY_SO_NAME).so' + ;; interix*) LIBRUBYARG_SHARED='-L. -L${libdir} -l$(RUBY_SO_NAME)' ;; @@ -1590,6 +1608,7 @@ if test "$enable_shared" = 'yes'; then fi if test "$enable_rpath" = yes; then LIBRUBYARG_SHARED="${linker_flag}-R ${linker_flag}\$(libdir) -L\$(libdir) $LIBRUBYARG_SHARED" + LIBRUBY_DLDFLAGS="${linker_flag}-R ${linker_flag}\$(libdir) -L\$(libdir) $LIBRUBY_DLDFLAGS" fi LDFLAGS="-L. $LDFLAGS"