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 | |
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')
-rw-r--r-- | dev-db/sqlitestudio/Manifest | 1 | ||||
-rw-r--r-- | dev-db/sqlitestudio/metadata.xml | 15 | ||||
-rw-r--r-- | dev-db/sqlitestudio/sqlitestudio-3.1.1.ebuild | 138 |
3 files changed, 150 insertions, 4 deletions
diff --git a/dev-db/sqlitestudio/Manifest b/dev-db/sqlitestudio/Manifest index b2ec9bd85b89..b3fd769739de 100644 --- a/dev-db/sqlitestudio/Manifest +++ b/dev-db/sqlitestudio/Manifest @@ -1 +1,2 @@ DIST sqlitestudio-3.0.7.tar.gz 2551341 SHA256 b5ad7ac22a88eacb9404637ca6257934d0b1b59e16a182099bbdb158a7af55aa SHA512 2171fe26754aed2abe24d73e9ccc2ee1abe5e87228096bc5643c5638ad578dc323b810535f41d0206b3d7a7aa75132bfb578972c7945b962dd593543c7da3270 WHIRLPOOL 6078575b9bf6576d76965b2cf0c7a47a3b56488be8a75dd2df00b58cfab9d29e98ca30d21ac0dd47fe9a6fb0243052107b74686d90b12b9b2fbff05bc205736f +DIST sqlitestudio-3.1.1.tar.gz 8610037 SHA256 f757a82466e97137addd70dd5323a1a7ba7cad7841dc138812a2da2799f92c6c SHA512 421247730660e8396f692fd8df9366e6ae834633823004ef3cb7c6f3064e66f420f0517df6a8542b800f7f88dacf2fc646b4224b423ab3994c7d8a083e82e143 WHIRLPOOL d3ce08e65ac53367067fd8cd73997cc1313a2cc9de2d15605b91bf57e729a1249c953c4db7b54901e8d41bb2b80d04184fbf19feaee9077e8a07002de2a61a2e diff --git a/dev-db/sqlitestudio/metadata.xml b/dev-db/sqlitestudio/metadata.xml index 86e9ad873922..0e58a49e7265 100644 --- a/dev-db/sqlitestudio/metadata.xml +++ b/dev-db/sqlitestudio/metadata.xml @@ -1,8 +1,15 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> -<!-- maintainer-needed --> -<use> - <flag name="cli">Build CLI interface</flag> -</use> + <maintainer type="person"> + <email>reagentoo@gmail.com</email> + <name>Dmitry Baranov</name> + </maintainer> + <maintainer type="project"> + <email>proxy-maint@gentoo.org</email> + <name>Proxy Maintainers</name> + </maintainer> + <use> + <flag name="cli">Build CLI interface</flag> + </use> </pkgmetadata> 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;" )" +} |