diff options
author | Dmitry <reagentoo@gmail.com> | 2017-08-30 16:59:01 +0300 |
---|---|---|
committer | Andreas Sturmlechner <asturm@gentoo.org> | 2017-09-03 23:15:12 +0200 |
commit | 58cf293ee310cf049a1def91683ba0aad48616a9 (patch) | |
tree | 18118d90b36e515bff899042c89eb95cae13bc14 /dev-db/sqlitestudio/sqlitestudio-3.1.1.ebuild | |
parent | www-client/firefox: x86 stable (diff) | |
download | gentoo-58cf293ee310cf049a1def91683ba0aad48616a9.tar.gz gentoo-58cf293ee310cf049a1def91683ba0aad48616a9.tar.bz2 gentoo-58cf293ee310cf049a1def91683ba0aad48616a9.zip |
dev-db/sqlitestudio: version bump to 3.1.1
- Dropped kde5-functions eclass
- Added l10n support
- Migrated fdo-mime to xdg eclass
- Improved overall ebuild quality.
Gentoo-Bug: 629322
Closes: https://github.com/gentoo/gentoo/pull/5557
Diffstat (limited to 'dev-db/sqlitestudio/sqlitestudio-3.1.1.ebuild')
-rw-r--r-- | dev-db/sqlitestudio/sqlitestudio-3.1.1.ebuild | 138 |
1 files changed, 138 insertions, 0 deletions
diff --git a/dev-db/sqlitestudio/sqlitestudio-3.1.1.ebuild b/dev-db/sqlitestudio/sqlitestudio-3.1.1.ebuild new file mode 100644 index 000000000000..09e4d4616a8c --- /dev/null +++ b/dev-db/sqlitestudio/sqlitestudio-3.1.1.ebuild @@ -0,0 +1,138 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PLOCALES="de es fr it pl pt_BR ru sk zh_CN" + +inherit eutils l10n qmake-utils xdg + +DESCRIPTION="Powerful cross-platform SQLite database manager" +HOMEPAGE="https://sqlitestudio.pl" +SRC_URI="https://sqlitestudio.pl/files/sqlitestudio3/complete/tar/${P}.tar.gz" + +KEYWORDS="~amd64 ~x86" +LICENSE="GPL-3" +SLOT="0" +IUSE="cli cups tcl test" + +RDEPEND=" + dev-db/sqlite:3 + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtnetwork:5 + dev-qt/qtscript:5 + dev-qt/qtsvg:5 + dev-qt/qtwidgets:5 + dev-qt/qtxml:5 + cli? ( sys-libs/readline:* ) + cups? ( dev-qt/qtprintsupport:5 ) + tcl? ( dev-lang/tcl:* ) +" +DEPEND="${RDEPEND} + dev-qt/designer:5 + test? ( dev-qt/qttest:5 ) +" + +S="${WORKDIR}" +core_build_dir="${S}/output/build" +plugins_build_dir="${core_build_dir}/Plugins" + +src_prepare() { + xdg_src_prepare + + sed -i -e 's/linux|portable/portable/' \ + SQLiteStudio3/sqlitestudio/sqlitestudio.pro || die + + disable_modules() { + [[ $# -lt 2 ]] && die "not enough arguments" + + local pro="$1"; shift + local modules="${@}" + + sed -r -i \ + -e 's/('${modules// /|}')[[:space:]]*(\\?)/\2/' \ + ${pro} || die + } + + use cli || disable_modules SQLiteStudio3/SQLiteStudio3.pro cli + + local mod_lst=( DbSqlite2 ) + use cups || mod_lst+=( Printing ) + use tcl || mod_lst+=( ScriptingTcl ) + disable_modules Plugins/Plugins.pro ${mod_lst[@]} + + local mylrelease="$(qt5_get_bindir)"/lrelease + local ts_dir_lst=$(find * -type f -name "*.qm" -printf '%h\n' | sort -u) + local ts_pro_lst=$(find * -type f -name "*.pro" -exec grep -l 'TRANSLATIONS' {} \;) + local ts_qrc_lst=$(find * -type f -name "*.qrc" -exec grep -l '\.qm' {} \;) + + # delete all "*.qm" + for ts_dir in ${ts_dir_lst[@]}; do + rm "${ts_dir}"/*.qm || die + done + + prepare_locale() { + for ts_dir in ${ts_dir_lst[@]}; do + local ts=$(find "${ts_dir}" -type f -name "*${1}.ts" || continue) + "${mylrelease}" "${ts}" || die "preparing ${1} locale failed" + done + } + + rm_locale() { + for ts_pro in ${ts_pro_lst[@]}; do + sed -i -r -e 's/[^[:space:]]*'${1}'\.ts//' \ + ${ts_pro} || die + done + + for ts_qrc in ${ts_qrc_lst[@]}; do + sed -i -e '/'${1}'\.qm/d' \ + ${ts_qrc} || die + done + } + + local ts_dir_main="SQLiteStudio3/sqlitestudio/translations" + l10n_find_plocales_changes ${ts_dir_main} "sqlitestudio_" '.ts' + l10n_for_each_locale_do prepare_locale + l10n_for_each_disabled_locale_do rm_locale +} + +src_configure() { + # NOTE: QMAKE_CFLAGS_ISYSTEM option prevents + # build error with tcl use enabled (stdlib.h is missing) + local myqmakeargs=( + "BINDIR=${EPREFIX}/usr/bin" + "LIBDIR=${EPREFIX}/usr/$(get_libdir)" + "QMAKE_CFLAGS_ISYSTEM=\"\"" + $(usex test 'DEFINES+=tests' '') + ) + + ## Core + mkdir -p "${core_build_dir}" && cd "${core_build_dir}" || die + eqmake5 "${myqmakeargs[@]}" "${S}/SQLiteStudio3" + + ## Plugins + mkdir -p "${plugins_build_dir}" && cd "${plugins_build_dir}" || die + eqmake5 "${myqmakeargs[@]}" "${S}/Plugins" +} + +src_compile() { + emake -C "${core_build_dir}" + emake -C "${plugins_build_dir}" +} + +src_install() { + emake -C "${core_build_dir}" INSTALL_ROOT="${D}" install + emake -C "${plugins_build_dir}" INSTALL_ROOT="${D}" install + + doicon -s scalable "SQLiteStudio3/guiSQLiteStudio/img/${PN}.svg" + + local make_desktop_entry_args=( + "${PN} -- %F" + 'SQLiteStudio3' + "${PN}" + 'Development;Database;Utility' + ) + make_desktop_entry "${make_desktop_entry_args[@]}" \ + "$( printf '%s\n' "MimeType=application/x-sqlite3;" )" +} |