1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-18 00:10:04 +00:00

science/linearelasticity: new port, Elas, a solver for linear elasticity

Required by Mmg.
This commit is contained in:
Thierry Thomas 2024-06-22 23:07:11 +02:00
parent e5c6ec80c6
commit 298551c2dc
6 changed files with 95 additions and 0 deletions

View File

@ -166,6 +166,7 @@
SUBDIR += libvdwxc
SUBDIR += libxc
SUBDIR += liggghts
SUBDIR += linearelasticity
SUBDIR += linux-zotero
SUBDIR += luscus
SUBDIR += m-aneos

View File

@ -0,0 +1,37 @@
PORTNAME= LinearElasticity
PORTVERSION= 1.0.0
DISTVERSIONPREFIX= v
CATEGORIES= science
MAINTAINER= thierry@FreeBSD.org
COMMENT= Elas, a solver for linear elasticity
WWW= https://github.com/ISCDtoolbox/LinearElasticity
LICENSE= GPLv3
LICENSE_FILE= ${WRKSRC}/LICENSE.md
LIB_DEPENDS= libCommons.so:devel/iscd-commons
USES= cmake:testing compiler:c++17-lang
USE_GITHUB= yes
GH_ACCOUNT= ISCDtoolbox
CFLAGS+= -I${LOCALBASE}/include/ISCD
USE_LDCONFIG= yes
OPTIONS_DEFINE= DOCS EXAMPLES
PORTDOCS= README.md
PORTEXAMPLES= *
do-install-DOCS-on:
${MKDIR} ${STAGEDIR}${DOCSDIR}
${INSTALL_DATA} ${WRKSRC}/README.md ${STAGEDIR}${DOCSDIR}
do-install-EXAMPLES-on:
${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
(cd ${WRKSRC}/demos && \
${COPYTREE_SHARE} \* ${STAGEDIR}${EXAMPLESDIR})
.include <bsd.port.mk>

View File

@ -0,0 +1,3 @@
TIMESTAMP = 1719072290
SHA256 (ISCDtoolbox-LinearElasticity-v1.0.0_GH0.tar.gz) = e25d5cd448f4eb8d15461cea4203e854c87a0504c8343ff01c8f8f55b33ee2b7
SIZE (ISCDtoolbox-LinearElasticity-v1.0.0_GH0.tar.gz) = 855724

View File

@ -0,0 +1,42 @@
--- CMakeLists.txt.orig 2021-05-06 07:50:46 UTC
+++ CMakeLists.txt
@@ -1,6 +1,4 @@ cmake_minimum_required(VERSION 2.8)
cmake_minimum_required(VERSION 2.8)
-set(CMAKE_BUILD_TYPE "Release")
-SET(CMAKE_CXX_FLAGS "-w -g -O3")
set(CMAKE_MACOSX_RPATH 1)
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
@@ -11,24 +9,20 @@ ADD_LIBRARY( Elas SHARED ${source_files})
file( GLOB_RECURSE source_files sources/*)
file( GLOB_RECURSE header_files sources/*.h)
ADD_LIBRARY( Elas SHARED ${source_files})
-find_library( Commons NAMES Commons HINTS "$ENV{HOME}/lib")
-INCLUDE_DIRECTORIES( "$ENV{HOME}/include")
-LINK_DIRECTORIES( "$ENV{HOME}/lib")
+set_target_properties( Elas PROPERTIES VERSION 0.0.0 SOVERSION 0)
+find_library( Commons NAMES Commons HINTS lib)
+INCLUDE_DIRECTORIES( include/ISCD)
+LINK_DIRECTORIES( ${Elas_BINARY_DIR})
target_link_libraries( Elas ${Commons})
INSTALL(
TARGETS Elas
- LIBRARY DESTINATION "$ENV{HOME}/lib"
- RUNTIME DESTINATION "$ENV{HOME}/lib")
-INSTALL( FILES ${header_files} DESTINATION "$ENV{HOME}/include")
+ LIBRARY DESTINATION lib${LIB_SUFFIX}
+ RUNTIME DESTINATION lib${LIB_SUFFIX})
+INSTALL( FILES ${header_files} DESTINATION include)
#Executable
project(main)
add_executable( elastic sources/elastic.c)
target_link_libraries( elastic ${Commons} Elas)
-INSTALL( TARGETS elastic RUNTIME DESTINATION "$ENV{HOME}/bin")
-
-
-
-
-
+INSTALL( TARGETS elastic RUNTIME DESTINATION bin)

View File

@ -0,0 +1,6 @@
Elas, alias Elastic, is a simple yet efficient finite element solver for linear
elasticity problems in two and three dimensions.
A full description of all parameters and options that can be specified in the
command line or in a parameter file [file.elas] can be found in the project
wiki, see <https://github.com/ISCDtoolbox/LinearElasticity/wiki>.

View File

@ -0,0 +1,6 @@
bin/elastic
include/elastic.h
include/ls_calls.h
lib/libElas.so
lib/libElas.so.0
lib/libElas.so.0.0.0