updates versions for gmp, lua, tcl, mercurial

This commit is contained in:
Jerome Duval
2014-05-05 17:12:03 +00:00
parent 327c2dc16f
commit bd25f6ae10
6 changed files with 453 additions and 0 deletions

View File

@@ -0,0 +1,66 @@
SUMMARY="Lua is a powerful, fast, light-weight, embeddable scripting language."
HOMEPAGE="http://www.lua.org"
SRC_URI="http://www.lua.org/ftp/lua-$portVersion.tar.gz"
CHECKSUM_SHA256="13c2fb97961381f7d06d5b5cea55b743c163800896fd5c5e2356201d3619002d"
REVISION="1"
ARCHITECTURES="x86 x86_gcc2 x86_64"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
lua$secondaryArchSuffix = $portVersion compat >= 5.2
cmd:lua$secondaryArchSuffix = $portVersion compat >= 5.2
cmd:lua5.2$secondaryArchSuffix = $portVersion compat >= 5.2
cmd:luac$secondaryArchSuffix = $portVersion compat >= 5.2
lib:liblua$secondaryArchSuffix = $portVersion compat >= 5.2
"
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
"
BUILD_PREREQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
cmd:make
cmd:gcc$secondaryArchSuffix
"
PROVIDES_devel="
lua${secondaryArchSuffix}_devel = $portVersion compat >= 5.2
devel:liblua$secondaryArchSuffix = $portVersion compat >= 5.2
devel:liblua52$secondaryArchSuffix = $portVersion compat >= 5.2
"
REQUIRES_devel="
lua$secondaryArchSuffix == $portVersion
"
PATCHES="lua-$portVersion.patchset"
BUILD()
{
make haiku MYCFLAGS="-DLUA_ROOT='\"$prefix/\"' -DLUA_LDIR='\"$dataDir/lua/5.2/\"'"
}
INSTALL()
{
make install INSTALL_TOP="$prefix" INSTALL_MAN="$manDir/man1" \
INSTALL_INC="$includeDir/lua52" INSTALL_LMOD="$dataDir/lua/5.2" \
INSTALL_LIB="$libDir" INSTALL_BIN="$binDir"
ln -s liblua.so $libDir/liblua.so.5.2
ln -s liblua.a $libDir/liblua52.a
mv $binDir/lua $binDir/lua5.2
ln -s $binDir/lua5.2 $binDir/lua
prepareInstalledDevelLib liblua
prepareInstalledDevelLib liblua52
packageEntries devel $developDir
}
LICENSE="MIT"
COPYRIGHT="1994-2012, Lua.org, PUC-Rio"
DESCRIPTION="
Lua combines simple procedural syntax with powerful data description \
constructs based on associative arrays and extensible semantics. Lua is \
dynamically typed, runs by interpreting bytecode for a register-based virtual \
machine, and has automatic memory management with incremental garbage \
collection, making it ideal for configuration, scripting, and rapid prototyping.
"

View File

@@ -0,0 +1,113 @@
From 95be65d7676d75b778defff51dd110e31644d499 Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Mon, 5 May 2014 15:59:15 +0000
Subject: import patch from 5.2.1
diff --git a/Makefile b/Makefile
index d2c7db4..baa4521 100644
--- a/Makefile
+++ b/Makefile
@@ -36,12 +36,12 @@ RM= rm -f
# == END OF USER SETTINGS -- NO NEED TO CHANGE ANYTHING BELOW THIS LINE =======
# Convenience platforms targets.
-PLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris
+PLATS= aix ansi bsd freebsd generic haiku linux macosx mingw posix solaris
# What to install.
TO_BIN= lua luac
TO_INC= lua.h luaconf.h lualib.h lauxlib.h lua.hpp
-TO_LIB= liblua.a
+TO_LIB= liblua.a liblua.so
TO_MAN= lua.1 luac.1
# Lua version and release.
@@ -52,7 +52,7 @@ R= $V.3
all: $(PLAT)
$(PLATS) clean:
- cd src && $(MAKE) $@
+ cd src && $(MAKE) V=$(V) $@
test: dummy
src/lua -v
diff --git a/src/Makefile b/src/Makefile
index 7b4b2b7..8edc5d6 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -26,9 +26,10 @@ MYOBJS=
# == END OF USER SETTINGS -- NO NEED TO CHANGE ANYTHING BELOW THIS LINE =======
-PLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris
+PLATS= aix ansi bsd freebsd generic haiku linux macosx mingw posix solaris
LUA_A= liblua.a
+LUA_SO= liblua.so
CORE_O= lapi.o lcode.o lctype.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o \
lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o \
ltm.o lundump.o lvm.o lzio.o
@@ -43,7 +44,7 @@ LUAC_T= luac
LUAC_O= luac.o
ALL_O= $(BASE_O) $(LUA_O) $(LUAC_O)
-ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T)
+ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) $(LUA_SO)
ALL_A= $(LUA_A)
# Targets start here.
@@ -65,6 +66,9 @@ $(LUA_T): $(LUA_O) $(LUA_A)
$(LUAC_T): $(LUAC_O) $(LUA_A)
$(CC) -o $@ $(LDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS)
+$(LUA_SO): $(CORE_O) $(LIB_O)
+ $(CC) -o $@ -shared -fPIC -Wl,-soname=liblua.so.$(V) $(LDFLAGS) $? $(LIBS)
+
clean:
$(RM) $(ALL_T) $(ALL_O)
@@ -102,6 +106,9 @@ freebsd:
generic: $(ALL)
+haiku:
+ $(MAKE) all SYSCFLAGS="-DLUA_USE_HAIKU" LIBS=
+
linux:
$(MAKE) $(ALL) SYSCFLAGS="-DLUA_USE_LINUX" SYSLIBS="-Wl,-E -ldl -lreadline"
diff --git a/src/luaconf.h b/src/luaconf.h
index 18be9a9..1cce188 100644
--- a/src/luaconf.h
+++ b/src/luaconf.h
@@ -38,7 +38,12 @@
#define LUA_USE_AFORMAT /* assume 'printf' handles 'aA' specifiers */
#endif
-
+#if defined(LUA_USE_HAIKU)
+#define LUA_USE_MKSTEMP
+#define LUA_USE_ISATTY
+#define LUA_USE_POPEN
+#define LUA_USE_DLOPEN
+#endif
#if defined(LUA_USE_LINUX)
#define LUA_USE_POSIX
@@ -100,8 +105,12 @@
#else /* }{ */
#define LUA_VDIR LUA_VERSION_MAJOR "." LUA_VERSION_MINOR "/"
+#ifndef LUA_ROOT
#define LUA_ROOT "/usr/local/"
+#endif
+#ifndef LUA_LDIR
#define LUA_LDIR LUA_ROOT "share/lua/" LUA_VDIR
+#endif
#define LUA_CDIR LUA_ROOT "lib/lua/" LUA_VDIR
#define LUA_PATH_DEFAULT \
LUA_LDIR"?.lua;" LUA_LDIR"?/init.lua;" \
--
1.8.3.4

View File

@@ -0,0 +1,66 @@
From 02a513a41a3a8aaf7a28bbb86db4eafaf63045ff Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Mon, 5 May 2014 16:07:04 +0000
Subject: import patch from previous version
diff --git a/tests/env.test b/tests/env.test
index ee13b7f..db8f1ce 100644
--- a/tests/env.test
+++ b/tests/env.test
@@ -85,7 +85,7 @@ set printenvScript [makeFile {
TCL_LIBRARY PATH LD_LIBRARY_PATH LIBPATH PURE_PROG_NAME DISPLAY
SHLIB_PATH SYSTEMDRIVE SYSTEMROOT DYLD_LIBRARY_PATH DYLD_FRAMEWORK_PATH
DYLD_NEW_LOCAL_SHARED_REGIONS DYLD_NO_FIX_PREBINDING
- __CF_USER_TEXT_ENCODING SECURITYSESSIONID LANG WINDIR TERM
+ __CF_USER_TEXT_ENCODING SECURITYSESSIONID LANG WINDIR TERM LIBRARY_PATH
CommonProgramFiles ProgramFiles CommonProgramW6432 ProgramW6432
} {
lrem names $name
@@ -117,7 +117,7 @@ foreach name [array names env] {
TCL_LIBRARY PATH LD_LIBRARY_PATH LIBPATH DISPLAY SHLIB_PATH
SYSTEMDRIVE SYSTEMROOT DYLD_LIBRARY_PATH DYLD_FRAMEWORK_PATH
DYLD_NEW_LOCAL_SHARED_REGIONS DYLD_NO_FIX_PREBINDING
- SECURITYSESSIONID LANG WINDIR TERM
+ SECURITYSESSIONID LANG WINDIR TERM LIBRARY_PATH
CONNOMPROGRAMFILES PROGRAMFILES COMMONPROGRAMW6432 PROGRAMW6432
}} {
unset env($name)
diff --git a/unix/tcl.m4 b/unix/tcl.m4
index f484989..def649b 100644
--- a/unix/tcl.m4
+++ b/unix/tcl.m4
@@ -652,7 +652,13 @@ AC_DEFUN([SC_ENABLE_THREADS], [
# The space is needed
THREADS_LIBS=" -lpthread"
else
- AC_CHECK_LIB(pthreads, pthread_mutex_init,
+ AC_CHECK_LIB(root, pthread_mutex_init,
+ tcl_ok=yes, tcl_ok=no)
+ if test "$tcl_ok" = "yes"; then
+ # The space is needed
+ THREAD_LIBS=" "
+ else
+ AC_CHECK_LIB(pthreads, pthread_mutex_init,
tcl_ok=yes, tcl_ok=no)
if test "$tcl_ok" = "yes"; then
# The space is needed
@@ -671,6 +677,7 @@ AC_DEFUN([SC_ENABLE_THREADS], [
AC_MSG_WARN([Don't know how to find pthread lib on your system - you must disable thread support or edit the LIBS in the Makefile...])
fi
fi
+ fi
fi
fi
@@ -1284,6 +1291,7 @@ AC_DEFUN([SC_CONFIG_CFLAGS], [
SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS}'
DL_OBJS="tclLoadDl.o"
DL_LIBS="-lroot"
+ LD_LIBRARY_PATH_VAR="LIBRARY_PATH"
AC_CHECK_LIB(network, inet_ntoa, [LIBS="$LIBS -lnetwork"])
;;
HP-UX-*.11.*)
--
1.8.3.4

View File

@@ -0,0 +1,79 @@
SUMMARY="A very powerful but easy to learn dynamic programming language"
DESCRIPTION="
Tcl (Tool Command Language) is a very powerful but easy to learn dynamic \
programming language, suitable for a very wide range of uses, including web \
and desktop applications, networking, administration, testing and many more. \
Open source and business-friendly, Tcl is a mature yet evolving language that \
is truly cross platform, easily deployed and highly extensible.
"
HOMEPAGE="http://www.tcl.tk"
SRC_URI="http://sourceforge.net/projects/tcl/files/Tcl/$portVersion/tcl$portVersion-src.tar.gz"
CHECKSUM_SHA256="f24eaae461795e6b09bf54c7e9f38def025892da55f26008c16413cfdda2884e"
REVISION="1"
ARCHITECTURES="x86 x86_gcc2 x86_64"
LICENSE="BSD (2-clause)"
COPYRIGHT="Regents of the University of California, Sun Microsystems, Inc., Scriptics Corporation, ActiveState Corporation and other parties"
SOURCE_DIR="tcl$portVersion"
PATCHES="tcl-8.5.15.patchset"
PROVIDES="
tcl = $portVersion compat >= 8.5
cmd:tclsh = $portVersion compat >= 8.5
cmd:tclsh8.5 = $portVersion compat >= 8.5
lib:libtcl8.5 = $portVersion compat >= 8.5
"
REQUIRES="
haiku >= $haikuVersion
"
BUILD_REQUIRES="
"
BUILD_PREREQUIRES="
haiku_devel >= $haikuVersion
cmd:autoconf
cmd:make
cmd:gcc
cmd:ld
cmd:find
cmd:sed
cmd:grep
"
BUILD()
{
cd unix
autoconf -f
runConfigure ./configure \
--enable-threads --enable-man-symlinks
make
}
INSTALL()
{
cd unix
make install
ln -s tclsh8.5 "${binDir}/tclsh"
prepareInstalledDevelLibs libtclstub8.5
packageEntries devel $developDir
packageEntries devel ${libDir}/tclConfig.sh
}
TEST()
{
cd unix
make test
}
PROVIDES_devel="
tcl_devel = $portVersion
devel:libtclstub8.5 = $portVersion
"
REQUIRES_devel="
tcl == $portVersion
"

View File

@@ -0,0 +1,73 @@
SUMMARY="GMP - GNU Multiple Precision Arithmetic Library"
DESCRIPTION="
The GNU Multiple Precision Arithmetic Library (GMP) is a free library for \
arbitrary-precision arithmetic, operating on signed integers, rational numbers, \
and floating point numbers. There are no practical limits to the precision \
except the ones implied by the available memory in the machine GMP runs on \
(operand dimension limit is 2^(32)-1 bits on 32-bit machines and 2^37 bits on \
64-bit machines). GMP has a rich set of functions, and the functions have a \
regular interface. The basic interface is for C but wrappers exist for other \
languages including Ada, C++, C#, OCaml, Perl, PHP, and Python.
"
HOMEPAGE="http://gmplib.org/"
SRC_URI="http://ftp.gnu.org/gnu/gmp/gmp-6.0.0a.tar.xz"
CHECKSUM_SHA256="9156d32edac6955bc53b0218f5f3763facb890b73a835d5e1b901dcf8eb8b764"
LICENSE="GNU GPL v3
GNU LGPL v3"
COPYRIGHT="1991-2014 Free Software Foundation, Inc."
REVISION="1"
ARCHITECTURES="x86 x86_gcc2 x86_64"
SECONDARY_ARCHITECTURES="x86_gcc2 x86"
PROVIDES="gmp$secondaryArchSuffix = $portVersion compat >= 6.0
lib:libgmp$secondaryArchSuffix = 10.2.0 compat >= 10
"
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel >= $haikuVersion
"
BUILD_PREREQUIRES="
cmd:gcc$secondaryArchSuffix
cmd:libtool
cmd:autoconf
cmd:automake
cmd:make
"
BUILD()
{
libtoolize --force --copy --install
aclocal
autoconf
automake --add-missing
runConfigure ./configure
make $jobArgs
}
INSTALL()
{
make install includedir=$includeDir includeexecdir=$includeDir
# prepare devel/lib
prepareInstalledDevelLibs libgmp
# devel package
packageEntries devel \
$developDir
}
TEST()
{
make check
}
# ----- devel package
PROVIDES_devel="
gmp${secondaryArchSuffix}_devel = $portVersion
devel:libgmp$secondaryArchSuffix = 10.2.0 compat >= 10
"
REQUIRES_devel="
gmp$secondaryArchSuffix == $portVersion base
"

View File

@@ -0,0 +1,56 @@
SUMMARY="Free, distributed source control management tool"
DESCRIPTION="
Mercurial is a free, distributed source control management tool.
"
HOMEPAGE="http://mercurial.selenic.com/"
COPYRIGHT="2005-2014 Matt Mackall et al."
LICENSE="GNU GPL v2"
SRC_URI="http://mercurial.selenic.com/release/mercurial-$portVersion.tar.gz"
CHECKSUM_SHA256="86462b3a1518e137cfe813dc273b8acb120ad71230a1813c0dc9335223b38f53"
REVISION="1"
ARCHITECTURES="x86_gcc2 x86 x86_64"
PATCHES="mercurial-2.8.1.patch"
PROVIDES="
mercurial = $portVersion compat >= 2
cmd:hg = $portVersion compat >= 2
"
REQUIRES="
haiku_devel >= $haikuVersion
cmd:python
cmd:nano
"
BUILD_REQUIRES="
haiku_devel >= $haikuVersion
"
BUILD_PREREQUIRES="
cmd:python
cmd:gcc
cmd:gettext
cmd:ld
cmd:make
cmd:msgfmt
"
BUILD()
{
$portPackageLinksDir/cmd~python/bin/python setup.py build --force
}
INSTALL()
{
$portPackageLinksDir/cmd~python/bin/python setup.py install \
--prefix="$prefix" \
--install-headers="$includedir" \
--force
}
TEST()
{
cd tests
python run-tests.py
}