WIP recipe for IUP

* Rebase the work I did against latest IUP release
 * Currently fails to build because IUP wants to generate both Lua 5.1
and 5.2 bindings. It seems we can't build_require both packages to build
the bindings ? (require should be ok, as the libs for each version will
go in different packages in the end).
 * Also, port some of the fixes to tecmake to the two other tecgraf libs
using it.
This commit is contained in:
Adrien Destugues
2013-11-15 23:45:03 +01:00
parent 75c04e7a07
commit 3af2497960
4 changed files with 8107 additions and 12 deletions

View File

@@ -1,4 +1,4 @@
From 25622aa79bc39c13f2d8f55a6a0572e34d06b962 Mon Sep 17 00:00:00 2001
From 6421d3e8c775ddb4477f4418a983d5bfa2b901f0 Mon Sep 17 00:00:00 2001
From: Adrien Destugues <pulkomandy@pulkomandy.tk>
Date: Thu, 14 Nov 2013 21:46:53 +0100
Subject: Make tecmake aware of Haiku and the lack of libm.
@@ -21,10 +21,20 @@ index cc89349..fc982e0 100755
}
diff --git a/tecmake.mak b/tecmake.mak
index f799a07..f317af2 100755
index f799a07..7ee8895 100755
--- a/tecmake.mak
+++ b/tecmake.mak
@@ -1177,7 +1177,9 @@ ifdef USE_X11
@@ -26,6 +26,9 @@ ifndef TEC_UNAME
TEC_SYSARCH:=$(shell uname -m)
# Fixes
+ ifeq ($(TEC_SYSNAME), Haiku)
+ TEC_SYSARCH:=$(shell uname -p)
+ endif
ifeq ($(TEC_SYSNAME), SunOS)
TEC_SYSARCH:=$(shell uname -p)
endif
@@ -1177,7 +1180,9 @@ ifdef USE_X11
STDINCS += $(X11_INC)
endif

View File

@@ -1,4 +1,4 @@
From 1274927462310ff54a257900076c5deed9559a13 Mon Sep 17 00:00:00 2001
From 49ce8054eee01b9a146ff7a7ee77303b7834b2a5 Mon Sep 17 00:00:00 2001
From: Adrien Destugues <pulkomandy@pulkomandy.tk>
Date: Fri, 15 Nov 2013 21:59:25 +0100
Subject: Import Haiku port sources.
@@ -688,7 +688,7 @@ index cc89349..fc982e0 100644
}
diff --git a/tecmake.mak b/tecmake.mak
index e5f5efd..169d45f 100644
index e5f5efd..6463f3c 100644
--- a/tecmake.mak
+++ b/tecmake.mak
@@ -6,7 +6,7 @@
@@ -700,7 +700,17 @@ index e5f5efd..169d45f 100644
#---------------------------------#
@@ -505,6 +505,11 @@ else
@@ -26,6 +26,9 @@ ifndef TEC_UNAME
TEC_SYSARCH:=$(shell uname -m)
# Fixes
+ ifeq ($(TEC_SYSNAME), Haiku)
+ TEC_SYSARCH:=$(shell uname -p)
+ endif
ifeq ($(TEC_SYSNAME), SunOS)
TEC_SYSARCH:=$(shell uname -p)
endif
@@ -505,6 +508,11 @@ else
endif
endif
@@ -712,7 +722,7 @@ index e5f5efd..169d45f 100644
ifneq ($(findstring Linux, $(TEC_UNAME)), )
UNIX_LINUX = Yes
ifdef BUILD_64
@@ -852,6 +857,7 @@ endif
@@ -852,6 +860,7 @@ endif
ifdef USE_IUP
IUP_SUFFIX ?=
ifdef USE_IUP3
@@ -720,7 +730,7 @@ index e5f5efd..169d45f 100644
ifdef GTK_DEFAULT
ifdef USE_MOTIF
IUP_SUFFIX := mot
@@ -869,6 +875,7 @@ ifdef USE_IUP
@@ -869,6 +878,7 @@ ifdef USE_IUP
endif
endif
endif
@@ -728,7 +738,7 @@ index e5f5efd..169d45f 100644
else
ifndef NO_OVERRIDE
override USE_MOTIF = Yes
@@ -902,17 +909,21 @@ endif
@@ -902,17 +912,21 @@ endif
ifdef USE_CD
CD_SUFFIX ?=
@@ -761,7 +771,7 @@ index e5f5efd..169d45f 100644
endif
endif
endif
@@ -993,7 +1004,6 @@ endif
@@ -993,7 +1007,6 @@ endif
ifdef LINK_FREETYPE
FREETYPE = freetype
ifneq ($(findstring cygw, $(TEC_UNAME)), )
@@ -769,7 +779,7 @@ index e5f5efd..169d45f 100644
FREETYPE = freetype-6
endif
@@ -1138,23 +1148,21 @@ ifdef USE_GTK
@@ -1138,23 +1151,21 @@ ifdef USE_GTK
ifndef USE_GTK3
STDINCS += $(GTK)/lib/x86_64-linux-gnu/gtk-2.0/include
endif
@@ -808,7 +818,7 @@ index e5f5efd..169d45f 100644
endif
endif
@@ -1180,7 +1188,9 @@ ifdef USE_X11
@@ -1180,7 +1191,9 @@ ifdef USE_X11
STDINCS += $(X11_INC)
endif

View File

@@ -0,0 +1,70 @@
SUMMARY="IUP is a multi-platform toolkit for building graphical user interfaces."
HOMEPAGE="http://www.tecgraf.puc-rio.br/iup/"
SRC_URI="http://downloads.sourceforge.net/project/iup/3.8/Docs%20and%20Sources/iup-3.8_Sources.zip" # The tar.gz has permission problems.
CHECKSUM_MD5="b14469c2dd46af3e1bb1ecc8dc216061"
REVISION="1"
ARCHITECTURES="x86_gcc2"
PROVIDES="
iup = $portVersion
"
REQUIRES="
lib:liblua
lib:libcd >= 5.6
lib:libim >= 3.8
"
BUILD_REQUIRES="
haiku_devel$secondaryArchSuffix >= $haikuVersion
cmd:gcc$secondaryArchSuffix
cmd:make
cmd:which
cmd:yacc
devel:libcd
devel:libfontconfig
devel:libfreetype
devel:libGLU
devel:libim
devel:liblua
devel:libxml2
devel:libz
"
SOURCE_DIR="iup"
PATCHES="iup-3.8.patchset"
BUILD()
{
make
}
INSTALL()
{
mkdir -p $developLibDir
mkdir -p $libDir
mkdir -p $includeDir
# These are built as dependencies instead of using the system ones...
rm lib/Haiku11/libz.*
rm lib/Haiku11/libfreetype.*
cp lib/Haiku11/*.so $libDir
cp lib/Haiku11/*.a $developLibDir
cp include/* $includeDir
# Won't work, the libs have no soname...
# prepareInstalledDevelLib libim
# libim libim_fftw libim_jp2 libim_process libim_process_omp \
# libimlua51 libimlua_fftw51 libimlua_jp251 libimlua_process51 libimlua_process_omp51 \
# libimlua52 libimlua_fftw52 libimlua_jp252 libimlua_process52 libimlua_process_omp52
packageEntries devel $developDir
}
LICENSE="MIT"
COPYRIGHT="1994-2013 Tecgraf, PUC-Rio."
DESCRIPTION="IUP is a multi-platform toolkit for building graphical user interfaces. It offers APIs in three basic languages: C, Lua and LED.
Its library contains about 100 functions for creating and manipulating dialogs.
IUP's purpose is to allow a program to run in different systems without changes - the toolkit provides the application portability. Supported systems include: GTK+, Motif and Windows.
IUP uses an abstract layout model based on the boxes-and-glue paradigm from the TEX text editor. This model, combined with the dialog-specification language (LED) or with the Lua binding (IupLua) makes the dialog creation task more flexible and independent from the graphics system's resolution."

File diff suppressed because it is too large Load Diff