1SUMMARY="A file format and library for storing scientific data"
2DESCRIPTION="HDF5 was designed and implemented to address the deficiencies \
3of HDF4.x. It has a more powerful and flexible data model, supports files \
4larger than 2 GB, and supports parallel I/O."
5HOMEPAGE="https://www.hdfgroup.org/HDF5/"
6COPYRIGHT="2011-2019 The HDF Group,
7	The Board of Trustees of the University of Illinois."
8LICENSE="BSD (3-clause)"
9REVISION="2"
10SOURCE_URI="https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.12/hdf5-$portVersion/src/hdf5-$portVersion.tar.gz"
11CHECKSUM_SHA256="a62dcb276658cb78e6795dd29bf926ed7a9bc4edf6e77025cd2c689a8f97c17a"
12
13ARCHITECTURES="all !x86_gcc2"
14SECONDARY_ARCHITECTURES="x86"
15
16libhdf5Version="200.0.0"
17libhdf5VersionCompat="$libhdf5Version compat >= ${libhdf5Version%%.*}"
18libhdf5_cppVersion="200.0.0"
19libhdf5_cppVersionCompat="$libhdf5_cppVersion compat >= ${libhdf5_cppVersion%%.*}"
20libhdf5_fortranVersion="200.0.0"
21libhdf5_fortranVersionCompat="$libhdf5_fortranVersion compat >= ${libhdf5_fortranVersion%%.*}"
22libhdf5_hlVersion="200.0.0"
23libhdf5_hlVersionCompat="$libhdf5_hlVersion compat >= ${libhdf5_hlVersion%%.*}"
24libhdf5_hl_cppVersion="200.0.0"
25libhdf5_hl_cppVersionCompat="$libhdf5_hl_cppVersion compat >= ${libhdf5_hl_cppVersion%%.*}"
26libhdf5hl_fortranVersion="200.0.0"
27libhdf5hl_fortranVersionCompat="$libhdf5hl_fortranVersion compat >= ${libhdf5hl_fortranVersion%%.*}"
28
29PROVIDES="
30	hdf5$secondaryArchSuffix = $portVersion
31	cmd:gif2h5$secondaryArchSuffix
32	cmd:h52gif$secondaryArchSuffix
33	cmd:h5c++$secondaryArchSuffix
34	cmd:h5cc$secondaryArchSuffix
35	cmd:h5clear$secondaryArchSuffix
36	cmd:h5copy$secondaryArchSuffix
37	cmd:h5debug$secondaryArchSuffix
38	cmd:h5diff$secondaryArchSuffix
39	cmd:h5dump$secondaryArchSuffix
40	cmd:h5fc$secondaryArchSuffix
41	cmd:h5format_convert$secondaryArchSuffix
42	cmd:h5import$secondaryArchSuffix
43	cmd:h5jam$secondaryArchSuffix
44	cmd:h5ls$secondaryArchSuffix
45	cmd:h5mkgrp$secondaryArchSuffix
46	cmd:h5perf_serial$secondaryArchSuffix
47	cmd:h5redeploy$secondaryArchSuffix
48	cmd:h5repack$secondaryArchSuffix
49	cmd:h5repart$secondaryArchSuffix
50	cmd:h5stat$secondaryArchSuffix
51	cmd:h5unjam$secondaryArchSuffix
52	cmd:h5watch$secondaryArchSuffix
53	lib:libhdf5$secondaryArchSuffix = $libhdf5VersionCompat
54	lib:libhdf5_cpp$secondaryArchSuffix = $libhdf5_cppVersionCompat
55	lib:libhdf5_fortran$secondaryArchSuffix = $libhdf5_fortranVersionCompat
56	lib:libhdf5_hl$secondaryArchSuffix = $libhdf5_hlVersionCompat
57	lib:libhdf5_hl_cpp$secondaryArchSuffix = $libhdf5_hl_cppVersionCompat
58	lib:libhdf5hl_fortran$secondaryArchSuffix = $libhdf5hl_fortranVersionCompat
59	"
60REQUIRES="
61	haiku$secondaryArchSuffix
62	lib:libgettextpo$secondaryArchSuffix
63	lib:libgfortran$secondaryArchSuffix
64	lib:libgomp$secondaryArchSuffix
65	lib:libz$secondaryArchSuffix
66	"
67
68PROVIDES_devel="
69	hdf5${secondaryArchSuffix}_devel = $portVersion
70	devel:libhdf5$secondaryArchSuffix = $libhdf5VersionCompat
71	devel:libhdf5_cpp$secondaryArchSuffix = $libhdf5_cppVersionCompat
72	devel:libhdf5_fortran$secondaryArchSuffix = $libhdf5_fortranVersionCompat
73	devel:libhdf5_hl$secondaryArchSuffix = $libhdf5_hlVersionCompat
74	devel:libhdf5_hl_cpp$secondaryArchSuffix = $libhdf5_hl_cppVersionCompat
75	devel:libhdf5hl_fortran$secondaryArchSuffix = $libhdf5hl_fortranVersionCompat
76	devel:libhdf5_hl_fortran$secondaryArchSuffix = $libhdf5hl_fortranVersionCompat
77	"
78REQUIRES_devel="
79	hdf5$secondaryArchSuffix == $portVersion base
80	"
81
82BUILD_REQUIRES="
83	haiku${secondaryArchSuffix}_devel
84	devel:libgettextlib$secondaryArchSuffix
85	devel:libz$secondaryArchSuffix
86	"
87BUILD_PREREQUIRES="
88	cmd:aclocal
89	cmd:autoreconf
90	cmd:awk
91	cmd:g++$secondaryArchSuffix
92	cmd:gettext$secondaryArchSuffix
93	cmd:gfortran$secondaryArchSuffix
94	cmd:grep
95	cmd:libtoolize$secondaryArchSuffix
96	cmd:make
97	cmd:perl
98	cmd:pkg_config$secondaryArchSuffix
99	"
100
101BUILD()
102{
103	autoreconf -fi
104	runConfigure ./configure \
105		--disable-static \
106		--enable-hl \
107		--enable-build-mode=production \
108		--enable-fortran \
109		--enable-fortran2003 \
110		--enable-cxx \
111		--disable-sharedlib-rpath \
112		--disable-threadsafe
113	make $jobArgs
114}
115
116INSTALL()
117{
118	make install $jobArgs
119
120	rm $libDir/lib*.la || true
121
122	prepareInstalledDevelLibs \
123		libhdf5 \
124		libhdf5_cpp \
125		libhdf5_fortran \
126		libhdf5_hl \
127		libhdf5_hl_cpp \
128		libhdf5hl_fortran \
129		libhdf5_hl_fortran
130
131	fixPkgconfig
132
133	packageEntries devel \
134		$developDir
135}
136
137TEST()
138{
139	make check
140}
141