1SUMMARY="An open source engine for Heroes or Might and Magic III"
2DESCRIPTION="
3We want to rewrite the entire H3 engine (VCMI is NOT another mod) giving it \
4new possibilities. Few years of intensive work resulted in creating an \
5application with an impressive amount of features.
6
7You'll require the original game files to use this port."
8HOMEPAGE="https://vcmi.eu"
9COPYRIGHT="2005-2023 VCMI Team"
10LICENSE="GNU GPL v2"
11REVISION="2"
12SOURCE_URI="https://github.com/vcmi/vcmi/archive/$portVersion.tar.gz"
13CHECKSUM_SHA256="1c714487a6c3c7b9fd956fc2a50d05a1ebcc9431c6b9c72f256143be38f4e0da"
14PATCHES="vcmi-$portVersion.patchset"
15
16ARCHITECTURES="all !x86_gcc2"
17SECONDARY_ARCHITECTURES="x86"
18
19PROVIDES="
20	vcmi$secondaryArchSuffix = $portVersion
21	cmd:vcmibuilder
22	cmd:vcmiclient
23	cmd:vcmieditor
24	cmd:vcmilauncher
25	cmd:vcmiserver
26	lib:libvcmi$secondaryArchSuffix
27	"
28REQUIRES="
29	haiku$secondaryArchSuffix
30	cmd:innoextract
31	lib:libavcodec$secondaryArchSuffix
32	lib:libboost_date_time$secondaryArchSuffix
33	lib:libboost_filesystem$secondaryArchSuffix
34	lib:libboost_program_options$secondaryArchSuffix
35	lib:libboost_system$secondaryArchSuffix
36	lib:libboost_thread$secondaryArchSuffix
37	lib:libexecinfo$secondaryArchSuffix
38	lib:libfuzzylite$secondaryArchSuffix
39	lib:libminizip$secondaryArchSuffix
40	lib:libQt5Core$secondaryArchSuffix
41	lib:libQt5Gui$secondaryArchSuffix
42	lib:libQt5Network$secondaryArchSuffix
43	lib:libQt5Widgets$secondaryArchSuffix
44	lib:libSDL2_2.0$secondaryArchSuffix
45	lib:libSDL2_image_2.0$secondaryArchSuffix
46	lib:libSDL2_mixer_2.0$secondaryArchSuffix
47	lib:libSDL2_ttf_2.0$secondaryArchSuffix
48	lib:libstdc++$secondaryArchSuffix
49	lib:libtbb$secondaryArchSuffix
50	lib:libz$secondaryArchSuffix
51	"
52
53BUILD_REQUIRES="
54	haiku${secondaryArchSuffix}_devel
55	# dependency of devel:libQt5Gui
56	devel:libavcodec$secondaryArchSuffix
57	devel:libboost_filesystem$secondaryArchSuffix >= 1.70.0
58	devel:libboost_program_options$secondaryArchSuffix >= 1.70.0
59	devel:libboost_system$secondaryArchSuffix >= 1.70.0
60	devel:libboost_thread$secondaryArchSuffix >= 1.70.0
61	devel:libboost_unit_test_framework$secondaryArchSuffix >= 1.70.0
62	devel:libexecinfo$secondaryArchSuffix
63	devel:libfuzzylite$secondaryArchSuffix
64	devel:libGL$secondaryArchSuffix
65	devel:libminizip$secondaryArchSuffix
66	devel:libQt5Core$secondaryArchSuffix
67	devel:libQt5Gui$secondaryArchSuffix
68	devel:libQt5Network$secondaryArchSuffix
69	devel:libQt5Widgets$secondaryArchSuffix
70	devel:libSDL2_2.0$secondaryArchSuffix
71	devel:libSDL2_image_2.0$secondaryArchSuffix
72	devel:libSDL2_mixer_2.0$secondaryArchSuffix
73	devel:libSDL2_ttf_2.0$secondaryArchSuffix
74	devel:libtbb$secondaryArchSuffix
75	devel:libz$secondaryArchSuffix
76	"
77BUILD_PREREQUIRES="
78	cmd:as$secondaryArchSuffix
79	cmd:cmake
80	cmd:gcc$secondaryArchSuffix
81	cmd:lrelease$secondaryArchSuffix
82	cmd:make
83	cmd:pkg_config$secondaryArchSuffix
84	"
85
86BUILD()
87{
88	export CFLAGS=-DUSE_FILE32API
89	export CXXFLAGS="$CFLAGS -DBOOST_NO_CXX11_CONSTEXPR"
90	cmake -Bbuild -S. -DCMAKE_BUILD_TYPE=Release \
91		-DDATA_DIR=$relativeDataDir/vcmi \
92		-DCMAKE_INSTALL_PREFIX=$prefix \
93		-DLIB_DIR=$relativeLibDir \
94		-DFORCE_BUNDLED_FL=0 \
95		-DBUILD_SHARED_LIBS=ON \
96		-DCMAKE_DISABLE_PRECOMPILE_HEADERS=ON
97
98	make -C build $jobArgs
99}
100
101INSTALL()
102{
103	make -C build install
104
105	rm -r $prefix/share # desktop file and png icons we don't care about
106
107	addAppDeskbarSymlink $prefix/bin/vcmilauncher "VCMI (Heroes Of Might And Magic III)"
108}
109