summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-lang/ekopath-bin/ekopath-bin-4.0.10_pre20110612.ebuild2
-rw-r--r--dev-lang/ekopath/Manifest4
-rw-r--r--dev-lang/ekopath/ekopath-9999.ebuild71
-rw-r--r--dev-lang/ekopath/files/ekopath-fixlinks.patch19
-rw-r--r--dev-lang/ekopath/files/ekopath-implicits.patch62
-rw-r--r--dev-lang/ekopath/metadata.xml15
6 files changed, 172 insertions, 1 deletions
diff --git a/dev-lang/ekopath-bin/ekopath-bin-4.0.10_pre20110612.ebuild b/dev-lang/ekopath-bin/ekopath-bin-4.0.10_pre20110612.ebuild
index ecc8490..b2e0617 100644
--- a/dev-lang/ekopath-bin/ekopath-bin-4.0.10_pre20110612.ebuild
+++ b/dev-lang/ekopath-bin/ekopath-bin-4.0.10_pre20110612.ebuild
@@ -8,7 +8,7 @@ DESCRIPTION="PathScale EKOPath Compiler Suite"
HOMEPAGE="http://www.pathscale.com/ekopath-compiler-suite"
SRC_URI="http://c591116.r16.cf2.rackcdn.com/ekopath/nightly/Linux/ekopath-2011-06-12-installer.run"
-LICENSE="GPL-2" #Hopefully
+LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64"
IUSE=""
diff --git a/dev-lang/ekopath/Manifest b/dev-lang/ekopath/Manifest
new file mode 100644
index 0000000..582fce8
--- /dev/null
+++ b/dev-lang/ekopath/Manifest
@@ -0,0 +1,4 @@
+AUX ekopath-fixlinks.patch 1866 RMD160 8d0f4dfd17a445c94d4e7ad3981aff818fff5029 SHA1 fe1895e6bb2c4c55624eb070094db50e5d973339 SHA256 f7d59c134929435104e0d9a7973294b5cee49e9e1cf8467402795e0ad230c2fd
+AUX ekopath-implicits.patch 1859 RMD160 60c31a551b57dbb1cda9ede6ccdbc23cc3281fe5 SHA1 27051876e281ee60a15796f3f356069e1077e180 SHA256 df001a245012d8cacbb206eeb471bb48a20a612e8d3644472d350038f7cf1f96
+EBUILD ekopath-9999.ebuild 1768 RMD160 d633cdd542871b89acd6bb6d336abd892a63604d SHA1 d504c77014dec249ae3b17e793b4a922c4923b68 SHA256 cc5f5e69317dc2fa95050fbed29dbca118e1cdaee4c074de942015aa7a6db964
+MISC metadata.xml 599 RMD160 db4dbce6755b718f4fd34ced77c3e43c3ac49b29 SHA1 254eeaee0fdfe85349ba117190697731991f3e4a SHA256 297871a74cf9d537062c154ce333137ebda79d9a404e4329cfb504bcf5b5c62d
diff --git a/dev-lang/ekopath/ekopath-9999.ebuild b/dev-lang/ekopath/ekopath-9999.ebuild
new file mode 100644
index 0000000..766669b
--- /dev/null
+++ b/dev-lang/ekopath/ekopath-9999.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=4
+CMAKE_BUILD_TYPE=Debug
+CMAKE_VERBOSE=1
+if [ "${PV%9999}" != "${PV}" ] ; then
+ SCM=git-2
+ EGIT_REPO_URI="git://github.com/path64/compiler.git"
+fi
+
+inherit cmake-utils ${SCM} multilib toolchain-funcs
+
+DESCRIPTION="PathScale EKOPath Compiler Suite"
+HOMEPAGE="http://www.pathscale.com/ekopath-compiler-suite"
+if [ "${PV%9999}" != "${PV}" ] ; then
+ SRC_URI=""
+else
+ SRC_URI="" # for tarballs
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="custom-flags"
+#TODO: openmp, fortran flags
+
+DEPEND="sys-devel/gcc:4.2[vanilla]"
+RDEPEND="${DEPEND}"
+
+pkg_pretend() {
+ [[ $(gcc-version) != 4.2 ]] && \
+ die "To bootstrap EKOPath you'll need to use gcc:4.2[vanilla]"
+}
+
+pkg_setup() {
+ export GCC42_PATH=$($(tc-getCC) -print-search-dirs | head -n 1 | cut -f2- -d' ')
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-fixlinks.patch \
+ "${FILESDIR}"/${PN}-implicits.patch
+}
+
+src_configure() {
+ local MY_CFLAGS=""
+ local MY_CXXFLAGS=""
+ if use custom-flags; then
+ MY_CFLAGS=${CFLAGS}
+ MY_CXXFLAGS=${CXXFLAGS}
+ fi
+ mycmakeargs=(
+ -DPATH64_ENABLE_TARGETS="x86_64"
+ -DPATH64_ENABLE_MATHLIBS=ON
+ -DPATH64_ENABLE_FORTRAN=ON
+ -DPSC_CRT_PATH_x86_64=/usr/$(get_libdir)
+ -DPSC_DYNAMIC_LINKER_x86_64=/$(get_libdir)/ld-linux-x86-64.so.2
+ -DPSC_LIBSUPCPP_PATH_x86_64=${GCC42_PATH}
+ -DPSC_LIBSTDCPP_PATH_x86_64=${GCC42_PATH}
+ -DPSC_LIBGCC_PATH_x86_64=${GCC42_PATH}
+ -DPSC_LIBGCC_EH_PATH_x86_64=${GCC42_PATH}
+ -DPSC_LIBGCC_S_PATH_x86_64=${GCC42_PATH}
+ -DCMAKE_Fortran_COMPILER=$(tc-getFC)
+ -DCMAKE_C_COMPILER=$(tc-getCC)
+ -DCMAKE_C_FLAGS=${MY_CFLAGS}
+ -DCMAKE_CXX_COMPILER=$(tc-getCXX)
+ -DCMAKE_CXX_FLAGS=${MY_CXXFLAGS}
+ )
+ cmake-utils_src_configure
+}
diff --git a/dev-lang/ekopath/files/ekopath-fixlinks.patch b/dev-lang/ekopath/files/ekopath-fixlinks.patch
new file mode 100644
index 0000000..51daf7a
--- /dev/null
+++ b/dev-lang/ekopath/files/ekopath-fixlinks.patch
@@ -0,0 +1,19 @@
+diff --git a/src/ir_tools/CMakeLists.txt b/src/ir_tools/CMakeLists.txt
+index a7ff3d6..46d5641 100644
+--- a/src/ir_tools/CMakeLists.txt
++++ b/src/ir_tools/CMakeLists.txt
+@@ -84,10 +84,10 @@ endif()
+
+
+ foreach(arch ${PATH64_ENABLE_ARCHES})
+- install(CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" -E create_symlink \"\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/${PATH64_LIB_PATH}/${arch}/ir_b2a\" \"${CMAKE_INSTALL_PREFIX}/bin/ir_b2a-${arch}\")")
+- install(CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" -E create_symlink \"\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/${PATH64_LIB_PATH}/${arch}/ir_size\" \"${CMAKE_INSTALL_PREFIX}/bin/ir_size-${arch}\")")
+- install(CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" -E create_symlink \"\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/ir_b2a-${arch}\" \"${CMAKE_INSTALL_PREFIX}/bin/ir_sel-${arch}\")")
+- install(CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" -E create_symlink \"\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/ir_b2a-${arch}\" \"${CMAKE_INSTALL_PREFIX}/bin/ir_all-${arch}\")")
++ install(CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" -E create_symlink \"${CMAKE_INSTALL_PREFIX}/${PATH64_LIB_PATH}/${arch}/ir_b2a\" \"\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/ir_b2a-${arch}\")")
++ install(CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" -E create_symlink \"${CMAKE_INSTALL_PREFIX}/${PATH64_LIB_PATH}/${arch}/ir_size\" \"\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/ir_size-${arch}\")")
++ install(CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" -E create_symlink \"${CMAKE_INSTALL_PREFIX}/bin/ir_b2a-${arch}\" \"\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/ir_sel-${arch}\")")
++ install(CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" -E create_symlink \"${CMAKE_INSTALL_PREFIX}/bin/ir_b2a-${arch}\" \"\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/ir_all-${arch}\")")
+ endforeach()
+
+
diff --git a/dev-lang/ekopath/files/ekopath-implicits.patch b/dev-lang/ekopath/files/ekopath-implicits.patch
new file mode 100644
index 0000000..17c7c89
--- /dev/null
+++ b/dev-lang/ekopath/files/ekopath-implicits.patch
@@ -0,0 +1,62 @@
+diff --git a/src/common/util/gen_x_list.c b/src/common/util/gen_x_list.c
+index 9dab060..14e6145 100644
+--- a/src/common/util/gen_x_list.c
++++ b/src/common/util/gen_x_list.c
+@@ -2,6 +2,7 @@
+ #include <stdio.h>
+ #include <stdarg.h>
+ #include <stdlib.h>
++#include <string.h>
+
+ #include "string_case.h"
+
+diff --git a/src/common/util/gen_x_prop.c b/src/common/util/gen_x_prop.c
+index d4b52b5..c532515 100644
+--- a/src/common/util/gen_x_prop.c
++++ b/src/common/util/gen_x_prop.c
+@@ -2,6 +2,7 @@
+ #include <stdio.h>
+ #include <stdarg.h>
+ #include <stdlib.h>
++#include <string.h>
+ #include "string_case.h"
+
+ int main(int argc, char * argv[])
+diff --git a/src/ipa_link/bfd/elfxx-mips.c b/src/ipa_link/bfd/elfxx-mips.c
+index 5483cf2..388be40 100644
+--- a/src/ipa_link/bfd/elfxx-mips.c
++++ b/src/ipa_link/bfd/elfxx-mips.c
+@@ -26,7 +26,7 @@
+ Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */
+
+ /* This file handles functionality common to the different MIPS ABI's. */
+-
++#include <time.h>
+ #include "bfd.h"
+ #include "sysdep.h"
+ #include "libbfd.h"
+diff --git a/src/ipa_link/bfd/peigen.c b/src/ipa_link/bfd/peigen.c
+index 53dad24..19a47c5 100644
+--- a/src/ipa_link/bfd/peigen.c
++++ b/src/ipa_link/bfd/peigen.c
+@@ -56,6 +56,7 @@
+ depending on whether we're compiling for straight PE or PE+. */
+ #define COFF_WITH_pe
+
++#include <time.h>
+ #include "bfd.h"
+ #include "sysdep.h"
+ #include "libbfd.h"
+diff --git a/src/ipa_link/ld/ldmain.c b/src/ipa_link/ld/ldmain.c
+index 9bec0e7..b778bca 100644
+--- a/src/ipa_link/ld/ldmain.c
++++ b/src/ipa_link/ld/ldmain.c
+@@ -160,6 +160,8 @@ static bfd_boolean notice
+ #ifdef IPA_LINK
+ bfd_boolean is_ipa = FALSE;
+
++extern void cleanup_symtab_for_ipa(void);
++
+ /* I have to call this through ld because otherwise
+ ipa_ld.o will get pulled in whether it is wanted
+ or not. */
diff --git a/dev-lang/ekopath/metadata.xml b/dev-lang/ekopath/metadata.xml
new file mode 100644
index 0000000..2b845df
--- /dev/null
+++ b/dev-lang/ekopath/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>no-herd</herd>
+ <maintainer>
+ <email>xarthisius@gentoo.org</email>
+ <name>Kacper Kowalik</name>
+ </maintainer>
+ <longdescription>
+ The PathScale EKOPath Compiler Suite offers programmers a rich set of tools and
+ one of the world's most sophisticated optimization infrastructures to maximize
+ program performance on any Intel 64 or AMD64 platform supporting Intel MMX,
+ SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AMD SSE4A and AVX.
+ </longdescription>
+</pkgmetadata>