View | Details | Raw Unified | Return to bug 242546 | Differences between
and this patch

Collapse All | Expand All

(-)science/orthanc/Makefile (+71 lines)
Line 0 Link Here
1
# Created by: maintainer.freebsd@xpoundit.com
2
# $FreeBSD$
3
4
PORTNAME=	orthanc
5
PORTVERSION=	1.7.2
6
CATEGORIES=	science
7
MASTER_SITES=	http://orthanc-server.com/downloads/get.php?path=/orthanc/:main \
8
		http://orthanc.osimis.io/ThirdPartyDownloads/:thirdparty
9
DISTFILES=	Orthanc-${PORTVERSION}.tar.gz:main \
10
		civetweb-1.12-fixed.tar.gz:thirdparty \
11
		e2fsprogs-1.44.5.tar.gz:thirdparty
12
DIST_SUBDIR=	${PORTNAME}
13
EXTRACT_ONLY=	Orthanc-${PORTVERSION}.tar.gz
14
15
MAINTAINER=	maintainer.freebsd@xpoundit.com
16
COMMENT=	Orthanc is a DICOM server for healthcare and medical research
17
18
LICENSE=	GPLv3
19
LICENSE_FILE=	${WRKSRC}/COPYING
20
21
LIB_DEPENDS=	libboost_atomic.so:devel/boost-libs \
22
		libcharls.so:graphics/dcmtk \
23
		libcurl.so:ftp/curl \
24
		libgtest.so:devel/googletest \
25
		libicudata.so:devel/icu \
26
		libjbig.so:graphics/jbigkit \
27
		libjpeg.so:graphics/jpeg-turbo \
28
		libjsoncpp.so:devel/jsoncpp \
29
		libnghttp2.so:www/libnghttp2 \
30
		libpng16.so:graphics/png \
31
		libpugixml.so:textproc/pugixml \
32
		libsqlite3.so:databases/sqlite3 \
33
		libtiff.so:graphics/tiff \
34
		libuuid.so:misc/e2fsprogs-libuuid \
35
		libxml2.so:textproc/libxml2
36
37
USES=		cmake dos2unix iconv jpeg lua python:build ssl
38
39
WRKSRC=		${WRKDIR}/Orthanc-${PORTVERSION}
40
CMAKE_SOURCE_PATH= ${WRKSRC}/OrthancServer
41
CMAKE_ARGS=	-DDCMTK_LIBRARIES="dcmdsig;charls;dcmjpls" \
42
		-DDCMTK_DIR="${LOCALBASE}" \
43
		-DDCMTK_DICTIONARY_DIR="${LOCALBASE}/share/dcmtk" \
44
		-DUSE_SYSTEM_CIVETWEB=OFF \
45
		-DUSE_SYSTEM_UUID=OFF \
46
		-DUNIT_TESTS_WITH_HTTP_CONNEXIONS=OFF \
47
		-DBUILD_CONNECTIVITY_CHECKS=OFF
48
CFLAGS+=	-I${LOCALBASE}/include \
49
		-DNDEBUG
50
CXXFLAGS+=	-DNDEBUG
51
DOS2UNIX_FILES=	${WRKSRC}/OrthancServer/CMakeLists.txt
52
USE_LDCONFIG=	yes
53
USE_RC_SUBR=	orthanc
54
USERS=		orthanc
55
GROUPS=		orthanc
56
PLIST_SUB+=	PORTVERSION=${PORTVERSION}
57
58
post-patch:
59
	${MKDIR} ${CMAKE_SOURCE_PATH}/ThirdPartyDownloads
60
	${MKDIR} ${CMAKE_SOURCE_PATH}/Plugins/Samples/ConnectivityChecks/ThirdPartyDownloads
61
	${CP} ${DISTDIR}/${DIST_SUBDIR}/civetweb-1.12-fixed.tar.gz ${CMAKE_SOURCE_PATH}/ThirdPartyDownloads
62
	${CP} ${DISTDIR}/${DIST_SUBDIR}/e2fsprogs-1.44.5.tar.gz ${CMAKE_SOURCE_PATH}/ThirdPartyDownloads
63
64
post-install:
65
	${MKDIR} ${STAGEDIR}/var/db/orthanc/db/db-v5
66
	${MKDIR} ${STAGEDIR}${DATADIR}/plugins
67
	${MKDIR} ${STAGEDIR}${ETCDIR}
68
	${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g' ${CMAKE_SOURCE_PATH}/Resources/Configuration.json
69
	${CP} ${CMAKE_SOURCE_PATH}/Resources/Configuration.json ${STAGEDIR}${ETCDIR}/orthanc.json.sample
70
71
.include <bsd.port.mk>
(-)science/orthanc/distinfo (+7 lines)
Line 0 Link Here
1
TIMESTAMP = 1596543829
2
SHA256 (orthanc/Orthanc-1.7.2.tar.gz) = ea167b4688db7cd8855a1758f289b21d490e7d97afcc405f12d881b22bf17e9b
3
SIZE (orthanc/Orthanc-1.7.2.tar.gz) = 1644200
4
SHA256 (orthanc/civetweb-1.12-fixed.tar.gz) = 0e81fc252166302a33abd68e98936fb24d9b008b5816fe50edd6b12256768e41
5
SIZE (orthanc/civetweb-1.12-fixed.tar.gz) = 3035855
6
SHA256 (orthanc/e2fsprogs-1.44.5.tar.gz) = 2e211fae27ef74d5af4a4e40b10b8df7f87c655933bd171aab4889bfc4e6d1cc
7
SIZE (orthanc/e2fsprogs-1.44.5.tar.gz) = 7619237
(-)science/orthanc/files/orthanc.in (+40 lines)
Line 0 Link Here
1
#!/bin/sh
2
3
# $FreeBSD$
4
#
5
# PROVIDE: orthanc
6
# REQUIRE: LOGIN
7
# KEYWORD: shutdown
8
#
9
# Add these lines to /etc/rc.conf.local or /etc/rc.conf
10
# to enable this service:
11
#
12
# orthanc_enable (bool):	Set to NO by default.
13
#				Set it to YES to enable Orthanc.
14
# orthanc_flags (str):		Set to %%ETCDIR%%/orthanc.json
15
#				by default.
16
17
. /etc/rc.subr
18
19
name=orthanc
20
rcvar=orthanc_enable
21
desc="RESTful DICOM server for healthcare and medical research"
22
23
load_rc_config $name
24
25
: ${orthanc_enable:=NO}
26
: ${orthanc_flags="%%ETCDIR%%/orthanc.json"}
27
28
start_precmd=orthanc_prestart
29
pidfile=/var/run/orthanc.pid
30
procname=%%PREFIX%%/sbin/Orthanc
31
command=/usr/sbin/daemon
32
command_args=" -f -p ${pidfile} -u orthanc ${procname} ${orthanc_flags}"
33
34
orthanc_prestart()
35
{
36
	# Have to empty rc_flags so they don't get passed to daemon(8)
37
	rc_flags=""
38
}
39
40
run_rc_command "$1"
(-)science/orthanc/files/patch-OrthancServer_CMakeLists.txt (+13 lines)
Line 0 Link Here
1
--- OrthancServer/CMakeLists.txt.orig	2020-07-08 09:50:26 UTC
2
+++ OrthancServer/CMakeLists.txt
3
@@ -574,8 +574,8 @@ if (ENABLE_PLUGINS AND BUILD_CONNECTIVITY_CHECKS)
4
     list(GET CMAKE_FIND_LIBRARY_PREFIXES 0 Prefix)
5
     list(GET CMAKE_FIND_LIBRARY_SUFFIXES 0 Suffix)
6
     install(FILES
7
-      ${CMAKE_CURRENT_BINARY_DIR}/${Prefix}ConnectivityChecks${Suffix}
8
-      ${CMAKE_CURRENT_BINARY_DIR}/${Prefix}ConnectivityChecks${Suffix}.${ORTHANC_VERSION}
9
+      ${CMAKE_CURRENT_BINARY_DIR}/ConnectivityChecks-build/${Prefix}ConnectivityChecks${Suffix}
10
+      ${CMAKE_CURRENT_BINARY_DIR}/ConnectivityChecks-build/${Prefix}ConnectivityChecks${Suffix}.${ORTHANC_VERSION}
11
       DESTINATION "share/orthanc/plugins")
12
   endif()
13
 endif()
(-)science/orthanc/files/patch-OrthancServer_Resources_Configuration.json (+25 lines)
Line 0 Link Here
1
--- OrthancServer/Resources/Configuration.json.orig	2020-07-08 09:50:26 UTC
2
+++ OrthancServer/Resources/Configuration.json
3
@@ -10,12 +10,12 @@
4
   // Path to the directory that holds the heavyweight files (i.e. the
5
   // raw DICOM instances). Backslashes must be either escaped by
6
   // doubling them, or replaced by forward slashes "/".
7
-  "StorageDirectory" : "OrthancStorage",
8
+  "StorageDirectory" : "/var/db/orthanc/db-v5",
9
 
10
   // Path to the directory that holds the SQLite index (if unset, the
11
   // value of StorageDirectory is used). This index could be stored on
12
   // a RAM-drive or a SSD device for performance reasons.
13
-  "IndexDirectory" : "OrthancStorage",
14
+  "IndexDirectory" : "/var/db/orthanc/db-v5",
15
 
16
   // Path to the directory where Orthanc stores its large temporary
17
   // files. The content of this folder can be safely deleted if
18
@@ -53,6 +53,7 @@
19
   // find shared libraries. Backslashes must be either escaped by
20
   // doubling them, or replaced by forward slashes "/".
21
   "Plugins" : [
22
+    "%%PREFIX%%/share/orthanc/plugins/"
23
   ],
24
 
25
   // Maximum number of processing jobs that are simultaneously running
(-)science/orthanc/pkg-descr (+23 lines)
Line 0 Link Here
1
Orthanc aims at providing a simple, yet powerful standalone DICOM server. It
2
is designed to improve the DICOM flows in hospitals and to support research
3
about the automated analysis of medical images. Orthanc lets its users focus
4
on the content of the DICOM files, hiding the complexity of the DICOM format
5
and of the DICOM protocol.
6
7
Orthanc can turn any computer running Windows, Linux, FreeBSD or OS X into a
8
DICOM store (in other words, a mini-PACS system). Its architecture is
9
lightweight and standalone, meaning that no complex database administration
10
is required, nor the installation of third-party dependencies.
11
12
What makes Orthanc unique is the fact that it provides a RESTful API. Thanks
13
to this major feature, it is possible to drive Orthanc from any computer
14
language. The DICOM tags of the stored medical images can be downloaded in
15
the JSON file format. Furthermore, standard PNG images can be generated
16
on-the-fly from the DICOM instances by Orthanc.
17
18
Orthanc also features a plugin mechanism to add new modules that extends the
19
core capabilities of its REST API. A Web viewer, a PostgreSQL database
20
back-end, a MySQL database back-end, and a reference implementation of
21
DICOMweb are currently freely available as plugins.
22
23
WWW: https://www.orthanc-server.com/
(-)science/orthanc/pkg-plist (+18 lines)
Line 0 Link Here
1
@owner orthanc
2
@group orthanc
3
@mode 700
4
@dir %%DATADIR%%/plugins
5
@dir /var/db/orthanc/db/db-v5
6
@dir /var/db/orthanc/db
7
@dir /var/db/orthanc
8
@mode 600
9
@sample %%ETCDIR%%/orthanc.json.sample
10
@mode
11
include/orthanc/OrthancCDatabasePlugin.h
12
include/orthanc/OrthancCPlugin.h
13
bin/OrthancRecoverCompressedFile
14
sbin/Orthanc
15
%%DATADIR%%/plugins/%%LUA_LIBDIR%%ModalityWorklists.so
16
%%DATADIR%%/plugins/%%LUA_LIBDIR%%ModalityWorklists.so.%%PORTVERSION%%
17
%%DATADIR%%/plugins/%%LUA_LIBDIR%%ServeFolders.so
18
%%DATADIR%%/plugins/%%LUA_LIBDIR%%ServeFolders.so.%%PORTVERSION%%

Return to bug 242546