summaryrefslogtreecommitdiffstats
path: root/trinity-apps/kspread/kspread-14.1.0.ebuild
blob: 94e0f1ee0c468b1f187dd7da7caceccda61fb383 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
# Copyright 1999-2023 Gentoo Authors
# Copyright 2022-2023 The Trinity Desktop Project
# Distributed under the terms of the GNU General Public License v2

EAPI="8"

TRINITY_MODULE_NAME="koffice"
TRINITY_MODULE_TYPE="applications/office"
TRINITY_BUILD_ADMIN="yes"
TRINITY_SUBMODULE="kspread filters/kspread"
TSM_EXTRACT_ALSO="lib interfaces filters/kexi kexi filters/liboofilter doc"

inherit flag-o-matic trinity-meta-2

DESCRIPTION="KOffice spreadsheet application for TDE [Trinity]"
HOMEPAGE="http://trinitydesktop.org/"

SLOT="14"
if [[ ${PV} != *9999* ]] ; then
	KEYWORDS="~amd64 ~arm64 ~x86"
fi
IUSE="+handbook"

DEPEND="
	~trinity-apps/koffice-libs-${PV}
	~trinity-apps/kchart-${PV}
	~trinity-apps/kexi-${PV}
"

RDEPEND="${DEPEND}
	 handbook? ( ~trinity-base/khelpcenter-${PV}
		app-doc/doxygen )"

KMCOPYLIB="
	libkformula lib/kformula
	libkofficecore lib/kofficecore
	libkofficeui lib/kofficeui
	libkopainter lib/kopainter
	libkotext lib/kotext
	libkwmf lib/kwmf
	libkowmf lib/kwmf
	libkstore lib/store
	libkochart interfaces
	libkrossmain lib/kross/main
	libkrossapi lib/kross/api
	libkexidb kexi/kexidb
	libkexidbparser kexi/kexidb/parser"

src_prepare() {
		local search_path="${TDEDIR}/${get_libdir}"
	local libname dirname dirlist x
	libname=""
	for x in $KMCOPYLIB; do
		if [ "${libname}" == "" ] ; then
			libname="${x}"
		else
			dirname=$x
			mkdir -p ${dirname}
			pushd ${dirname}
			if [ ! "$(find ${search_path} -maxdepth 1 -name ${libname}*) 2>/dev/null" == "" ]; then
				ln -s ${TDEDIR}/$(get_libdir)/${libname}* .
				if  [[ ${dirname} =~ "lib"* ]] && [[ ! ${dirname} =~ "lib/kross"* ]] ; then
					dirlist="${dirlist} ${dirname/lib\/}"
				fi
			fi
			popd
			libname=""
		fi
	done
	if use handbook ; then
		echo -e "KDE_LANG = en\nSUBDIRS = ${PN}" >"${S}/doc/Makefile.am" || die
	fi
	echo "SUBDIRS=$dirlist kross" > "${S}/lib/Makefile.am"

	sed -i "${S}/kexi/migration/keximigratetest.cpp" \
	-e "/TDEApplication/ s|\");|\", true, true, true);|"

	echo "SUBDIRS = liboofilter kspread" > "${S}/filters/Makefile.am"
	echo "SUBDIRS = applixspread csv dbase gnumeric latex opencalc html qpro excel kexi" > "${S}/filters/kspread/Makefile.am"
	for i in $(find "${S}"/lib -iname "*\.ui"); do
		uic-tqt ${i} > ${i%.ui}.h
	done
	echo "SUBDIRS = kexidb" > "${S}/kexi/Makefile.am"

	trinity-meta-2_src_prepare

	echo 'all:' > "${S}/Makefile.am"
	echo 'install:' >> "${S}/Makefile.am"
	echo '.PHONY: all' >> "${S}/Makefile.am"
}

src_configure() {
	append-cxxflags "-std=c++11"
	trinity-meta-2_src_configure
}

src_compile() {
	sed 's|-std=c++11|-std=c++98|' -i "${S}/filters/kspread/qpro/libqpro/src/Makefile"
	trinity-meta-2_src_compile
	pushd "${S}/filters/liboofilter"
		emake
	popd
}

src_install() {
	trinity-meta-2_src_install
	if use handbook ; then
		pushd "${S}/doc" || die
			emake install DESTDIR="${D}"
		popd
	fi
}