85 lines
2.3 KiB
Bash
85 lines
2.3 KiB
Bash
# Copyright 1999-2023 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=8
|
|
PLOCALES="ar ca cs da de el en en_au es es_ar es_bo es_cl es_co es_cr es_do es_ec es_gt es_hn es_mx es_ni es_pa es_pe es_pr es_py es_sv es_us es_uy es_ve et eu fi fr gl hi hu id_ID it ja ko lv mk nl no pa pl pt_br pt_pt ro_ro ru sk sl sq_al sv ta tr uk zh_cn zh_tw"
|
|
|
|
inherit desktop edo plocale qmake-utils
|
|
|
|
DESCRIPTION="Generic 2D CAD program"
|
|
HOMEPAGE="https://www.librecad.org/"
|
|
|
|
if [[ ${PV} == *9999* ]]; then
|
|
EGIT_REPO_URI="https://github.com/LibreCAD/LibreCAD.git"
|
|
inherit git-r3
|
|
else
|
|
SRC_URI="https://github.com/LibreCAD/LibreCAD/archive/${PV/_/}.tar.gz -> ${P}.tar.gz"
|
|
S="${WORKDIR}/LibreCAD-${PV}"
|
|
KEYWORDS="amd64 ~ppc64 ~riscv x86 ~amd64-linux ~x86-linux"
|
|
fi
|
|
|
|
LICENSE="GPL-2"
|
|
SLOT="0"
|
|
IUSE="debug doc tools"
|
|
|
|
RDEPEND="
|
|
dev-cpp/muParser
|
|
dev-libs/boost:=
|
|
dev-qt/qtcore:5
|
|
dev-qt/qtgui:5
|
|
dev-qt/qtprintsupport:5
|
|
dev-qt/qtsvg:5
|
|
dev-qt/qtwidgets:5
|
|
media-libs/freetype:2
|
|
"
|
|
DEPEND="${RDEPEND}
|
|
dev-qt/qthelp:5
|
|
dev-qt/qtxml:5
|
|
"
|
|
BDEPEND="
|
|
dev-qt/linguist-tools:5
|
|
"
|
|
|
|
src_prepare() {
|
|
default
|
|
|
|
# Stock script doesn't work correctly on gentoo (see bug #847394)
|
|
# and also it compiles all translations regardles of selected locales.
|
|
# To avoid this just comment out locale building and do it manually
|
|
sed -i -e '/LRELEASE/s!^!# !' scripts/postprocess-unix.sh || die
|
|
|
|
plocale_find_changes 'librecad/ts' 'librecad_' '.ts'
|
|
}
|
|
|
|
src_configure() {
|
|
eqmake5 -r
|
|
}
|
|
|
|
src_compile() {
|
|
default
|
|
|
|
build_locale() {
|
|
local lrelease="$(qt5_get_bindir)/lrelease"
|
|
edo "${lrelease}" "librecad/ts/librecad_${1}.ts" \
|
|
-qm "unix/resources/qm/librecad_${1}.qm"
|
|
edo "${lrelease}" "plugins/ts/plugins_${1}.ts" \
|
|
-qm "unix/resources/qm/plugins_${1}.qm"
|
|
}
|
|
|
|
plocale_for_each_locale build_locale
|
|
# We want the en locale to be always present. Otherwise it could
|
|
# be impossible to select the English command set which is quite crucial.
|
|
has en $(plocale_get_locales) || build_locale en
|
|
}
|
|
|
|
src_install() {
|
|
dobin unix/librecad
|
|
use tools && dobin unix/ttf2lff
|
|
insinto /usr/share/${PN}
|
|
doins -r unix/resources/*
|
|
use doc && docinto html && dodoc -r librecad/support/doc/*
|
|
insinto /usr/share/metainfo
|
|
doins unix/appdata/org.librecad.librecad.appdata.xml
|
|
doicon librecad/res/main/${PN}.png
|
|
make_desktop_entry ${PN} LibreCAD ${PN} Graphics
|
|
}
|