1SUMMARY="ECMAScipt compatible parser and engine"
2DESCRIPTION="This library provides an ECMAScript compatible interpreter.
3The ECMA standard is based on well known scripting languages such as \
4Netscape's JavaScript and Microsoft's JScript."
5HOMEPAGE="https://invent.kde.org/frameworks/kjs/"
6COPYRIGHT="2010-2024 KDE Organisation"
7LICENSE="GNU LGPL v2.1"
8REVISION="1"
9SOURCE_URI="https://download.kde.org/stable/frameworks/${portVersion%.*}/portingAids/kjs-${portVersion}.tar.xz"
10CHECKSUM_SHA256="9cf4e00070586af43a21d5e4c30c61e66bc1c5f53952d4335bc7df44f9130432"
11PATCHES="kjs-$portVersion.patchset"
12
13ARCHITECTURES="all !x86_gcc2"
14SECONDARY_ARCHITECTURES="x86"
15
16PROVIDES="
17	kjs$secondaryArchSuffix = $portVersion
18	cmd:kjs5$secondaryArchSuffix = $portVersion
19	lib:libKF5JS$secondaryArchSuffix = $portVersion compat >= 5
20	lib:libKF5JSApi$secondaryArchSuffix = $portVersion compat >= 5
21	"
22REQUIRES="
23	haiku$secondaryArchSuffix
24	lib:libKF5DocTools$secondaryArchSuffix
25	lib:libpcre$secondaryArchSuffix
26	lib:libQt5Core$secondaryArchSuffix
27	"
28
29PROVIDES_devel="
30	kjs${secondaryArchSuffix}_devel = $portVersion
31	devel:libKF5JS$secondaryArchSuffix = $portVersion compat >= 5
32	devel:libKF5JSApi$secondaryArchSuffix = $portVersion compat >= 5
33	"
34REQUIRES_devel="
35	kjs$secondaryArchSuffix == $portVersion base
36	"
37
38BUILD_REQUIRES="
39	haiku${secondaryArchSuffix}_devel
40	docbook_xml_dtd
41	docbook_xsl_stylesheets == 1.79.2
42	extra_cmake_modules$secondaryArchSuffix >= $portVersion
43	devel:libKF5DocTools$secondaryArchSuffix == $portVersion
44	devel:libpcre$secondaryArchSuffix
45	devel:libQt5Core$secondaryArchSuffix
46	"
47BUILD_PREREQUIRES="
48	cmd:cmake
49	cmd:g++$secondaryArchSuffix
50	cmd:lrelease$secondaryArchSuffix >= 5
51	cmd:make
52	cmd:perl
53	cmd:pkg_config$secondaryArchSuffix
54	"
55
56PATCH()
57{
58	sed -e '/platforms:/ a \ \ \ \ - name: Haiku' -i $sourceDir/metainfo.yaml
59	#disable docs generation
60	sed -e '/add_subdirectory(docs)/ s/^#*/#/' -i CMakeLists.txt
61	sed -e '/kdoctools_install(po)/ s/^#*/#/' -i CMakeLists.txt
62	sed -e '/add_subdirectory(kjs5)/ s/^#*/#/' -i docs/CMakeLists.txt
63	sed -e '/kdoctools_create_manpage/ s/^#*/#/' -i docs/kjs5/CMakeLists.txt
64}
65
66BUILD()
67{
68	mkdir -p build
69	cd build
70
71	cmake .. $cmakeDirArgs \
72		-DCMAKE_BUILD_TYPE=Release \
73		-DKDE_INSTALL_PLUGINDIR=$addOnsDir/Qt5 \
74		-DECM_MKSPECS_INSTALL_DIR=$dataDir/Qt5/mkspecs \
75		-DECM_DIR=/system/data/cmake/Modules/ECM/cmake \
76		-DDocBookXSL_DIR=/system/data/xml/docbook/xsl-stylesheets-1.79.2
77
78	make $jobArgs
79}
80
81INSTALL()
82{
83	cd build
84	make install
85
86	prepareInstalledDevelLibs \
87		libKF5JS \
88		libKF5JSApi
89
90	packageEntries devel \
91		$libDir/cmake \
92		$dataDir/Qt5/mkspecs \
93		$developDir
94}
95
96TEST()
97{
98	cd build
99	make test
100}
101