adds makeobj-nightly recipe,

adds simutrans_pak64-nightly and simutrans_pak128-nightly recipes,
updates simutrans_120.0.1, simutrans_nightly, simutrans_pak64-120.0.1,
simutrans_pak128-2.5.2
This commit is contained in:
taos
2015-06-22 06:51:11 +02:00
parent e1cefa27f6
commit 966ecde570
8 changed files with 279 additions and 20 deletions

View File

@@ -9,7 +9,7 @@ SRC_URI="http://sourceforge.net/projects/simutrans/files/simutrans/120-0-1/simut
CHECKSUM_SHA256="010a6e3765891e1821364e54f6bcdfb2911b627ffca3acae8350e06e53113683"
SRC_FILENAME="simutrans-$portVersion.zip"
SOURCE_DIR=""
COPYRIGHT=" 1997-2004 Hj. Malthaner
COPYRIGHT="1997-2004 Hj. Malthaner
2005-2014 The Simutrans Team"
LICENSE="Artistic"
REVISION="1"

View File

@@ -13,7 +13,7 @@ SRC_URI="svn://tron.yamagi.org/simutrans/simutrans/trunk \
--username=anon --password="
SRC_FILENAME="simutrans-$portVersion"
SOURCE_DIR="trunk"
COPYRIGHT=" 1997-2004 Hj. Malthaner
COPYRIGHT="1997-2004 Hj. Malthaner
2005-2015 The Simutrans Team"
LICENSE="Artistic"
REVISION="1"
@@ -35,7 +35,7 @@ REQUIRES="
lib:libz$secondaryArchSuffix
lib:libpng$secondaryArchSuffix
lib:libbz2$secondaryArchSuffix
simutrans_pakset >= 120.0.1
simutrans_pakset$secondaryArchSuffix >= 120.0.1
timgmsoundfont
"
BUILD_REQUIRES="

View File

@@ -1,10 +1,9 @@
SUMMARY="Pakset for Simutrans"
DESCRIPTION="
A 'pakset' is the data set that Simutrans needs to run: it contains all \
the data for the graphics of individual items (vehicles, roads, railways, \
buildings, etc.) and all of the balancing information (such as prices, \
speeds, capacities and so forth) necessary to make the game \
complete.
DESCRIPTION="A 'pakset' is the data set that Simutrans needs to run: \
it contains all the data for the graphics of individual items (vehicles, \
roads, railways, buildings, etc.) and all of the balancing information \
(such as prices, speeds, capacities and so forth) necessary to make \
the game complete.
When Simutrans could only support 64px size graphics, pak128 already \
started. First pak to feature a complex economy and have a very wide \
variety of objects. It contains roughly 7 time more graphics data than \
@@ -15,10 +14,8 @@ SRC_URI="http://sourceforge.net/projects/simutrans/files/pak128/pak128 for RC 12
CHECKSUM_SHA256="556e276cecea950b0434fc289e0c7ebf15df018c7ae35ea8010d3e2008df8b32"
SRC_FILENAME="simupak_128-$portVersion.zip"
SOURCE_DIR=""
COPYRIGHT=" 2004-2007 Tomas Kubes
2008-2013 Vladimir Slavik
2014 Gauthier Nottret
2009-2014 The pak128-Team"
COPYRIGHT="2004-2007 Tomas Kubes
2008-2014 The pak128-Team"
LICENSE="Artistic"
REVISION="1"
ARCHITECTURES="any"

View File

@@ -0,0 +1,59 @@
SUMMARY="Pakset for Simutrans"
DESCRIPTION="A 'pakset' is the data set that Simutrans needs to run: \
it contains all the data for the graphics of individual items (vehicles, \
roads, railways, buildings, etc.) and all of the balancing information \
(such as prices, speeds, capacities and so forth) necessary to make \
the game complete.
When Simutrans could only support 64px size graphics, pak128 already \
started. First pak to feature a complex economy and have a very wide \
variety of objects. It contains roughly 7 time more graphics data than \
pak64 and thus requires by far the largest amount of RAM and \
processing power of all Simutrans sets.
Nightly builds are versions only for debugging and testing. They may contain \
changes which make your savegames unreadable by any official version, or \
bugs that will destroy your game, or not even run. They are for bug testing \
only."
HOMEPAGE="http://www.simutrans.com"
SRC_URI="svn+https://svn.code.sf.net/p/simutrans/code/pak128/"
SRC_FILENAME="simupak_128-$portVersion"
SOURCE_DIR=""
COPYRIGHT="2004-2007 Tomas Kubes
2008-2015 The pak128-Team"
LICENSE="Artistic"
REVISION="1"
ARCHITECTURES="?x86 x86_64"
if [ $effectiveTargetArchitecture != x86_gcc2 ]; then
# x86_gcc2 is fine as primary target architecture as long as we're building
# for a different secondary architecture.
ARCHITECTURES="$ARCHITECTURES x86_gcc2"
fi
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
simutrans_pak128$secondaryArchSuffix = $portVersion
simutrans_pakset$secondaryArchSuffix = $portVersion compat >= 120.0.1
"
BUILD_PREREQUIRES="
cmd:svn
cmd:python
cmd:makeobj$secondaryArchSuffix == 55.4
"
GLOBAL_WRITABLE_FILES="
non-packaged/$relativeAppsDir/simutrans/pak128/config directory keep-old
"
BUILD()
{
python ./pakmak.py
}
INSTALL()
{
mkdir -p $appsDir/simutrans
mkdir -p $prefix/non-packaged/$relativeAppsDir/simutrans/pak128/config
cp -r simutrans $appsDir/
mv $appsDir/simutrans/pak128/config \
$prefix/non-packaged/$relativeAppsDir/simutrans/pak128/
ln -s $prefix/non-packaged/$relativeAppsDir/simutrans/pak128/config \
$appsDir/simutrans/pak128/config
}

View File

@@ -1,10 +1,9 @@
SUMMARY="Pakset for Simutrans"
DESCRIPTION="
A 'pakset' is the data set that Simutrans needs to run: it contains all \
the data for the graphics of individual items (vehicles, roads, railways, \
buildings, etc.) and all of the balancing information (such as prices, \
speeds, capacities and so forth) necessary to make the game \
complete.
DESCRIPTION="A 'pakset' is the data set that Simutrans needs to run: \
it contains all the data for the graphics of individual items (vehicles, \
roads, railways, buildings, etc.) and all of the balancing information \
(such as prices, speeds, capacities and so forth) necessary to make \
the game complete.
Pak64 is the main and a base set for Simutrans developed along with \
Simutrans executable. It always contains the most recent features. It is \
neatly painted pixel by pixel with motherly care. On the other hand it \
@@ -15,7 +14,7 @@ SRC_URI="http://sourceforge.net/projects/simutrans/files/pak64/120-0/simupak64-1
CHECKSUM_SHA256="02a709dfa4b0c22e0b463ebcbd9684548356de1c61566cff9c127a79990dbb78"
SRC_FILENAME="simupak_64-$portVersion.zip"
SOURCE_DIR=""
COPYRIGHT=" 1997-2004 Hj. Malthaner
COPYRIGHT="1997-2004 Hj. Malthaner
2005-2014 The Simutrans Team"
LICENSE="Artistic"
REVISION="1"

View File

@@ -0,0 +1,62 @@
SUMMARY="Pakset for Simutrans"
DESCRIPTION="A 'pakset' is the data set that Simutrans needs to run: \
it contains all the data for the graphics of individual items (vehicles, \
roads, railways, buildings, etc.) and all of the balancing information \
(such as prices, speeds, capacities and so forth) necessary to make \
the game complete.
Pak64 is the main and a base set for Simutrans developed along with \
Simutrans executable. It always contains the most recent features. It is \
neatly painted pixel by pixel with motherly care. On the other hand it \
might look too tiny on high resolution displays. Many artists contributed \
to this pak set, from the 8 bit age on.
Nightly builds are versions only for debugging and testing. They may contain \
changes which make your savegames unreadable by any official version, or \
bugs that will destroy your game, or not even run. They are for bug testing \
only."
HOMEPAGE="http://www.simutrans.com"
SRC_URI="svn+https://svn.code.sf.net/p/simutrans/code/pak64/"
SRC_FILENAME="simupak_64-$portVersion"
SOURCE_DIR=""
COPYRIGHT="1997-2004 Hj. Malthaner
2005-2015 The Simutrans Team"
LICENSE="Artistic"
REVISION="1"
ARCHITECTURES="?x86 x86_64"
if [ $effectiveTargetArchitecture != x86_gcc2 ]; then
# x86_gcc2 is fine as primary target architecture as long as we're building
# for a different secondary architecture.
ARCHITECTURES="$ARCHITECTURES x86_gcc2"
fi
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
simutrans_pak64$secondaryArchSuffix = $portVersion
simutrans_pakset$secondaryArchSuffix = $portVersion compat >= 120.0.1
"
BUILD_PREREQUIRES="
cmd:svn
cmd:make
cmd:find
cmd:makeobj$secondaryArchSuffix == 55.4
cmd:zip
"
GLOBAL_WRITABLE_FILES="
non-packaged/$relativeAppsDir/simutrans/pak/config directory keep-old
"
BUILD()
{
export MAKEOBJ=makeobj
make $jobArgs
}
INSTALL()
{
mkdir -p $appsDir/simutrans
mkdir -p $prefix/non-packaged/$relativeAppsDir/simutrans/pak/config
cp -r simutrans $appsDir/
mv $appsDir/simutrans/pak/config \
$prefix/non-packaged/$relativeAppsDir/simutrans/pak/
ln -s $prefix/non-packaged/$relativeAppsDir/simutrans/pak/config \
$appsDir/simutrans/pak/config
}

View File

@@ -0,0 +1,66 @@
SUMMARY="Tool for creating Simutrans paksets"
DESCRIPTION="Makeobj is a tool for graphics/pakset developers \
and is not needed for playing the game.
Makeobj joins both the image and the data files in a single \
compressed pak-file that will then be read by the game engine."
HOMEPAGE="http://www.simutrans.com"
SRC_URI="svn://tron.yamagi.org/simutrans/simutrans/trunk \
--username=anon --password="
SRC_FILENAME="simutrans-$portVersion"
SOURCE_DIR="trunk"
COPYRIGHT="1997-2004 Hj. Malthaner
2005-2015 The Simutrans Team"
LICENSE="Artistic"
REVISION="1"
ARCHITECTURES="?x86 x86_64"
if [ $effectiveTargetArchitecture != x86_gcc2 ]; then
# x86_gcc2 is fine as primary target architecture as long as we're building
# for a different secondary architecture.
ARCHITECTURES="$ARCHITECTURES x86_gcc2"
fi
SECONDARY_ARCHITECTURES="x86"
PATCHES="makeobj-$portVersion.patchset"
PROVIDES="
makeobj$secondaryArchSuffix = $portVersion
cmd:makeobj$secondaryArchSuffix = 55.4
"
REQUIRES="
haiku$secondaryArchSuffix
gcc_syslibs$secondaryArchSuffix
lib:libz$secondaryArchSuffix
lib:libpng$secondaryArchSuffix
lib:libbz2$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libsdl$secondaryArchSuffix
devel:libz$secondaryArchSuffix
devel:libpng$secondaryArchSuffix
devel:libbz2$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:gcc$secondaryArchSuffix
cmd:svn
cmd:autoreconf
cmd:aclocal
cmd:make
cmd:ld$secondaryArchSuffix
cmd:strip$secondaryArchSuffix
cmd:sdl_config$secondaryArchSuffix
cmd:pkg_config$secondaryArchSuffix
"
BUILD()
{
autoreconf configure.ac
runConfigure ./configure
make makeobj $jobArgs
strip makeobj/makeobj
}
INSTALL()
{
fixPkgconfig
mkdir -p $binDir
cp -r makeobj/makeobj $binDir/
}

View File

@@ -0,0 +1,76 @@
From 03547db5cb4f0ee90d5fa739eabbc182c4445772 Mon Sep 17 00:00:00 2001
From: none <user@shredder>
Date: Fri, 29 May 2015 08:17:51 +0200
Subject: adjust Makefile for Haiku x86_64 and prepare configure.ac for
enabling multithread in Haiku
diff --git a/Makefile b/Makefile
index aa0d57b..1df85ca 100644
--- a/Makefile
+++ b/Makefile
@@ -53,8 +53,7 @@ else
else
# Haiku (needs to activate the GCC 4x)
ifeq ($(OSTYPE),haiku)
- setarch x86
- LIBS += -lnetwork -lbe -llocale
+ LIBS += -lnetwork -lbe
endif
endif
endif
@@ -114,7 +113,9 @@ ifneq ($(MULTI_THREAD),)
#use lpthreadGC2d for debug alternatively
LDFLAGS += -lpthreadGC2
else
- LDFLAGS += -lpthread
+ ifneq ($(OSTYPE),haiku)
+ LDFLAGS += -lpthread
+ endif
endif
endif
endif
diff --git a/configure.ac b/configure.ac
index 85d5afd..d1e9b83 100644
--- a/configure.ac
+++ b/configure.ac
@@ -16,7 +16,7 @@ AC_CHECK_LIB(bz2, BZ2_bzReadOpen, [], [AC_MSG_WARN([Error, libbz2 is missing!])]
AC_CHECK_LIB(freetype2, load_FT_font, [AC_SUBST(freetype2, '-DUSE_FREETYPE')], [AC_SUBST(freetype2, '')] )
# optional (but highly recommended) multithreading
-AC_CHECK_LIB(pthread, pthread_mutex_destroy, [AC_SUBST(multithread, 1)], [AC_SUBST(multithread, 0)] )
+AC_SEARCH_LIBS(pthread_mutex_destroy, pthread, [AC_SUBST(multithread, 1)], [AC_SUBST(multithread, 0)] )
# find OS and backend by libs ...
AC_CHECK_LIB(SDL2, SDL_GetRenderDriverInfo)
diff --git a/simsys.cc b/simsys.cc
index e4dc228..2ef7bac 100644
--- a/simsys.cc
+++ b/simsys.cc
@@ -7,7 +7,9 @@
#ifdef __HAIKU__
#include <Message.h>
#include <LocaleRoster.h>
+#include <SupportDefs.h>
#define NO_UINT32_TYPES
+#define NO_UINT64_TYPES
#endif
#include "macros.h"
diff --git a/simtypes.h b/simtypes.h
index cedbbec..912e95d 100644
--- a/simtypes.h
+++ b/simtypes.h
@@ -131,7 +131,9 @@ typedef unsigned long uint32;
#endif
#endif
typedef signed long long sint64;
+#ifndef NO_UINT64_TYPES
typedef unsigned long long uint64;
+#endif
#ifdef _MSC_VER
# define GCC_PACKED
# define GCC_ALIGN(a)
--
1.8.3.4