Gentoo Archives: gentoo-commits

From: "Honza Macháček" <Hloupy.Honza@×××××××.cz>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/sci:master commit in: sci-libs/bigdft/, sci-libs/bigdft/files/
Date: Wed, 04 Jul 2012 13:07:16
Message-Id: 1341406548.af36178bae072975945a11c0b2e5207f38a4bf8f.honza_machacek@gentoo
1 commit: af36178bae072975945a11c0b2e5207f38a4bf8f
2 Author: Honza Macháček <Hloupy.Honza <AT> centrum <DOT> cz>
3 AuthorDate: Wed Jul 4 12:55:48 2012 +0000
4 Commit: Honza Macháček <Hloupy.Honza <AT> centrum <DOT> cz>
5 CommitDate: Wed Jul 4 12:55:48 2012 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=af36178b
7
8 sci-libs/bigdft-1.6_pre1 from -r2 to -r3: patched to install necessary libraries for GPU support and to compile with gcc-4.6
9
10 ---
11 sci-libs/bigdft/ChangeLog | 9 +++
12 ....6_pre1-r2.ebuild => bigdft-1.6_pre1-r3.ebuild} | 4 +-
13 .../bigdft/files/bigdft-1.6-tuto.1-GPUlibs.patch | 26 ++++++++
14 .../bigdft/files/bigdft-1.6-tuto.1-gcc-4.6.patch | 67 ++++++++++++++++++++
15 4 files changed, 105 insertions(+), 1 deletions(-)
16
17 diff --git a/sci-libs/bigdft/ChangeLog b/sci-libs/bigdft/ChangeLog
18 index 1d25ede..b0e101e 100644
19 --- a/sci-libs/bigdft/ChangeLog
20 +++ b/sci-libs/bigdft/ChangeLog
21 @@ -2,6 +2,15 @@
22 # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
23 # $Header: $
24
25 +*bigdft-1.6_pre1-r3 (04 Jul 2012)
26 +
27 + 04 Jul 2012; Honza Macháček <Hloupy.Honza@×××××××.cz>
28 + -bigdft-1.6_pre1-r2.ebuild, +bigdft-1.6_pre1-r3.ebuild,
29 + +files/bigdft-1.6-tuto.1-GPUlibs.patch,
30 + +files/bigdft-1.6-tuto.1-gcc-4.6.patch:
31 + bigdft-1.6_pre1 from -r2 to -r3: patched to install necessary libraries for
32 + GPU support and to compile with gcc-4.6
33 +
34 *bigdft-1.6.0-r2 (19 Jun 2012)
35 *bigdft-1.6_pre1-r2 (19 Jun 2012)
36
37
38 diff --git a/sci-libs/bigdft/bigdft-1.6_pre1-r2.ebuild b/sci-libs/bigdft/bigdft-1.6_pre1-r3.ebuild
39 similarity index 95%
40 rename from sci-libs/bigdft/bigdft-1.6_pre1-r2.ebuild
41 rename to sci-libs/bigdft/bigdft-1.6_pre1-r3.ebuild
42 index f9860f6..7187bec 100644
43 --- a/sci-libs/bigdft/bigdft-1.6_pre1-r2.ebuild
44 +++ b/sci-libs/bigdft/bigdft-1.6_pre1-r3.ebuild
45 @@ -64,7 +64,9 @@ pkg_setup() {
46 src_prepare() {
47 epatch \
48 "${FILESDIR}"/"${REAL_P}"-libxc_dir_include.patch \
49 - "${FILESDIR}"/"${REAL_P}"-bigdft.pc.patch
50 + "${FILESDIR}"/"${REAL_P}"-bigdft.pc.patch \
51 + "${FILESDIR}"/"${REAL_P}"-gcc-4.6.patch \
52 + "${FILESDIR}"/"${REAL_P}"-GPUlibs.patch
53 sed -i -e's/capitalize_module_ext/ax_fc_mod_ext/g' "${S}"/configure || die
54 sed -i -e's/capitalize_module_ext/ax_fc_mod_ext/g' "${S}"/configure.ac || die
55 eautoreconf
56
57 diff --git a/sci-libs/bigdft/files/bigdft-1.6-tuto.1-GPUlibs.patch b/sci-libs/bigdft/files/bigdft-1.6-tuto.1-GPUlibs.patch
58 new file mode 100644
59 index 0000000..386e39d
60 --- /dev/null
61 +++ b/sci-libs/bigdft/files/bigdft-1.6-tuto.1-GPUlibs.patch
62 @@ -0,0 +1,26 @@
63 +diff -Naur orig/bigdft-1.6-tuto.1.orig/src/CUDA/Makefile.am patched/bigdft-1.6-tuto.1/src/CUDA/Makefile.am
64 +--- bigdft-1.6-tuto.1.orig/src/CUDA/Makefile.am 2011-09-27 12:43:06.000000000 +0000
65 ++++ bigdft-1.6-tuto.1/src/CUDA/Makefile.am 2012-07-04 12:08:27.000000000 +0000
66 +@@ -43,7 +43,8 @@
67 + # Not used anymore, to be removed
68 + #INC_CUDA = -I@LIB_CUTIL_PATH@
69 + EXTRA_PROGRAMS = conv_check
70 +-noinst_LIBRARIES = libGPU.a libbasef.a
71 ++lib_LIBRARIES = libGPU.a
72 ++noinst_LIBRARIES = libbasef.a
73 +
74 + libGPU_a_SOURCES = $(SOURCES_CU_CONV1) $(SOURCES_SHARED) $(SOURCES_CONV)
75 + AM_CPPFLAGS = $(INC_CUDA) -I. -I$(top_builddir) -I@CUDA_PATH@/include/ @LIBSGPU_INCLUDE@ -DCUBLAS_USE_THUNKING
76 +diff -Naur orig/bigdft-1.6-tuto.1.orig/src/OpenCL/Makefile.am patched/bigdft-1.6-tuto.1/src/OpenCL/Makefile.am
77 +--- bigdft-1.6-tuto.1.orig/src/OpenCL/Makefile.am 2011-09-27 12:43:06.000000000 +0000
78 ++++ bigdft-1.6-tuto.1/src/OpenCL/Makefile.am 2012-07-04 12:09:02.000000000 +0000
79 +@@ -26,7 +26,8 @@
80 +
81 + EXTRA_PROGRAMS = conv_check conv_check_fft bench_conv bench_conv_quick bench_zgemm stream_check
82 +
83 +-noinst_LIBRARIES = libbasef.a libbasec.a libOCL.a libStream.a
84 ++lib_LIBRARIES = libOCL.a
85 ++noinst_LIBRARIES = libbasef.a libbasec.a libStream.a
86 +
87 + libbasef_a_SOURCES = $(mpi_source)
88 + libbasef_a_LIBADD = ../modules/defs.o ../modules/base.o \
89
90 diff --git a/sci-libs/bigdft/files/bigdft-1.6-tuto.1-gcc-4.6.patch b/sci-libs/bigdft/files/bigdft-1.6-tuto.1-gcc-4.6.patch
91 new file mode 100644
92 index 0000000..e89da25
93 --- /dev/null
94 +++ b/sci-libs/bigdft/files/bigdft-1.6-tuto.1-gcc-4.6.patch
95 @@ -0,0 +1,67 @@
96 +diff -Naurp bigdft-1.6-tuto.1.orig/src/art/art_lanczos.f90 bigdft-1.6-tuto.1/src/art/art_lanczos.f90
97 +--- bigdft-1.6-tuto.1.orig/src/art/art_lanczos.f90 2011-10-17 08:46:50.000000000 +0000
98 ++++ bigdft-1.6-tuto.1/src/art/art_lanczos.f90 2012-06-22 13:03:49.000000000 +0000
99 +@@ -80,11 +80,30 @@ subroutine lanczos( maxvec, new_projecti
100 + integer :: i_min
101 + real(kind=8) :: e_min
102 + !_______________________
103 ++
104 ++ interface
105 ++ !> ART center
106 ++ !! @author
107 ++ !! Written by EM 2010, see ~/AUTHORS
108 ++ !! It places the center of mass of a 3D vector at (0,0,0).
109 ++ subroutine center( vector, vecsize )
110 ++
111 ++ use defs, only : natoms, constr
112 ++ use bigdft_forces, only : in_system
113 ++ implicit none
114 ++
115 ++ !Arguments
116 ++ integer, intent(in) :: vecsize
117 ++ real(kind=8), dimension(vecsize), intent(inout), target :: vector
118 ++
119 ++ end subroutine center
120 ++ end interface
121 ++
122 + newpos = 0.0d0
123 + diag = 0.0d0
124 + offdiag = 0.0d0
125 + lanc = 0.0d0
126 +-
127 ++
128 + boxl = box * scala
129 + ! We now take the current position as the
130 + ! reference point and will make a displacement
131 +diff -Naurp bigdft-1.6-tuto.1.orig/src/art/calcfo_sw.f90 bigdft-1.6-tuto.1/src/art/calcfo_sw.f90
132 +--- bigdft-1.6-tuto.1.orig/src/art/calcfo_sw.f90 2011-10-17 08:46:50.000000000 +0000
133 ++++ bigdft-1.6-tuto.1/src/art/calcfo_sw.f90 2012-06-22 12:58:35.000000000 +0000
134 +@@ -475,6 +475,28 @@ function diff_square_force_one(P,numnei,
135 + integer :: trash_evalf
136 + real(8), dimension(3*natoms,configs_to_fit) :: force_tempo,tmp_force
137 +
138 ++interface
139 ++! subroutine to compute forces of one atom
140 ++subroutine SWcalczone(nat,posa,boxl,tmp_force, this_atom,numnei,nei)
141 ++
142 ++
143 ++ use SWpotential
144 ++ use defs, only : boundary,maxnei,iproc,MPI_COMM_WORLD
145 ++
146 ++ implicit none
147 ++
148 ++ integer, intent(in) :: nat
149 ++ real(kind=8), intent(in), dimension(3*nat) :: posa
150 ++ real(kind=8), dimension(3), intent(inout) :: boxl
151 ++ integer, intent(in) :: this_atom
152 ++ real(8), intent(out), dimension(3*nat), target:: tmp_force
153 ++
154 ++
155 ++ integer, dimension(nat),intent(in) :: numnei
156 ++ integer, dimension(nat,maxnei),intent(in) :: nei
157 ++end subroutine SWcalczone
158 ++end interface
159 ++
160 + trash_evalf = 0
161 + my_counter = 0
162 + force_tempo = force_work_fit