summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorband-a-prend <torokhov-s-a@yandex.ru>2018-05-25 23:09:17 +0300
committerMatthias Maier <tamiko@gentoo.org>2018-05-28 17:17:03 -0500
commit78804d2fb75c184d218506dbac832efc86f3fe11 (patch)
treedc05bb4e404354ad25d87ec8dfee7cd205c27794 /dev-util/astyle
parentdev-util/codeblocks: remove old (diff)
downloadgentoo-78804d2fb75c184d218506dbac832efc86f3fe11.tar.gz
gentoo-78804d2fb75c184d218506dbac832efc86f3fe11.tar.bz2
gentoo-78804d2fb75c184d218506dbac832efc86f3fe11.zip
dev-util/astyle: spliting into sub-slots
As dev-util/astyle-3.1 has changed interfeces compared with -3.0.1 spliting into sub-slots "0/3.0" and "0/3.1" introduced. This can be usefull to rebuild packages that depends on astyle if it's sub-slot updates. E.g. codeblocks-17.12 could use system installed astyle-3.0.x and incompatible with astyle 3.1 without codeblocks Astyle plugin patching. So it's will need to rebuild codeblocks if user for some reason want to have astyle-3.1 and use codeblocks. Also dev-util/astyle-3.0.1-r1.ebuild creates "libastyle.so" symlink now during installation like for dev-util/astyle-3.1 to avoid linking error during compilation with using "-lastyle" key. Signed-off-by: Matthias Maier <tamiko@gentoo.org> Closes: https://github.com/gentoo/gentoo/pull/8585
Diffstat (limited to 'dev-util/astyle')
-rw-r--r--dev-util/astyle/astyle-3.0.1-r1.ebuild90
-rw-r--r--dev-util/astyle/astyle-3.1-r2.ebuild90
2 files changed, 180 insertions, 0 deletions
diff --git a/dev-util/astyle/astyle-3.0.1-r1.ebuild b/dev-util/astyle/astyle-3.0.1-r1.ebuild
new file mode 100644
index 000000000000..cdc9411aa460
--- /dev/null
+++ b/dev-util/astyle/astyle-3.0.1-r1.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit flag-o-matic toolchain-funcs versionator java-pkg-opt-2
+
+DESCRIPTION="Artistic Style is a re-indenter and reformatter for C++, C and Java source code"
+HOMEPAGE="http://astyle.sourceforge.net/"
+SRC_URI="mirror://sourceforge/astyle/astyle_${PV}_linux.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/3.0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE="examples java static-libs"
+
+DEPEND="app-arch/xz-utils
+ java? ( >=virtual/jdk-1.6:= )"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${PN}"
+
+src_prepare() {
+ if use java ; then
+ java-pkg-opt-2_src_prepare
+ sed -e "s:^\(JAVAINCS\s*\)=.*$:\1= $(java-pkg_get-jni-cflags):" \
+ -e "s:ar crs:$(tc-getAR) crs:" \
+ -i build/gcc/Makefile || die
+ else
+ default
+ fi
+}
+
+src_configure() {
+ append-cxxflags -std=c++11
+ tc-export CXX
+ default
+}
+
+src_compile() {
+ # ../build/clang/Makefile is identical except for CXX line.
+ emake CXX="$(tc-getCXX)" -f ../build/gcc/Makefile -C src \
+ ${PN} \
+ shared \
+ $(usev java) \
+ $(usex static-libs static '')
+}
+
+src_install() {
+ doheader src/${PN}.h
+
+ pushd src/bin >/dev/null || die
+ dobin ${PN}
+
+ # ex: libastyle.so.3.0.1
+ local libastylename=lib${PN}.so.${PV}
+ dolib.so ${libastylename}
+ # ex: libastyle.so.3
+ local libdestdir=/usr/$(get_libdir)
+ dosym ${libastylename} ${libdestdir}/lib${PN}.so.$(get_major_version)
+ dosym ${libastylename} ${libdestdir}/lib${PN}.so
+ if use java ; then
+ local libastylejname=lib${PN}j.so.${PV}
+ dolib.so ${libastylejname}
+ dosym ${libastylejname} ${libdestdir}/lib${PN}j.so.$(get_major_version)
+ dosym ${libastylejname} ${libdestdir}/lib${PN}j.so
+ fi
+ if use static-libs ; then
+ dolib.a lib${PN}.a
+ fi
+ popd >/dev/null || die
+ if use examples ; then
+ docinto examples
+ dodoc -r file/.
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+ local HTML_DOCS=( doc/. )
+ einstalldocs
+}
+
+pkg_postinst() {
+ if [[ -n "$REPLACING_VERSIONS" && "$(get_major_version $REPLACING_VERSIONS)" -lt 3 ]]; then
+ elog "Artistic Style 3.0 introduces new configuration verbiage more fitting"
+ elog "for modern use. Some options that were valid in 2.06 or older are now"
+ elog "deprecated. For more information, consult astyle's release notes at"
+ elog "http://astyle.sourceforge.net/news.html. To view offline, see:"
+ elog
+ elog "${EROOT%/}/usr/share/doc/${P}/html"
+ fi
+}
diff --git a/dev-util/astyle/astyle-3.1-r2.ebuild b/dev-util/astyle/astyle-3.1-r2.ebuild
new file mode 100644
index 000000000000..5982affd7b59
--- /dev/null
+++ b/dev-util/astyle/astyle-3.1-r2.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit flag-o-matic toolchain-funcs versionator java-pkg-opt-2
+
+DESCRIPTION="Artistic Style is a re-indenter and reformatter for C++, C and Java source code"
+HOMEPAGE="http://astyle.sourceforge.net/"
+SRC_URI="mirror://sourceforge/astyle/astyle_${PV}_linux.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/3.1"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE="examples java static-libs"
+
+DEPEND="app-arch/xz-utils
+ java? ( >=virtual/jdk-1.6:= )"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${PN}"
+
+src_prepare() {
+ if use java ; then
+ java-pkg-opt-2_src_prepare
+ sed -e "s:^\(JAVAINCS\s*\)=.*$:\1= $(java-pkg_get-jni-cflags):" \
+ -e "s:ar crs:$(tc-getAR) crs:" \
+ -i build/gcc/Makefile || die
+ else
+ default
+ fi
+}
+
+src_configure() {
+ append-cxxflags -std=c++11
+ tc-export CXX
+ default
+}
+
+src_compile() {
+ # ../build/clang/Makefile is identical except for CXX line.
+ emake CXX="$(tc-getCXX)" -f ../build/gcc/Makefile -C src \
+ ${PN} \
+ shared \
+ $(usev java) \
+ $(usex static-libs static '')
+}
+
+src_install() {
+ doheader src/${PN}.h
+
+ pushd src/bin >/dev/null || die
+ dobin ${PN}
+
+ # ex: libastyle.so.3.0.1
+ local libastylename=lib${PN}.so.${PV}.0
+ dolib.so ${libastylename}
+ # ex: libastyle.so.3
+ local libdestdir=/usr/$(get_libdir)
+ dosym ${libastylename} ${libdestdir}/lib${PN}.so.$(get_major_version)
+ dosym ${libastylename} ${libdestdir}/lib${PN}.so
+ if use java ; then
+ local libastylejname=lib${PN}j.so.${PV}.0
+ dolib.so ${libastylejname}
+ dosym ${libastylejname} ${libdestdir}/lib${PN}j.so.$(get_major_version)
+ dosym ${libastylejname} ${libdestdir}/lib${PN}j.so
+ fi
+ if use static-libs ; then
+ dolib.a lib${PN}.a
+ fi
+ popd >/dev/null || die
+ if use examples ; then
+ docinto examples
+ dodoc -r file/.
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+ local HTML_DOCS=( doc/. )
+ einstalldocs
+}
+
+pkg_postinst() {
+ if [[ -n "$REPLACING_VERSIONS" && "$(get_major_version $REPLACING_VERSIONS)" -lt 3 ]]; then
+ elog "Artistic Style 3.0 introduces new configuration verbiage more fitting"
+ elog "for modern use. Some options that were valid in 2.06 or older are now"
+ elog "deprecated. For more information, consult astyle's release notes at"
+ elog "http://astyle.sourceforge.net/news.html. To view offline, see:"
+ elog
+ elog "${EROOT%/}/usr/share/doc/${P}/html"
+ fi
+}