octa: new package. (#29333)

This commit is contained in:
Toyohisa Kameyama 2022-03-18 01:58:51 +09:00 committed by GitHub
parent 99c1f9b987
commit 5a85b181d3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 185 additions and 0 deletions

View File

@ -0,0 +1,10 @@
--- spack-src/GOURMET/src/pfgetsystem.org 2022-03-01 18:06:07.000000000 +0900
+++ spack-src/GOURMET/src/pfgetsystem 2022-03-01 18:08:26.000000000 +0900
@@ -159,6 +159,7 @@
ppc*) S='linux_ppc' ;;
hp_pa*) S='linux_hppa' ;;
ia64) S='linux_ia64' ;;
+ aarch64) S='linux_aarch64' ;;
esac
;;
FreeBSD)

View File

@ -0,0 +1,90 @@
diff -ru spack-src/GOURMET/src/java/platform/show.org/JOGLCanvasBase.java spack-src/GOURMET/src/java/platform/show/JOGLCanvasBase.java
--- spack-src/GOURMET/src/java/platform/show.org/JOGLCanvasBase.java 2022-03-02 10:49:48.000000000 +0900
+++ spack-src/GOURMET/src/java/platform/show/JOGLCanvasBase.java 2022-03-02 10:50:36.000000000 +0900
@@ -7,24 +7,24 @@
package platform.show;
/* JOGL v2.2.4 */
-import javax.media.opengl.GL;
-import javax.media.opengl.GLAutoDrawable;
+//import javax.media.opengl.GL;
+//import javax.media.opengl.GLAutoDrawable;
// JOGL V1.*
//import javax.media.opengl.GLCanvas;
// JOGL V2.*
//import javax.media.opengl.awt.GLCanvas;
-import javax.media.opengl.awt.GLJPanel;
+//import javax.media.opengl.awt.GLJPanel;
// JOGL V1.* or V2.*
-import javax.media.opengl.GLCapabilities;
-import javax.media.opengl.GLContext;
-import javax.media.opengl.GLEventListener;
+//import javax.media.opengl.GLCapabilities;
+//import javax.media.opengl.GLContext;
+//import javax.media.opengl.GLEventListener;
// JOGL V2.*
-import javax.media.opengl.GLProfile;
+//import javax.media.opengl.GLProfile;
-/* JOGL v2.3.2 *
+/* JOGL v2.3.2 */
import com.jogamp.opengl.*;
import com.jogamp.opengl.awt.GLJPanel;
-*/
+
/**
* Common GLCanvas Class
*/
diff -ru spack-src/GOURMET/src/java/platform/show.org/JOGLCanvas.java spack-src/GOURMET/src/java/platform/show/JOGLCanvas.java
--- spack-src/GOURMET/src/java/platform/show.org/JOGLCanvas.java 2022-03-02 10:49:48.000000000 +0900
+++ spack-src/GOURMET/src/java/platform/show/JOGLCanvas.java 2022-03-02 10:41:56.000000000 +0900
@@ -15,14 +15,15 @@
import java.util.LinkedList;
import java.util.List;
-/* JOGL v2.2.4 */
+/* JOGL v2.2.4 *
import javax.media.opengl.GLAutoDrawable;
import javax.media.opengl.GLCapabilities;
+*/
-/* JOGL v2.3.2 *
+/* JOGL v2.3.2 */
import com.jogamp.opengl.GLAutoDrawable;
import com.jogamp.opengl.GLCapabilities;
-*/
+
import platform.util.DataDriver;
import platform.util.IndexArraySet;
import platform.util.NativeDrawObject;
diff -ru spack-src/GOURMET/src/java/platform/show.org/PickingCanvas.java spack-src/GOURMET/src/java/platform/show/PickingCanvas.java
--- spack-src/GOURMET/src/java/platform/show.org/PickingCanvas.java 2022-03-02 10:49:48.000000000 +0900
+++ spack-src/GOURMET/src/java/platform/show/PickingCanvas.java 2022-03-02 10:41:56.000000000 +0900
@@ -14,12 +14,13 @@
import java.awt.event.MouseMotionListener;
import java.util.ArrayList;
-/* JOGL v2.2.4 */
+/* JOGL v2.2.4 *
import javax.media.opengl.GLCapabilities;
+*/
-/* JOGL v2.3.2 *
+/* JOGL v2.3.2 */
import com.jogamp.opengl.GLCapabilities;
-*/
+
import javax.swing.SwingUtilities;
import platform.util.IndexArraySet;
--- spack-src/GOURMET/src/java/platform/show/PickingCanvas.java.org 2022-03-02 11:50:02.000000000 +0900
+++ spack-src/GOURMET/src/java/platform/show/PickingCanvas.java 2022-03-02 11:52:57.000000000 +0900
@@ -341,7 +341,7 @@
// Begin of drawing process.
if(!makeCurrent()) return null;
// for HiDPI display
- int[] scale = getCurrentSurfaceScale(new int[2]); /* int -> float in later version */
+ float[] scale = getCurrentSurfaceScale(new float[2]);
x *= scale[0];
y *= scale[1];
////////////////////////////////////////////////////////

View File

@ -0,0 +1,30 @@
--- OCTA84/GOURMET/src/view3d/uogl/src/uogl_mesh.cpp.org 2022-03-02 13:39:04.000000000 +0900
+++ OCTA84/GOURMET/src/view3d/uogl/src/uogl_mesh.cpp 2022-03-02 13:39:49.000000000 +0900
@@ -2331,9 +2331,9 @@
arw->_xyz[1] = (float)(arrowk.point1[1] * ss + arrowk.point2[1] * tt);
arw->_xyz[2] = (float)(arrowk.point1[2] * ss + arrowk.point2[2] * tt);
float vct[3] = {
- (vctp[0][0] * ss + vctp[1][0] * tt),
- (vctp[0][1] * ss + vctp[1][1] * tt),
- (vctp[0][2] * ss + vctp[1][2] * tt)
+ (float)(vctp[0][0] * ss + vctp[1][0] * tt),
+ (float)(vctp[0][1] * ss + vctp[1][1] * tt),
+ (float)(vctp[0][2] * ss + vctp[1][2] * tt)
};
arw->_length = fuoglLength( vct );
if( arw->_length <= 1e-20f ){
--- spack-src/GOURMET/src/view3d/uogl/src/uogl_unmesh.cpp.org 2022-03-02 15:10:17.000000000 +0900
+++ spack-src/GOURMET/src/view3d/uogl/src/uogl_unmesh.cpp 2022-03-02 15:10:56.000000000 +0900
@@ -1475,9 +1475,9 @@
arw->_xyz[1] = (float)(point1[1] * ss + point2[1] * arrowk.tt);
arw->_xyz[2] = (float)(point1[2] * ss + point2[2] * arrowk.tt);
float vct[3] = {
- (vector1[0] * ss + vector2[0] * arrowk.tt),
- (vector1[1] * ss + vector2[1] * arrowk.tt),
- (vector1[2] * ss + vector2[2] * arrowk.tt)
+ (float)(vector1[0] * ss + vector2[0] * arrowk.tt),
+ (float)(vector1[1] * ss + vector2[1] * arrowk.tt),
+ (float)(vector1[2] * ss + vector2[2] * arrowk.tt)
};
arw->_length = fuoglLength( vct );
if( arw->_length <= 1e-20f ){

View File

@ -0,0 +1,55 @@
# Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
class Octa(AutotoolsPackage):
"""OCTA is an integrated simulation system for soft materials."""
homepage = "https://octa.jp"
url = "http://49.212.191.63/phpBB/download/file.php?id=3454&sid=3dfae182c664d1f5960d9ca63c40798a"
version('8.4', 'b76d25f333fef76601bfe8262e9a748154280d5408ea823fa6530a6f3f86b51b', extension='tar.gz')
depends_on('autoconf', type='build')
depends_on('automake', type='build')
depends_on('libtool', type='build')
depends_on('libjpeg', type='link')
depends_on('libpng', type='link')
depends_on('zlib', type='link')
depends_on('jogl')
depends_on('python')
depends_on('gnuplot', type='run')
depends_on('py-numpy')
depends_on('py-scipy')
depends_on('py-numba')
# specify for linux_aarch64
patch('aarch64.patch', when='target=aarch64:')
# For jogl 2.3.2 or later
patch('jogl.patch')
# patch for non-constant-expression cannot be narrowed error.
patch('narrowed-initialize.patch')
configure_directory = join_path('GOURMET', 'src')
def patch(self):
with working_dir(self.configure_directory):
copy('jogltest.java_v232', 'jogltest.java')
def configure_args(self):
spec = self.spec
args = ['--with-python={0}'.format(spec['python'].command),
'--with-java-home={0}'.format(spec['java'].prefix),
'--with-jogl-jar={0}'.format(spec['jogl'].prefix.lib),
'--with-jogl-lib={0}'.format(spec['jogl'].prefix.lib)]
return args
def install(self, spec, prefix):
mkdirp(prefix.bin)
install(join_path('GOURMET', 'bin', '*.sh'), prefix.bin)
with working_dir(self.configure_directory):
make('install', parallel=False)