diff options
-rw-r--r-- | dev-lang/ldc2/ldc2-0.17.4-r3.ebuild | 72 | ||||
-rw-r--r-- | dev-lang/ldc2/ldc2-0.17.5-r1.ebuild | 73 | ||||
-rw-r--r-- | dev-lang/ldc2/ldc2-1.1.0-r5.ebuild | 85 | ||||
-rw-r--r-- | dev-lang/ldc2/ldc2-1.1.1-r4.ebuild | 85 | ||||
-rw-r--r-- | dev-lang/ldc2/ldc2-1.2.0-r3.ebuild | 85 | ||||
-rw-r--r-- | dev-lang/ldc2/ldc2-1.3.0-r3.ebuild | 88 | ||||
-rw-r--r-- | dev-lang/ldc2/ldc2-1.4.0-r1.ebuild | 89 | ||||
-rw-r--r-- | dev-lang/ldc2/ldc2-1.5.0-r1.ebuild | 89 | ||||
-rw-r--r-- | dev-lang/ldc2/ldc2-1.6.0-r1.ebuild | 89 | ||||
-rw-r--r-- | dev-lang/ldc2/ldc2-1.7.0-r1.ebuild | 89 | ||||
-rw-r--r-- | dev-lang/ldc2/ldc2-1.8.0-r1.ebuild | 89 | ||||
-rw-r--r-- | dev-libs/gtkd/gtkd-3.6.6.ebuild | 2 | ||||
-rw-r--r-- | eclass/dlang.eclass | 9 |
13 files changed, 941 insertions, 3 deletions
diff --git a/dev-lang/ldc2/ldc2-0.17.4-r3.ebuild b/dev-lang/ldc2/ldc2-0.17.4-r3.ebuild new file mode 100644 index 0000000..6c7e824 --- /dev/null +++ b/dev-lang/ldc2/ldc2-0.17.4-r3.ebuild @@ -0,0 +1,72 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit multilib-build cmake-utils versionator llvm + +MY_PV="$(replace_version_separator '_' '-')" +MY_P="ldc-${MY_PV}-src" +SRC_URI="https://github.com/ldc-developers/ldc/releases/download/v${MY_PV}/${MY_P}.tar.gz" +S=${WORKDIR}/${MY_P} + +DESCRIPTION="LLVM D Compiler" +HOMEPAGE="https://ldc-developers.github.com/ldc" +KEYWORDS="~x86 ~amd64 ~arm" +LICENSE="BSD" +SLOT="$(get_version_component_range 1-2)/$(get_version_component_range 3)" + +IUSE="" + +# We support LLVM 3.5 through 4. +RDEPEND="|| ( + sys-devel/llvm:4 + >=sys-devel/llvm-3.5:0 + ) + <sys-devel/llvm-5:= + >=dev-libs/libconfig-1.4.7 + >=app-eselect/eselect-dlang-20140709" +DEPEND=">=dev-util/cmake-2.8 + ${RDEPEND}" +LLVM_MAX_SLOT=4 + +# For now, we support amd64 multilib. Anyone is free to add more support here. +MULTILIB_COMPAT=( abi_x86_{32,64} ) + +detect_hardened() { + gcc --version | grep -o Hardened +} + +src_configure() { + if use abi_x86_32 && use abi_x86_64; then + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@:@CMAKE_INSTALL_PREFIX@/lib@MULTILIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + else + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + fi + local mycmakeargs=( + -DD_VERSION=2 + -DCMAKE_INSTALL_PREFIX=/opt/ldc2-$(get_version_component_range 1-2) + ) + use abi_x86_32 && use abi_x86_64 && mycmakeargs+=( -DMULTILIB=ON ) + detect_hardened && mycmakeargs+=( -DADDITIONAL_DEFAULT_LDC_SWITCHES=', "-relocation-model=pic"' ) + cmake-utils_src_configure +} + +src_compile() { + cmake-utils_src_make +} + +src_install() { + cmake-utils_src_install + + rm -rf "${ED}"/usr/share/bash-completion +} + +pkg_postinst() { + # Update active ldc2 + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} + +pkg_postrm() { + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} diff --git a/dev-lang/ldc2/ldc2-0.17.5-r1.ebuild b/dev-lang/ldc2/ldc2-0.17.5-r1.ebuild new file mode 100644 index 0000000..651e834 --- /dev/null +++ b/dev-lang/ldc2/ldc2-0.17.5-r1.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit multilib-build cmake-utils versionator llvm + +MY_PV="$(replace_version_separator '_' '-')" +MY_P="ldc-${MY_PV}-src" +SRC_URI="https://github.com/ldc-developers/ldc/releases/download/v${MY_PV}/${MY_P}.tar.gz" +S=${WORKDIR}/${MY_P} + +DESCRIPTION="LLVM D Compiler" +HOMEPAGE="https://ldc-developers.github.com/ldc" +KEYWORDS="~x86 ~amd64 ~arm" +LICENSE="BSD" +SLOT="$(get_version_component_range 1-2)/$(get_version_component_range 3)" + +IUSE="" + +# We support LLVM 3.7 through 5. +RDEPEND="|| ( + sys-devel/llvm:5 + sys-devel/llvm:4 + >=sys-devel/llvm-3.7:0 + ) + <sys-devel/llvm-6:= + >=dev-libs/libconfig-1.4.7 + >=app-eselect/eselect-dlang-20140709" +DEPEND=">=dev-util/cmake-2.8 + ${RDEPEND}" +LLVM_MAX_SLOT=5 + +# For now, we support amd64 multilib. Anyone is free to add more support here. +MULTILIB_COMPAT=( abi_x86_{32,64} ) + +detect_hardened() { + gcc --version | grep -o Hardened +} + +src_configure() { + if use abi_x86_32 && use abi_x86_64; then + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@:@CMAKE_INSTALL_PREFIX@/lib@MULTILIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + else + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + fi + local mycmakeargs=( + -DD_VERSION=2 + -DCMAKE_INSTALL_PREFIX=/opt/ldc2-$(get_version_component_range 1-2) + ) + use abi_x86_32 && use abi_x86_64 && mycmakeargs+=( -DMULTILIB=ON ) + detect_hardened && mycmakeargs+=( -DADDITIONAL_DEFAULT_LDC_SWITCHES=', "-relocation-model=pic"' ) + cmake-utils_src_configure +} + +src_compile() { + cmake-utils_src_make +} + +src_install() { + cmake-utils_src_install + + rm -rf "${ED}"/usr/share/bash-completion +} + +pkg_postinst() { + # Update active ldc2 + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} + +pkg_postrm() { + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} diff --git a/dev-lang/ldc2/ldc2-1.1.0-r5.ebuild b/dev-lang/ldc2/ldc2-1.1.0-r5.ebuild new file mode 100644 index 0000000..87f5cbe --- /dev/null +++ b/dev-lang/ldc2/ldc2-1.1.0-r5.ebuild @@ -0,0 +1,85 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit multilib-build cmake-utils versionator llvm + +MY_PV="$(replace_version_separator '_' '-')" +MY_P="ldc-${MY_PV}-src" +SRC_URI="https://github.com/ldc-developers/ldc/releases/download/v${MY_PV}/${MY_P}.tar.gz" +S=${WORKDIR}/${MY_P} + +DESCRIPTION="LLVM D Compiler" +HOMEPAGE="https://ldc-developers.github.com/ldc" +KEYWORDS="~x86 ~amd64 ~arm" +LICENSE="BSD" +SLOT="$(get_version_component_range 1-2)/$(get_version_component_range 3)" + +IUSE="" + +# We support LLVM 3.5 through 4. +RDEPEND="|| ( + sys-devel/llvm:4 + >=sys-devel/llvm-3.5:0 + ) + <sys-devel/llvm-5:= + >=dev-libs/libconfig-1.4.7 + >=app-eselect/eselect-dlang-20140709" +DEPEND=">=dev-util/cmake-2.8 + ${RDEPEND}" +LLVM_MAX_SLOT=4 + +# For now, we support amd64 multilib. Anyone is free to add more support here. +MULTILIB_COMPAT=( abi_x86_{32,64} ) + +DLANG_VERSION_RANGE="2.068-2.073" +DLANG_PACKAGE_TYPE="single" + +inherit dlang + +detect_hardened() { + gcc --version | grep -o Hardened +} + +src_prepare() { + if use abi_x86_32 && use abi_x86_64; then + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@:@CMAKE_INSTALL_PREFIX@/lib@MULTILIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + else + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + fi + cmake-utils_src_prepare +} + +d_src_configure() { + # Make sure libphobos2 is installed into ldc2's directory. + export LIBDIR_${ABI}="${LIBDIR_HOST}" + local mycmakeargs=( + -DD_VERSION=2 + -DCMAKE_INSTALL_PREFIX=/opt/ldc2-$(get_version_component_range 1-2) + -DD_COMPILER="${DMD}" + -DD_COMPILER_DMD_COMPAT=1 + ) + use abi_x86_32 && use abi_x86_64 && mycmakeargs+=( -DMULTILIB=ON ) + detect_hardened && mycmakeargs+=( -DADDITIONAL_DEFAULT_LDC_SWITCHES=', "-relocation-model=pic"' ) + cmake-utils_src_configure +} + +d_src_compile() { + cmake-utils_src_make +} + +d_src_install() { + cmake-utils_src_install + + rm -rf "${ED}"/usr/share/bash-completion +} + +pkg_postinst() { + # Update active ldc2 + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} + +pkg_postrm() { + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} diff --git a/dev-lang/ldc2/ldc2-1.1.1-r4.ebuild b/dev-lang/ldc2/ldc2-1.1.1-r4.ebuild new file mode 100644 index 0000000..87f5cbe --- /dev/null +++ b/dev-lang/ldc2/ldc2-1.1.1-r4.ebuild @@ -0,0 +1,85 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit multilib-build cmake-utils versionator llvm + +MY_PV="$(replace_version_separator '_' '-')" +MY_P="ldc-${MY_PV}-src" +SRC_URI="https://github.com/ldc-developers/ldc/releases/download/v${MY_PV}/${MY_P}.tar.gz" +S=${WORKDIR}/${MY_P} + +DESCRIPTION="LLVM D Compiler" +HOMEPAGE="https://ldc-developers.github.com/ldc" +KEYWORDS="~x86 ~amd64 ~arm" +LICENSE="BSD" +SLOT="$(get_version_component_range 1-2)/$(get_version_component_range 3)" + +IUSE="" + +# We support LLVM 3.5 through 4. +RDEPEND="|| ( + sys-devel/llvm:4 + >=sys-devel/llvm-3.5:0 + ) + <sys-devel/llvm-5:= + >=dev-libs/libconfig-1.4.7 + >=app-eselect/eselect-dlang-20140709" +DEPEND=">=dev-util/cmake-2.8 + ${RDEPEND}" +LLVM_MAX_SLOT=4 + +# For now, we support amd64 multilib. Anyone is free to add more support here. +MULTILIB_COMPAT=( abi_x86_{32,64} ) + +DLANG_VERSION_RANGE="2.068-2.073" +DLANG_PACKAGE_TYPE="single" + +inherit dlang + +detect_hardened() { + gcc --version | grep -o Hardened +} + +src_prepare() { + if use abi_x86_32 && use abi_x86_64; then + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@:@CMAKE_INSTALL_PREFIX@/lib@MULTILIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + else + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + fi + cmake-utils_src_prepare +} + +d_src_configure() { + # Make sure libphobos2 is installed into ldc2's directory. + export LIBDIR_${ABI}="${LIBDIR_HOST}" + local mycmakeargs=( + -DD_VERSION=2 + -DCMAKE_INSTALL_PREFIX=/opt/ldc2-$(get_version_component_range 1-2) + -DD_COMPILER="${DMD}" + -DD_COMPILER_DMD_COMPAT=1 + ) + use abi_x86_32 && use abi_x86_64 && mycmakeargs+=( -DMULTILIB=ON ) + detect_hardened && mycmakeargs+=( -DADDITIONAL_DEFAULT_LDC_SWITCHES=', "-relocation-model=pic"' ) + cmake-utils_src_configure +} + +d_src_compile() { + cmake-utils_src_make +} + +d_src_install() { + cmake-utils_src_install + + rm -rf "${ED}"/usr/share/bash-completion +} + +pkg_postinst() { + # Update active ldc2 + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} + +pkg_postrm() { + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} diff --git a/dev-lang/ldc2/ldc2-1.2.0-r3.ebuild b/dev-lang/ldc2/ldc2-1.2.0-r3.ebuild new file mode 100644 index 0000000..3d797b3 --- /dev/null +++ b/dev-lang/ldc2/ldc2-1.2.0-r3.ebuild @@ -0,0 +1,85 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit multilib-build cmake-utils versionator llvm + +MY_PV="$(replace_version_separator '_' '-')" +MY_P="ldc-${MY_PV}-src" +SRC_URI="https://github.com/ldc-developers/ldc/releases/download/v${MY_PV}/${MY_P}.tar.gz" +S=${WORKDIR}/${MY_P} + +DESCRIPTION="LLVM D Compiler" +HOMEPAGE="https://ldc-developers.github.com/ldc" +KEYWORDS="~x86 ~amd64 ~arm" +LICENSE="BSD" +SLOT="$(get_version_component_range 1-2)/$(get_version_component_range 3)" + +IUSE="" + +# We support LLVM 3.5 through 4. +RDEPEND="|| ( + sys-devel/llvm:4 + >=sys-devel/llvm-3.5:0 + ) + <sys-devel/llvm-5:= + >=dev-libs/libconfig-1.4.7 + >=app-eselect/eselect-dlang-20140709" +DEPEND=">=dev-util/cmake-2.8 + ${RDEPEND}" +LLVM_MAX_SLOT=4 + +# For now, we support amd64 multilib. Anyone is free to add more support here. +MULTILIB_COMPAT=( abi_x86_{32,64} ) + +DLANG_VERSION_RANGE="2.068-" +DLANG_PACKAGE_TYPE="single" + +inherit dlang + +detect_hardened() { + gcc --version | grep -o Hardened +} + +src_prepare() { + if use abi_x86_32 && use abi_x86_64; then + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@:@CMAKE_INSTALL_PREFIX@/lib@MULTILIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + else + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + fi + cmake-utils_src_prepare +} + +d_src_configure() { + # Make sure libphobos2 is installed into ldc2's directory. + export LIBDIR_${ABI}="${LIBDIR_HOST}" + local mycmakeargs=( + -DD_VERSION=2 + -DCMAKE_INSTALL_PREFIX=/opt/ldc2-$(get_version_component_range 1-2) + -DD_COMPILER="${DMD}" + -DD_COMPILER_DMD_COMPAT=1 + ) + use abi_x86_32 && use abi_x86_64 && mycmakeargs+=( -DMULTILIB=ON ) + detect_hardened && mycmakeargs+=( -DADDITIONAL_DEFAULT_LDC_SWITCHES=', "-relocation-model=pic"' ) + cmake-utils_src_configure +} + +d_src_compile() { + cmake-utils_src_make +} + +d_src_install() { + cmake-utils_src_install + + rm -rf "${ED}"/usr/share/bash-completion +} + +pkg_postinst() { + # Update active ldc2 + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} + +pkg_postrm() { + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} diff --git a/dev-lang/ldc2/ldc2-1.3.0-r3.ebuild b/dev-lang/ldc2/ldc2-1.3.0-r3.ebuild new file mode 100644 index 0000000..340ba61 --- /dev/null +++ b/dev-lang/ldc2/ldc2-1.3.0-r3.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit multilib-build cmake-utils versionator llvm + +MY_PV="$(replace_version_separator '_' '-')" +MY_P="ldc-${MY_PV}-src" +SRC_URI="https://github.com/ldc-developers/ldc/releases/download/v${MY_PV}/${MY_P}.tar.gz" +S=${WORKDIR}/${MY_P} + +DESCRIPTION="LLVM D Compiler" +HOMEPAGE="https://ldc-developers.github.com/ldc" +KEYWORDS="~x86 ~amd64 ~arm" +LICENSE="BSD" +SLOT="$(get_version_component_range 1-2)/$(get_version_component_range 3)" + +IUSE="static-libs" + +# We support LLVM 3.5 through 4. +RDEPEND="|| ( + sys-devel/llvm:4 + >=sys-devel/llvm-3.5:0 + ) + <sys-devel/llvm-5:= + >=app-eselect/eselect-dlang-20140709" +DEPEND=">=dev-util/cmake-2.8 + ${RDEPEND}" +LLVM_MAX_SLOT=4 + +# For now, we support amd64 multilib. Anyone is free to add more support here. +MULTILIB_COMPAT=( abi_x86_{32,64} ) + +DLANG_VERSION_RANGE="2.068-" +DLANG_PACKAGE_TYPE="single" + +inherit dlang + +detect_hardened() { + gcc --version | grep -o Hardened +} + +src_prepare() { + if use abi_x86_32 && use abi_x86_64; then + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@:@CMAKE_INSTALL_PREFIX@/lib@MULTILIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + else + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + fi + if use static-libs; then + sed -i 's/phobos2-ldc,druntime-ldc/phobos2-ldc-shared,druntime-ldc-shared/;s/phobos2-ldc-debug,druntime-ldc-debug/phobos2-ldc-debug-shared,druntime-ldc-debug-shared/' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + fi + cmake-utils_src_prepare +} + +d_src_configure() { + # Make sure libphobos2 is installed into ldc2's directory. + export LIBDIR_${ABI}="${LIBDIR_HOST}" + local mycmakeargs=( + -DD_VERSION=2 + -DCMAKE_INSTALL_PREFIX=/opt/ldc2-$(get_version_component_range 1-2) + -DD_COMPILER="${DMD}" + -DD_COMPILER_DMD_COMPAT=1 + ) + use static-libs && mycmakeargs+=( -DBUILD_SHARED_LIBS=BOTH ) || mycmakeargs+=( -DBUILD_SHARED_LIBS=ON ) + use abi_x86_32 && use abi_x86_64 && mycmakeargs+=( -DMULTILIB=ON ) + detect_hardened && mycmakeargs+=( -DADDITIONAL_DEFAULT_LDC_SWITCHES=', "-relocation-model=pic"' ) + cmake-utils_src_configure +} + +d_src_compile() { + cmake-utils_src_make +} + +d_src_install() { + cmake-utils_src_install + + rm -rf "${ED}"/usr/share/bash-completion +} + +pkg_postinst() { + # Update active ldc2 + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} + +pkg_postrm() { + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} diff --git a/dev-lang/ldc2/ldc2-1.4.0-r1.ebuild b/dev-lang/ldc2/ldc2-1.4.0-r1.ebuild new file mode 100644 index 0000000..08022ec --- /dev/null +++ b/dev-lang/ldc2/ldc2-1.4.0-r1.ebuild @@ -0,0 +1,89 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit multilib-build cmake-utils versionator llvm + +MY_PV="$(replace_version_separator '_' '-')" +MY_P="ldc-${MY_PV}-src" +SRC_URI="https://github.com/ldc-developers/ldc/releases/download/v${MY_PV}/${MY_P}.tar.gz" +S=${WORKDIR}/${MY_P} + +DESCRIPTION="LLVM D Compiler" +HOMEPAGE="https://ldc-developers.github.com/ldc" +KEYWORDS="~x86 ~amd64 ~arm" +LICENSE="BSD" +SLOT="$(get_version_component_range 1-2)/$(get_version_component_range 3)" + +IUSE="static-libs" + +# We support LLVM 3.7 through 5. +RDEPEND="|| ( + sys-devel/llvm:5 + sys-devel/llvm:4 + >=sys-devel/llvm-3.7:0 + ) + <sys-devel/llvm-6:= + >=app-eselect/eselect-dlang-20140709" +DEPEND=">=dev-util/cmake-2.8 + ${RDEPEND}" +LLVM_MAX_SLOT=5 + +# For now, we support amd64 multilib. Anyone is free to add more support here. +MULTILIB_COMPAT=( abi_x86_{32,64} ) + +DLANG_VERSION_RANGE="2.068-" +DLANG_PACKAGE_TYPE="single" + +inherit dlang + +detect_hardened() { + gcc --version | grep -o Hardened +} + +src_prepare() { + if use abi_x86_32 && use abi_x86_64; then + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@:@CMAKE_INSTALL_PREFIX@/lib@MULTILIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + else + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + fi + if use static-libs; then + sed -i 's/phobos2-ldc,druntime-ldc/phobos2-ldc-shared,druntime-ldc-shared/;s/phobos2-ldc-debug,druntime-ldc-debug/phobos2-ldc-debug-shared,druntime-ldc-debug-shared/' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + fi + cmake-utils_src_prepare +} + +d_src_configure() { + # Make sure libphobos2 is installed into ldc2's directory. + export LIBDIR_${ABI}="${LIBDIR_HOST}" + local mycmakeargs=( + -DD_VERSION=2 + -DCMAKE_INSTALL_PREFIX=/opt/ldc2-$(get_version_component_range 1-2) + -DD_COMPILER="${DMD}" + -DD_COMPILER_DMD_COMPAT=1 + ) + use static-libs && mycmakeargs+=( -DBUILD_SHARED_LIBS=BOTH ) || mycmakeargs+=( -DBUILD_SHARED_LIBS=ON ) + use abi_x86_32 && use abi_x86_64 && mycmakeargs+=( -DMULTILIB=ON ) + detect_hardened && mycmakeargs+=( -DADDITIONAL_DEFAULT_LDC_SWITCHES=', "-relocation-model=pic"' ) + cmake-utils_src_configure +} + +d_src_compile() { + cmake-utils_src_make +} + +d_src_install() { + cmake-utils_src_install + + rm -rf "${ED}"/usr/share/bash-completion +} + +pkg_postinst() { + # Update active ldc2 + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} + +pkg_postrm() { + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} diff --git a/dev-lang/ldc2/ldc2-1.5.0-r1.ebuild b/dev-lang/ldc2/ldc2-1.5.0-r1.ebuild new file mode 100644 index 0000000..08022ec --- /dev/null +++ b/dev-lang/ldc2/ldc2-1.5.0-r1.ebuild @@ -0,0 +1,89 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit multilib-build cmake-utils versionator llvm + +MY_PV="$(replace_version_separator '_' '-')" +MY_P="ldc-${MY_PV}-src" +SRC_URI="https://github.com/ldc-developers/ldc/releases/download/v${MY_PV}/${MY_P}.tar.gz" +S=${WORKDIR}/${MY_P} + +DESCRIPTION="LLVM D Compiler" +HOMEPAGE="https://ldc-developers.github.com/ldc" +KEYWORDS="~x86 ~amd64 ~arm" +LICENSE="BSD" +SLOT="$(get_version_component_range 1-2)/$(get_version_component_range 3)" + +IUSE="static-libs" + +# We support LLVM 3.7 through 5. +RDEPEND="|| ( + sys-devel/llvm:5 + sys-devel/llvm:4 + >=sys-devel/llvm-3.7:0 + ) + <sys-devel/llvm-6:= + >=app-eselect/eselect-dlang-20140709" +DEPEND=">=dev-util/cmake-2.8 + ${RDEPEND}" +LLVM_MAX_SLOT=5 + +# For now, we support amd64 multilib. Anyone is free to add more support here. +MULTILIB_COMPAT=( abi_x86_{32,64} ) + +DLANG_VERSION_RANGE="2.068-" +DLANG_PACKAGE_TYPE="single" + +inherit dlang + +detect_hardened() { + gcc --version | grep -o Hardened +} + +src_prepare() { + if use abi_x86_32 && use abi_x86_64; then + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@:@CMAKE_INSTALL_PREFIX@/lib@MULTILIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + else + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + fi + if use static-libs; then + sed -i 's/phobos2-ldc,druntime-ldc/phobos2-ldc-shared,druntime-ldc-shared/;s/phobos2-ldc-debug,druntime-ldc-debug/phobos2-ldc-debug-shared,druntime-ldc-debug-shared/' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + fi + cmake-utils_src_prepare +} + +d_src_configure() { + # Make sure libphobos2 is installed into ldc2's directory. + export LIBDIR_${ABI}="${LIBDIR_HOST}" + local mycmakeargs=( + -DD_VERSION=2 + -DCMAKE_INSTALL_PREFIX=/opt/ldc2-$(get_version_component_range 1-2) + -DD_COMPILER="${DMD}" + -DD_COMPILER_DMD_COMPAT=1 + ) + use static-libs && mycmakeargs+=( -DBUILD_SHARED_LIBS=BOTH ) || mycmakeargs+=( -DBUILD_SHARED_LIBS=ON ) + use abi_x86_32 && use abi_x86_64 && mycmakeargs+=( -DMULTILIB=ON ) + detect_hardened && mycmakeargs+=( -DADDITIONAL_DEFAULT_LDC_SWITCHES=', "-relocation-model=pic"' ) + cmake-utils_src_configure +} + +d_src_compile() { + cmake-utils_src_make +} + +d_src_install() { + cmake-utils_src_install + + rm -rf "${ED}"/usr/share/bash-completion +} + +pkg_postinst() { + # Update active ldc2 + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} + +pkg_postrm() { + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} diff --git a/dev-lang/ldc2/ldc2-1.6.0-r1.ebuild b/dev-lang/ldc2/ldc2-1.6.0-r1.ebuild new file mode 100644 index 0000000..08022ec --- /dev/null +++ b/dev-lang/ldc2/ldc2-1.6.0-r1.ebuild @@ -0,0 +1,89 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit multilib-build cmake-utils versionator llvm + +MY_PV="$(replace_version_separator '_' '-')" +MY_P="ldc-${MY_PV}-src" +SRC_URI="https://github.com/ldc-developers/ldc/releases/download/v${MY_PV}/${MY_P}.tar.gz" +S=${WORKDIR}/${MY_P} + +DESCRIPTION="LLVM D Compiler" +HOMEPAGE="https://ldc-developers.github.com/ldc" +KEYWORDS="~x86 ~amd64 ~arm" +LICENSE="BSD" +SLOT="$(get_version_component_range 1-2)/$(get_version_component_range 3)" + +IUSE="static-libs" + +# We support LLVM 3.7 through 5. +RDEPEND="|| ( + sys-devel/llvm:5 + sys-devel/llvm:4 + >=sys-devel/llvm-3.7:0 + ) + <sys-devel/llvm-6:= + >=app-eselect/eselect-dlang-20140709" +DEPEND=">=dev-util/cmake-2.8 + ${RDEPEND}" +LLVM_MAX_SLOT=5 + +# For now, we support amd64 multilib. Anyone is free to add more support here. +MULTILIB_COMPAT=( abi_x86_{32,64} ) + +DLANG_VERSION_RANGE="2.068-" +DLANG_PACKAGE_TYPE="single" + +inherit dlang + +detect_hardened() { + gcc --version | grep -o Hardened +} + +src_prepare() { + if use abi_x86_32 && use abi_x86_64; then + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@:@CMAKE_INSTALL_PREFIX@/lib@MULTILIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + else + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + fi + if use static-libs; then + sed -i 's/phobos2-ldc,druntime-ldc/phobos2-ldc-shared,druntime-ldc-shared/;s/phobos2-ldc-debug,druntime-ldc-debug/phobos2-ldc-debug-shared,druntime-ldc-debug-shared/' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + fi + cmake-utils_src_prepare +} + +d_src_configure() { + # Make sure libphobos2 is installed into ldc2's directory. + export LIBDIR_${ABI}="${LIBDIR_HOST}" + local mycmakeargs=( + -DD_VERSION=2 + -DCMAKE_INSTALL_PREFIX=/opt/ldc2-$(get_version_component_range 1-2) + -DD_COMPILER="${DMD}" + -DD_COMPILER_DMD_COMPAT=1 + ) + use static-libs && mycmakeargs+=( -DBUILD_SHARED_LIBS=BOTH ) || mycmakeargs+=( -DBUILD_SHARED_LIBS=ON ) + use abi_x86_32 && use abi_x86_64 && mycmakeargs+=( -DMULTILIB=ON ) + detect_hardened && mycmakeargs+=( -DADDITIONAL_DEFAULT_LDC_SWITCHES=', "-relocation-model=pic"' ) + cmake-utils_src_configure +} + +d_src_compile() { + cmake-utils_src_make +} + +d_src_install() { + cmake-utils_src_install + + rm -rf "${ED}"/usr/share/bash-completion +} + +pkg_postinst() { + # Update active ldc2 + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} + +pkg_postrm() { + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} diff --git a/dev-lang/ldc2/ldc2-1.7.0-r1.ebuild b/dev-lang/ldc2/ldc2-1.7.0-r1.ebuild new file mode 100644 index 0000000..08022ec --- /dev/null +++ b/dev-lang/ldc2/ldc2-1.7.0-r1.ebuild @@ -0,0 +1,89 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit multilib-build cmake-utils versionator llvm + +MY_PV="$(replace_version_separator '_' '-')" +MY_P="ldc-${MY_PV}-src" +SRC_URI="https://github.com/ldc-developers/ldc/releases/download/v${MY_PV}/${MY_P}.tar.gz" +S=${WORKDIR}/${MY_P} + +DESCRIPTION="LLVM D Compiler" +HOMEPAGE="https://ldc-developers.github.com/ldc" +KEYWORDS="~x86 ~amd64 ~arm" +LICENSE="BSD" +SLOT="$(get_version_component_range 1-2)/$(get_version_component_range 3)" + +IUSE="static-libs" + +# We support LLVM 3.7 through 5. +RDEPEND="|| ( + sys-devel/llvm:5 + sys-devel/llvm:4 + >=sys-devel/llvm-3.7:0 + ) + <sys-devel/llvm-6:= + >=app-eselect/eselect-dlang-20140709" +DEPEND=">=dev-util/cmake-2.8 + ${RDEPEND}" +LLVM_MAX_SLOT=5 + +# For now, we support amd64 multilib. Anyone is free to add more support here. +MULTILIB_COMPAT=( abi_x86_{32,64} ) + +DLANG_VERSION_RANGE="2.068-" +DLANG_PACKAGE_TYPE="single" + +inherit dlang + +detect_hardened() { + gcc --version | grep -o Hardened +} + +src_prepare() { + if use abi_x86_32 && use abi_x86_64; then + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@:@CMAKE_INSTALL_PREFIX@/lib@MULTILIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + else + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + fi + if use static-libs; then + sed -i 's/phobos2-ldc,druntime-ldc/phobos2-ldc-shared,druntime-ldc-shared/;s/phobos2-ldc-debug,druntime-ldc-debug/phobos2-ldc-debug-shared,druntime-ldc-debug-shared/' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + fi + cmake-utils_src_prepare +} + +d_src_configure() { + # Make sure libphobos2 is installed into ldc2's directory. + export LIBDIR_${ABI}="${LIBDIR_HOST}" + local mycmakeargs=( + -DD_VERSION=2 + -DCMAKE_INSTALL_PREFIX=/opt/ldc2-$(get_version_component_range 1-2) + -DD_COMPILER="${DMD}" + -DD_COMPILER_DMD_COMPAT=1 + ) + use static-libs && mycmakeargs+=( -DBUILD_SHARED_LIBS=BOTH ) || mycmakeargs+=( -DBUILD_SHARED_LIBS=ON ) + use abi_x86_32 && use abi_x86_64 && mycmakeargs+=( -DMULTILIB=ON ) + detect_hardened && mycmakeargs+=( -DADDITIONAL_DEFAULT_LDC_SWITCHES=', "-relocation-model=pic"' ) + cmake-utils_src_configure +} + +d_src_compile() { + cmake-utils_src_make +} + +d_src_install() { + cmake-utils_src_install + + rm -rf "${ED}"/usr/share/bash-completion +} + +pkg_postinst() { + # Update active ldc2 + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} + +pkg_postrm() { + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} diff --git a/dev-lang/ldc2/ldc2-1.8.0-r1.ebuild b/dev-lang/ldc2/ldc2-1.8.0-r1.ebuild new file mode 100644 index 0000000..08022ec --- /dev/null +++ b/dev-lang/ldc2/ldc2-1.8.0-r1.ebuild @@ -0,0 +1,89 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit multilib-build cmake-utils versionator llvm + +MY_PV="$(replace_version_separator '_' '-')" +MY_P="ldc-${MY_PV}-src" +SRC_URI="https://github.com/ldc-developers/ldc/releases/download/v${MY_PV}/${MY_P}.tar.gz" +S=${WORKDIR}/${MY_P} + +DESCRIPTION="LLVM D Compiler" +HOMEPAGE="https://ldc-developers.github.com/ldc" +KEYWORDS="~x86 ~amd64 ~arm" +LICENSE="BSD" +SLOT="$(get_version_component_range 1-2)/$(get_version_component_range 3)" + +IUSE="static-libs" + +# We support LLVM 3.7 through 5. +RDEPEND="|| ( + sys-devel/llvm:5 + sys-devel/llvm:4 + >=sys-devel/llvm-3.7:0 + ) + <sys-devel/llvm-6:= + >=app-eselect/eselect-dlang-20140709" +DEPEND=">=dev-util/cmake-2.8 + ${RDEPEND}" +LLVM_MAX_SLOT=5 + +# For now, we support amd64 multilib. Anyone is free to add more support here. +MULTILIB_COMPAT=( abi_x86_{32,64} ) + +DLANG_VERSION_RANGE="2.068-" +DLANG_PACKAGE_TYPE="single" + +inherit dlang + +detect_hardened() { + gcc --version | grep -o Hardened +} + +src_prepare() { + if use abi_x86_32 && use abi_x86_64; then + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@:@CMAKE_INSTALL_PREFIX@/lib@MULTILIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + else + sed -i 's#@ADDITIONAL_DEFAULT_LDC_SWITCHES@#,"-L-rpath=@CMAKE_INSTALL_PREFIX@/lib@LIB_SUFFIX@"@ADDITIONAL_DEFAULT_LDC_SWITCHES@#' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + fi + if use static-libs; then + sed -i 's/phobos2-ldc,druntime-ldc/phobos2-ldc-shared,druntime-ldc-shared/;s/phobos2-ldc-debug,druntime-ldc-debug/phobos2-ldc-debug-shared,druntime-ldc-debug-shared/' ldc2_install.conf.in || die "Cannot patch ldc2_install.conf.in" + fi + cmake-utils_src_prepare +} + +d_src_configure() { + # Make sure libphobos2 is installed into ldc2's directory. + export LIBDIR_${ABI}="${LIBDIR_HOST}" + local mycmakeargs=( + -DD_VERSION=2 + -DCMAKE_INSTALL_PREFIX=/opt/ldc2-$(get_version_component_range 1-2) + -DD_COMPILER="${DMD}" + -DD_COMPILER_DMD_COMPAT=1 + ) + use static-libs && mycmakeargs+=( -DBUILD_SHARED_LIBS=BOTH ) || mycmakeargs+=( -DBUILD_SHARED_LIBS=ON ) + use abi_x86_32 && use abi_x86_64 && mycmakeargs+=( -DMULTILIB=ON ) + detect_hardened && mycmakeargs+=( -DADDITIONAL_DEFAULT_LDC_SWITCHES=', "-relocation-model=pic"' ) + cmake-utils_src_configure +} + +d_src_compile() { + cmake-utils_src_make +} + +d_src_install() { + cmake-utils_src_install + + rm -rf "${ED}"/usr/share/bash-completion +} + +pkg_postinst() { + # Update active ldc2 + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} + +pkg_postrm() { + "${ROOT}"/usr/bin/eselect dlang update ldc2 +} diff --git a/dev-libs/gtkd/gtkd-3.6.6.ebuild b/dev-libs/gtkd/gtkd-3.6.6.ebuild index 5f650f9..8b5c2eb 100644 --- a/dev-libs/gtkd/gtkd-3.6.6.ebuild +++ b/dev-libs/gtkd/gtkd-3.6.6.ebuild @@ -72,7 +72,7 @@ d_src_compile() { } d_src_test() { - emake LINKERFLAG="${DLANG_LINKER_FLAG}" output="${DLANG_OUTPUT_FLAG}\$@" test + dlang_exec ${DC} ${DCFLAGS} -m${MODEL} -Igenerated/gtkd demos/gtkD/TestWindow/*.d ${DLANG_LINKER_FLAG}./libgtkd-3.so ${DLANG_LINKER_FLAG}-ldl ${DLANG_LINKER_FLAG}-rpath=./ ${LDFLAGS} ${DLANG_OUTPUT_FLAG}TestWindow } d_src_install() { diff --git a/eclass/dlang.eclass b/eclass/dlang.eclass index 03eb490..3083b45 100644 --- a/eclass/dlang.eclass +++ b/eclass/dlang.eclass @@ -399,7 +399,7 @@ __dlang_filter_compilers() { for dc_version in "${!__dlang_gdc_frontend[@]}"; do mapping="${__dlang_gdc_frontend[${dc_version}]}" iuse=gdc-$(replace_all_version_separators _ $dc_version) - depend="=sys-devel/gcc-${dc_version}*[d]" + depend="=sys-devel/gcc-$dc_version*[d]" __dlang_compiler_masked_archs_for_version_range "$iuse" "$depend" "$mapping" "$1" "$2" done @@ -407,7 +407,12 @@ __dlang_filter_compilers() { for dc_version in "${!__dlang_ldc2_frontend[@]}"; do mapping="${__dlang_ldc2_frontend[${dc_version}]}" iuse=ldc2-$(replace_all_version_separators _ $dc_version) - depend="dev-lang/ldc2:${dc_version}=" + if [ "${DLANG_PACKAGE_TYPE}" == "multi" ]; then + depend="[${MULTILIB_USEDEP}]" + else + depend="" + fi + depend="dev-lang/ldc2:$dc_version=$depend" __dlang_compiler_masked_archs_for_version_range "$iuse" "$depend" "$mapping" "$1" "$2" done } |