aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKacper Kowalik (Xarthisius) <xarthisius@gentoo.org>2012-01-15 15:04:58 +0100
committerKacper Kowalik (Xarthisius) <xarthisius@gentoo.org>2012-01-15 15:04:58 +0100
commite1a058bdd66af9879fb6675941a6c8e642b942b2 (patch)
treed85d7bf9b280ad3015ff052455d6c2e4240e929d /dev-libs
parentConvert to thin manifests (as suggested by alexxy and jlec) (diff)
downloadsci-e1a058bdd66af9879fb6675941a6c8e642b942b2.tar.gz
sci-e1a058bdd66af9879fb6675941a6c8e642b942b2.tar.bz2
sci-e1a058bdd66af9879fb6675941a6c8e642b942b2.zip
[dev-libs/fortrancl] initial import, ebuild written by me
Diffstat (limited to 'dev-libs')
-rw-r--r--dev-libs/fortrancl/Manifest1
-rw-r--r--dev-libs/fortrancl/files/fortrancl-0.1_alpha2-gentoo.patch144
-rw-r--r--dev-libs/fortrancl/fortrancl-0.1_alpha2.ebuild36
-rw-r--r--dev-libs/fortrancl/metadata.xml20
4 files changed, 201 insertions, 0 deletions
diff --git a/dev-libs/fortrancl/Manifest b/dev-libs/fortrancl/Manifest
new file mode 100644
index 000000000..f86dc2714
--- /dev/null
+++ b/dev-libs/fortrancl/Manifest
@@ -0,0 +1 @@
+DIST fortrancl-0.1alpha2.tar.gz 139478 SHA256 711fdab1b377674089a821954aa2164fea6800740e86c70779ac57938a138d92 SHA512 c2569672a26926bda8fa1a716cd7909403c0892f6f2acf7abc4e9b62f3d42fc9807de4c9554414146120f6531bae06c0a585cd034d84ac8faf11197f8f927ba4 WHIRLPOOL ce8a9a053b7abfe67d1882b3ea883f31bb5ee99052e44b22b73f6206e9c49d545d1e1812ac4caa712ffcf4777519e7a159e9385d3d49a4aadfb62eba6400b491
diff --git a/dev-libs/fortrancl/files/fortrancl-0.1_alpha2-gentoo.patch b/dev-libs/fortrancl/files/fortrancl-0.1_alpha2-gentoo.patch
new file mode 100644
index 000000000..f31969d08
--- /dev/null
+++ b/dev-libs/fortrancl/files/fortrancl-0.1_alpha2-gentoo.patch
@@ -0,0 +1,144 @@
+Index: src/Makefile.am
+===================================================================
+--- src/Makefile.am (wersja 129)
++++ src/Makefile.am (kopia robocza)
+@@ -23,11 +23,12 @@
+ LIBFUNCMOD = cl.@ax_cv_f90_modext@
+ endif
+
+-nodist_include_HEADERS = $(LIBFUNCMOD)
++fortrancl_includedir = $(includedir)/fortrancl
++nodist_fortrancl_include_HEADERS = $(LIBFUNCMOD)
+
+-lib_LIBRARIES = libfortrancl.a
++lib_LTLIBRARIES = libfortrancl.la
+
+-libfortrancl_a_SOURCES = \
++libfortrancl_la_SOURCES = \
+ cl_types.f90 \
+ cl_buffer.f90 \
+ cl_command_queue.f90 \
+@@ -39,7 +40,7 @@
+ cl_program.f90 \
+ cl.f90
+
+-libfortrancl_a_SOURCES += \
++libfortrancl_la_SOURCES += \
+ cl_buffer_low.c \
+ cl_command_queue_low.c \
+ cl_context_low.c \
+@@ -51,15 +52,17 @@
+ noinst_HEADERS = \
+ string_f.h
+
+-cl_types.o : cl_types.f90
+-cl_constants.o : cl_constants.f90
+-cl_platform.o : cl_platform.f90 cl_types.o
+-cl_program.o : cl_program.f90 cl_types.o
+-cl_kernel.o : cl_kernel.f90 cl_types.o
+-cl_device.o : cl_device.f90 cl_types.o
+-cl_context.o : cl_context.f90 cl_types.o
+-cl_command_queue.o : cl_command_queue.f90 cl_types.o
+-cl_buffer.o : cl_buffer.f90 cl_types.o
+-cl.o : cl.f90 cl_constants.o cl_types.o cl_device.o cl_kernel.o cl_program.o cl_platform.o cl_context.o cl_command_queue.o cl_buffer.o
++$(LIBFUNCMOD): cl.lo
+
++cl_types.lo : cl_types.f90
++cl_constants.lo : cl_constants.f90
++cl_platform.lo : cl_platform.f90 cl_types.lo
++cl_program.lo : cl_program.f90 cl_types.lo
++cl_kernel.lo : cl_kernel.f90 cl_types.lo
++cl_device.lo : cl_device.f90 cl_types.lo
++cl_context.lo : cl_context.f90 cl_types.lo
++cl_command_queue.lo : cl_command_queue.f90 cl_types.lo
++cl_buffer.lo : cl_buffer.f90 cl_types.lo
++cl.lo : cl.f90 cl_constants.lo cl_types.lo cl_device.lo cl_kernel.lo cl_program.lo cl_platform.lo cl_context.lo cl_command_queue.lo cl_buffer.lo
++
+ CLEANFILES = *~ *.bak *.mod *.MOD *.il *.d *.pc* ifc*
+Index: configure.ac
+===================================================================
+--- configure.ac (wersja 129)
++++ configure.ac (kopia robocza)
+@@ -32,11 +32,16 @@
+ AC_PROG_INSTALL
+ AC_PROG_LN_S
+ AC_PROG_MAKE_SET
+-AC_PROG_RANLIB
+ AC_PROG_YACC
+
+ AC_PROG_CC
++LT_INIT([disable-static])
+
++# Set proper version
++# http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
++AC_SUBST([FORTRANCL_SO_VERSION], [0:0:0])
++#AC_SUBST([FORTRANCL_API_VERSION], [1.1]) # set to proper API OpenCL version
++
+ # Checks for header files.
+ AC_HEADER_STDC
+
+@@ -73,8 +78,9 @@
+ AC_SUBST(ax_cv_f90_modext)
+ AM_CONDITIONAL(F90_MOD_UPPERCASE, [test x$ax_f90_mod_uppercase = xyes])
+
+-AC_CONFIG_FILES([Makefile])
+-AC_CONFIG_FILES([src/Makefile])
+-AC_CONFIG_FILES([examples/Makefile])
++AC_CONFIG_FILES([Makefile
++ src/Makefile
++ examples/Makefile
++ fortrancl.pc])
+
+ AC_OUTPUT
+Index: fortrancl.pc.in
+===================================================================
+--- fortrancl.pc.in (wersja 0)
++++ fortrancl.pc.in (kopia robocza)
+@@ -0,0 +1,11 @@
++prefix=@prefix@
++exec_prefix=@exec_prefix@
++libdir=@libdir@
++includedir=@includedir@
++
++Name: @PACKAGE_NAME@
++Description: OpenCL interface for Fortran 90
++Version: @PACKAGE_VERSION@
++URL: @PACKAGE_URL@
++Libs: -L${libdir} -lfortrancl
++Cflags: -I${includedir}/fortrancl
+Index: Makefile.am
+===================================================================
+--- Makefile.am (wersja 129)
++++ Makefile.am (kopia robocza)
+@@ -17,6 +17,12 @@
+ ##
+ ## $Id$
+
++ACLOCAL_AMFLAGS = -I m4
++
+ SUBDIRS = src examples
+
+-CLEANFILES = *~ *.bak *.mod *.MOD *.il *.d *.pc* ifc*
++CLEANFILES = *~ *.bak *.mod *.MOD *.il *.d *.pc ifc*
++
++pkgconfigdir = $(libdir)/pkgconfig
++pkgconfig_DATA = fortrancl.pc
++
+Index: examples/Makefile.am
+===================================================================
+--- examples/Makefile.am (wersja 129)
++++ examples/Makefile.am (kopia robocza)
+@@ -20,11 +20,11 @@
+ noinst_PROGRAMS = sum devices
+
+ sum_SOURCES = sum.f90
+-sum_LDADD = $(top_builddir)/src/libfortrancl.a
++sum_LDADD = $(top_builddir)/src/libfortrancl.la
+ dist_noinst_DATA = sum.cl
+
+ devices_SOURCES = devices.f90
+-devices_LDADD = $(top_builddir)/src/libfortrancl.a
++devices_LDADD = $(top_builddir)/src/libfortrancl.la
+
+ AM_FCFLAGS = @F90_MODULE_FLAG@$(top_builddir)/src
+
diff --git a/dev-libs/fortrancl/fortrancl-0.1_alpha2.ebuild b/dev-libs/fortrancl/fortrancl-0.1_alpha2.ebuild
new file mode 100644
index 000000000..09ebd9338
--- /dev/null
+++ b/dev-libs/fortrancl/fortrancl-0.1_alpha2.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=4
+AUTOTOOLS_AUTORECONF=1
+
+inherit autotools-utils fortran-2
+
+MY_PV=${PV/_}
+MY_P=${PN}-${MY_PV}
+
+DESCRIPTION="OpenCL interface for Fortran 90"
+HOMEPAGE="http://code.google.com/p/fortrancl/"
+SRC_URI="http://${PN}.googlecode.com/files/${MY_P}.tar.gz"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="examples static-libs"
+
+DEPEND="virtual/opencl"
+RDEPEND="${DEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+DOCS=( AUTHORS ChangeLog README )
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
+
+src_install() {
+ autotools-utils_src_install
+ if use examples ; then
+ insinto /usr/share/doc/${PF}/examples
+ doins examples/*.{f90,cl}
+ fi
+}
diff --git a/dev-libs/fortrancl/metadata.xml b/dev-libs/fortrancl/metadata.xml
new file mode 100644
index 000000000..626f07372
--- /dev/null
+++ b/dev-libs/fortrancl/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <maintainer>
+ <email>xarthisius@gentoo.org</email>
+ <name>Kacper Kowalik</name>
+ </maintainer>
+ <longdescription>
+ FortranCL is an OpenCL interface for Fortran 90. It allows programmers to call
+ the OpenCL parallel programming framework directly from Fortran, so developers
+ can accelerate their Fortran code using graphical processing units (GPU) and
+ other accelerators.
+ The interface is designed to be as close to C OpenCL interface as possible,
+ while written in native Fortran 90 with type checking. It was originally
+ designed as an OpenCL interface to be used by the Octopus code.
+ The interface is not complete but provides all the basic calls required to
+ write a full Fortran 90 OpenCL program.
+ </longdescription>
+</pkgmetadata>