1 |
commit: b1a67c63567b4cfa7aa8680bcfda77125ecb0de8 |
2 |
Author: Jens-Malte Gottfried <jmgottfried <AT> web <DOT> de> |
3 |
AuthorDate: Sun Mar 4 12:35:34 2012 +0000 |
4 |
Commit: Jens-Malte Gottfried <jmg <AT> godefridus <DOT> de> |
5 |
CommitDate: Sun Mar 4 12:35:34 2012 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=b1a67c63 |
7 |
|
8 |
fixed undefined reference when using afterimage |
9 |
|
10 |
Still broken (waiting for upstream): |
11 |
- imagemagick |
12 |
- boost |
13 |
- sparse |
14 |
|
15 |
--- |
16 |
.../petsc/files/petsc-fix-afterimage.patch | 71 ++++++++++++++++++++ |
17 |
sci-mathematics/petsc/files/petsc-fix-xops.patch | 21 ++++++ |
18 |
sci-mathematics/petsc/petsc-3.2_p6.ebuild | 7 ++- |
19 |
3 files changed, 98 insertions(+), 1 deletions(-) |
20 |
|
21 |
diff --git a/sci-mathematics/petsc/files/petsc-fix-afterimage.patch b/sci-mathematics/petsc/files/petsc-fix-afterimage.patch |
22 |
new file mode 100644 |
23 |
index 0000000..27f4d3b |
24 |
--- /dev/null |
25 |
+++ b/sci-mathematics/petsc/files/petsc-fix-afterimage.patch |
26 |
@@ -0,0 +1,71 @@ |
27 |
+ |
28 |
+# HG changeset patch |
29 |
+# User Jed Brown <jed@××××.org> |
30 |
+# Date 1330818004 21600 |
31 |
+# Node ID fb79e104b74267c74aa64f125e7eb6a64bce4b14 |
32 |
+# Parent 8242202a123dd2cbfea7a4a2a9a1797951306f8d |
33 |
+Fixes for libAfterImage compilation, ImageMagick is still just a stub |
34 |
+ |
35 |
+diff -r 8242202a123d -r fb79e104b742 config/PETSc/packages/afterimage.py |
36 |
+--- a/config/PETSc/packages/afterimage.py Sat Mar 03 16:05:00 2012 -0600 |
37 |
++++ b/config/PETSc/packages/afterimage.py Sat Mar 03 17:40:04 2012 -0600 |
38 |
+@@ -9,6 +9,7 @@ |
39 |
+ self.includedir = '' |
40 |
+ self.libdir = '../../lib' |
41 |
+ self.double = 0 |
42 |
++ self.complex = 1 |
43 |
+ |
44 |
+ def setupDependencies(self, framework): |
45 |
+ PETSc.package.NewPackage.setupDependencies(self, framework) |
46 |
+diff -r 8242202a123d -r fb79e104b742 config/PETSc/packages/imagemagick.py |
47 |
+--- a/config/PETSc/packages/imagemagick.py Sat Mar 03 16:05:00 2012 -0600 |
48 |
++++ b/config/PETSc/packages/imagemagick.py Sat Mar 03 17:40:04 2012 -0600 |
49 |
+@@ -4,8 +4,8 @@ |
50 |
+ def __init__(self, framework): |
51 |
+ PETSc.package.NewPackage.__init__(self, framework) |
52 |
+ self.functions = ['IsMagickInstantiated'] |
53 |
+- self.includes = ['MagicCore/MagickCore.h'] |
54 |
+- self.liblist = [['libMagicCore.a']] |
55 |
++ self.includes = ['magick/MagickCore.h'] |
56 |
++ self.liblist = [['libMagickCore.a']] |
57 |
+ |
58 |
+ |
59 |
+ |
60 |
+diff -r 8242202a123d -r fb79e104b742 src/sys/draw/impls/x/xinit.c |
61 |
+--- a/src/sys/draw/impls/x/xinit.c Sat Mar 03 16:05:00 2012 -0600 |
62 |
++++ b/src/sys/draw/impls/x/xinit.c Sat Mar 03 17:40:04 2012 -0600 |
63 |
+@@ -291,7 +291,7 @@ |
64 |
+ #include <afterimage.h> |
65 |
+ #undef __FUNCT__ |
66 |
+ #define __FUNCT__ "PetscDrawSave_X" |
67 |
+-PetscErrorCode PetscDrawSave_X(PetscDraw draw,PetscViewer viewer) |
68 |
++PetscErrorCode PetscDrawSave_X(PetscDraw draw) |
69 |
+ { |
70 |
+ PetscDraw_X *drawx = (PetscDraw_X*)draw->data; |
71 |
+ XImage *image; |
72 |
+@@ -328,10 +328,10 @@ |
73 |
+ void deflateEnd(void) {;} |
74 |
+ |
75 |
+ #elif defined(PETSC_HAVE_IMAGEMAGICK) |
76 |
+-#include <MagicCore/MagickCore.h> |
77 |
++#include <magick/MagickCore.h> |
78 |
+ #undef __FUNCT__ |
79 |
+ #define __FUNCT__ "PetscDrawSave_X" |
80 |
+-PetscErrorCode PetscDrawSave_X(PetscDraw draw,PetscViewer viewer) |
81 |
++PetscErrorCode PetscDrawSave_X(PetscDraw draw) |
82 |
+ { |
83 |
+ PetscDraw_X *drawx = (PetscDraw_X*)draw->data; |
84 |
+ Image *image; |
85 |
+diff -r 8242202a123d -r fb79e104b742 src/sys/draw/impls/x/xops.c |
86 |
+--- a/src/sys/draw/impls/x/xops.c Sat Mar 03 16:05:00 2012 -0600 |
87 |
++++ b/src/sys/draw/impls/x/xops.c Sat Mar 03 17:40:04 2012 -0600 |
88 |
+@@ -551,7 +551,7 @@ |
89 |
+ PetscFunctionReturn(0); |
90 |
+ } |
91 |
+ |
92 |
+-PetscErrorCode PetscDrawSave_X(PetscDraw,PetscViewer); |
93 |
++PetscErrorCode PetscDrawSave_X(PetscDraw); |
94 |
+ PetscErrorCode PetscDrawSetSave_X(PetscDraw,const char*); |
95 |
+ |
96 |
+ static struct _PetscDrawOps DvOps = { PetscDrawSetDoubleBuffer_X, |
97 |
+ |
98 |
|
99 |
diff --git a/sci-mathematics/petsc/files/petsc-fix-xops.patch b/sci-mathematics/petsc/files/petsc-fix-xops.patch |
100 |
new file mode 100644 |
101 |
index 0000000..cd2edeb |
102 |
--- /dev/null |
103 |
+++ b/sci-mathematics/petsc/files/petsc-fix-xops.patch |
104 |
@@ -0,0 +1,21 @@ |
105 |
+ |
106 |
+# HG changeset patch |
107 |
+# User Jed Brown <jed@××××.org> |
108 |
+# Date 1330812300 21600 |
109 |
+# Node ID 8242202a123dd2cbfea7a4a2a9a1797951306f8d |
110 |
+# Parent 759927945bb3cdd30ff4265c043264db5286d263 |
111 |
+Fix declaration of PetscDrawSave_X() |
112 |
+ |
113 |
+diff -r 759927945bb3 -r 8242202a123d src/sys/draw/impls/x/xops.c |
114 |
+--- a/src/sys/draw/impls/x/xops.c Fri Mar 02 11:10:34 2012 -0600 |
115 |
++++ b/src/sys/draw/impls/x/xops.c Sat Mar 03 16:05:00 2012 -0600 |
116 |
+@@ -551,7 +551,7 @@ |
117 |
+ PetscFunctionReturn(0); |
118 |
+ } |
119 |
+ |
120 |
+-PetscErrorCode PetscDrawSave_X(PetscDraw); |
121 |
++PetscErrorCode PetscDrawSave_X(PetscDraw,PetscViewer); |
122 |
+ PetscErrorCode PetscDrawSetSave_X(PetscDraw,const char*); |
123 |
+ |
124 |
+ static struct _PetscDrawOps DvOps = { PetscDrawSetDoubleBuffer_X, |
125 |
+ |
126 |
|
127 |
diff --git a/sci-mathematics/petsc/petsc-3.2_p6.ebuild b/sci-mathematics/petsc/petsc-3.2_p6.ebuild |
128 |
index d3aecb0..0d972ed 100644 |
129 |
--- a/sci-mathematics/petsc/petsc-3.2_p6.ebuild |
130 |
+++ b/sci-mathematics/petsc/petsc-3.2_p6.ebuild |
131 |
@@ -16,11 +16,12 @@ LICENSE="petsc" |
132 |
SLOT="0" |
133 |
KEYWORDS="~x86 ~amd64" |
134 |
IUSE="afterimage boost complex-scalars cxx debug doc \ |
135 |
- fortran hdf5 hypre metis mpi sparse threads X" |
136 |
+ imagemagick fortran hdf5 hypre metis mpi sparse threads X" |
137 |
|
138 |
REQUIRED_USE=" |
139 |
hypre? ( cxx mpi ) |
140 |
hdf5? ( mpi ) |
141 |
+ imagemagick? ( X ) |
142 |
afterimage? ( X ) |
143 |
" |
144 |
|
145 |
@@ -33,6 +34,7 @@ RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] ) |
146 |
hdf5? ( sci-libs/hdf5 ) |
147 |
boost? ( dev-libs/boost ) |
148 |
afterimage? ( media-libs/libafterimage ) |
149 |
+ imagemagick? ( media-gfx/imagemagick ) |
150 |
sparse? ( sci-libs/cholmod ) |
151 |
" |
152 |
|
153 |
@@ -47,6 +49,8 @@ src_prepare(){ |
154 |
epatch "${FILESDIR}/${PN}-configure-pic.patch" |
155 |
epatch "${FILESDIR}/${PN}-disable-env-warnings.patch" |
156 |
epatch "${FILESDIR}/${PN}-disable-rpath.patch" |
157 |
+ epatch "${FILESDIR}/${PN}-fix-xops.patch" |
158 |
+ epatch "${FILESDIR}/${PN}-fix-afterimage.patch" |
159 |
} |
160 |
|
161 |
src_configure(){ |
162 |
@@ -126,6 +130,7 @@ src_configure(){ |
163 |
$(petsc_with boost) \ |
164 |
$(petsc_with hdf5) \ |
165 |
$(petsc_with hypre hypre /usr/$(get_libdir)/libHYPRE.so /usr/include/hypre) \ |
166 |
+ $(petsc_with imagemagick imagemagick /usr/$(get_libdir)/libMagickCore.so /usr/include/ImageMagick) \ |
167 |
$(petsc_with metis parmetis) \ |
168 |
$(petsc_with X x) \ |
169 |
$(petsc_with X x11) \ |