hdrview-git

MEDIUM
maintainer dreieck 0 votes scanned 2026-09-27 13:18:29.354985
View on AUR
Why flagged

This package was orphaned and re-adopted within the last 30 days — a window where ownership transfers can introduce malicious changes.

Triggered rules

Medium Recently orphaned & re-adopted orphaned_readopted

This package was orphaned and re-adopted within the last 30 days — a window where ownership transfers can introduce malicious changes.

PKGBUILD

1# Maintainer: dreieck (https://aur.archlinux.org/account/dreieck)
2# Maintainer: Afnan Enayet <afnan at afnan.io>
3# Contributor: Eric Engestrom (https://aur.archlinux.org/account/1ace)
4
5_pkgname=hdrview
6pkgname="${_pkgname}-git"
7epoch=0
8pkgver=2.6.0+91.r825.20251210.f9f6e34
9pkgrel=1
10pkgdesc='High dynamic range (HDR) image viewer and comparison tool'
11url='https://github.com/wkjarosz/hdrview'
12# url='https://wkjarosz.github.io/hdrview/' # This actually is an online version of the software, not a website about the software.
13arch=(
14 'x86_64'
15 'i686'
16 'aarch64'
17 'armv6h'
18 'armv7h'
19)
20license=('BSD-3-Clause')
21makedepends=(
22 'brotli'
23 'cmake'
24 'dav1d'
25 'ffmpeg'
26 #'fmt' # When not using system packages, this gets downloaded to the build directory.
27 'freetype2>=2.12'
28 'gcc-libs'
29 'git'
30 'glibc'
31 'glfw'
32 'gperftools'
33 'gtest'
34 'highway'
35 #'imath' # When not using system packages, this gets downloaded to the build directory.
36 # 'imgui-git' # Fails to build when 'imgui' is installed. Need to download it locally to build directory.
37 'kvazaar'
38 'lcms2'
39 'libde265'
40 #'libdeflate' # When not using system packages, this gets downloaded to the build directory.
41 'libjpeg'
42 'libwebp'
43 'libx11'
44 'libxext'
45 #'libjxl' # When not using system packages, this gets downloaded to the build directory.
46 'nasm'
47 'ninja'
48 'nlohmann-json'
49 #'openexr' # When not using system packages, this gets downloaded to the build directory.
50 'openjpeg2'
51 #'plutosvg' # When not using system packages, this gets downloaded to the build directory.
52 #'plutovg' # When not using system packages, this gets downloaded to the build directory.
53 'rav1e'
54 'sdl2'
55 #'spdlog' # When not using system packages, this gets downloaded to the build directory.
56 'svt-av1'
57 'uvg266'
58 'vvenc' # Seems to be fixed in `aur/vvenc` (2025-08-25): As of 2025-08-24, vvenc-git is needed because vvenc does not install the file `/usr/lib/cmake/vvenc/vvencTargets-shared.cmake`. See https://aur.archlinux.org/packages/vvenc#comment-1037407.
59 'vvdec'
60 'vulkan-icd-loader'
61 'x265'
62)
63depends=(
64 'gcc-libs'
65 'glibc'
66 'glfw'
67 'highway'
68 'libbrotlienc.so' # Provided by 'brotli'
69 'libbrotlidec.so' # Provided by 'brotli'
70 'libbrotlicommon.so' # Provided by 'brotli'
71 'libopenh264.so'
72 'libde265'
73 'libfreetype.so'
74 'libjpeg.so'
75 'liblcms2.so'
76 'libx11'
77 'libxext'
78 'sdl2'
79 'vulkan-icd-loader'
80)
81source=(
82 "${_pkgname}::git+https://github.com/wkjarosz/hdrview.git"
83)
84sha256sums=(
85 'SKIP'
86)
87provides=(
88 "${_pkgname}=${pkgver}"
89)
90conflicts=(
91 "${_pkgname}"
92)
93if which ccache > /dev/null 2>&1; then
94 options+=('ccache')
95fi
96
97_CFLAGSADDITIONS="-w"
98
99_cpuflag2cmake() {
100 # returns "ON", if the host CPU supports the CPU flag submitted via argument $1. Returns "OFF" otherwise. ("returning" means printing to stdout.)
101 if grep -E '^flags[[:space:]]*:' /proc/cpuinfo | head -n1 | grep -qFwi "$1"; then
102 printf '%s' "ON"
103 else
104 printf '%s' "OFF"
105 fi
106}
107
108prepare() {
109 CFLAGS+=" ${_CFLAGSADDITIONS}"
110 CXXFLAGS+=" ${_CFLAGSADDITIONS}"
111 export CFLAGS
112 export CXXFLAGS
113
114 if pacman -Qqi imgui > /dev/null 2>&1; then
115 error "Package 'imgui' is installed. Build fails in that case. Please build in an environment where 'imgui' is not installed."
116 return 99
117 fi
118
119 # Run cmake in `prepare()` since it will download stuff.
120 _cmake_config=(
121 -DBUILD_WEBSITE=OFF
122 -DCMAKE_INSTALL_PREFIX=/usr
123 -DEXEC_INSTALL_PREFIX=/usr/bin
124 -DLIB_INSTALL_DIR=/usr/lib
125 # -DLIB_INSTALL_DIR=/opt/hdrview/lib
126 -DCMAKE_BUILD_TYPE=Release
127 -DCPM_DONT_UPDATE_MODULE_PATH=OFF
128 -DCPM_DOWNLOAD_ALL=OFF
129 -DCPM_LOCAL_PACKAGES_ONLY=OFF
130 -DCPM_USE_LOCAL_PACKAGES=OFF
131
132 # -DBoost_NO_BOOST_CMAKE=OFF
133 # -Dcli11_DIR=/usr/share/cmake/CLI11
134 # -DEGL_INCLUDE_DIRS=/usr/include/EGL
135 # -DEGL_LIBRARIES=/usr/lib
136
137 -DENABLE_CLANG_TIDY=OFF
138 -DENABLE_COVERAGE=OFF
139 -DENABLE_CPPCHECK=OFF
140 -DENABLE_EXPERIMENTAL_FEATURES=ON
141 -DENABLE_EXPERIMENTAL_MINI_FORMAT=OFF
142 -DENABLE_PARALLEL_TILE_DECODING=ON
143 -DENABLE_PLUGIN_LOADING=ON
144
145 -DFETCHCONTENT_FULLY_DISCONNECTED=OFF
146 -DFETCHCONTENT_UPDATES_DISCONNECTED=OFF
147 -DFETCHCONTENT_QUIET=OFF
148
149 -DFMT_CUDA_TEST=OFF
150 -DFMT_DOC=OFF
151 -DFMT_FUZZ=OFF
152 -DFMT_INSTALL=OFF
153 # -DFMT_MODULE=OFF
154 # -DFMT_OS=ON
155 -DFMT_PEDANTIC=OFF
156 -DFMT_TEST=OFF
157 -DFMT_WERROR=OFF
158
159 # -DHDRVIEW_BUILD_UHDR_DEPS=OFF
160 -DHDRVIEW_ENABLE_HEIF=ON
161 -DHDRVIEW_ENABLE_JPEGXL=ON
162 -DHDRVIEW_ENABLE_LIBJPEG=ON
163 -DHDRVIEW_ENABLE_LIBPNG=ON
164 -DHDRVIEW_ENABLE_UHDR=ON
165 # -DHDRVIEW_ICONSET=HDRVIEW_ICONSET_MS
166 # -DHDRVIEW_IGNORE_BREW_PORTS=OFF
167 -DHDRVIEW_PORTABLE_INSTALL=OFF
168
169 -DHELLOIMGUI_ADD_APP_WITH_INSTALL=OFF
170 -DHELLOIMGUI_BUILD_DEMOS=OFF
171 -DHELLOIMGUI_BUILD_DOCS=OFF
172 -DHELLOIMGUI_BUILD_GLFW_OPENGL3_BARE_EXAMPLE=OFF
173 -DHELLOIMGUI_BUILD_IMGUI=ON
174 -DHELLOIMGUI_BUILD_TESTS=OFF
175 -DHELLOIMGUI_DOWNLOAD_FREETYPE_IF_NEEDED=OFF
176 -DHELLOIMGUI_DOWNLOAD_GLFW_IF_NEEDED=OFF
177 -DHELLOIMGUI_DOWNLOAD_SDL_IF_NEEDED=OFF
178 -DHELLOIMGUI_FETCH_IMGUI_TEST_ENGINE=OFF
179 -DHELLOIMGUI_FREETYPE_STATIC=OFF
180 -DHELLOIMGUI_HAS_OPENGL=ON
181 -DHELLOIMGUI_HAS_OPENGL3=ON
182 -DHELLOIMGUI_HAS_VULKAN=ON
183 -DHELLOIMGUI_HEADLESS=OFF
184 -DHELLOIMGUI_INSTALL=OFF
185 -DHELLOIMGUI_STB_IMAGE_IMPLEMENTATION=ON
186 -DHELLOIMGUI_STB_IMAGE_WRITE_IMPLEMENTATION=ON
187 -DHELLOIMGUI_USE_EXTERNAL_JSON=OFF
188 -DHELLOIMGUI_USE_FREETYPE=ON
189 -DHELLOIMGUI_USE_FREETYPE_PLUTOSVG=ON
190 -DHELLOIMGUI_USE_IMGUI_CMAKE_PACKAGE=OFF
191 -DHELLOIMGUI_USE_GLFW3=ON
192 -DHELLOIMGUI_USE_SDL2=ON
193 -DHELLOIMGUI_WITH_IMGUIWS=OFF
194 -DHELLOIMGUI_WITH_NETIMGUI=OFF
195 -DHELLOIMGUI_WITH_TEST_ENGINE=OFF
196
197 -DHWY_CMAKE_HEADER_ONLY=OFF
198 -DHWY_CMAKE_RVV=`_cpuflag2cmake rvv`
199 -DHWY_CMAKE_SSE2=`_cpuflag2cmake sse2`
200 -DHWY_ENABLE_INSTALL=OFF
201 -DHWY_WARNINGS_ARE_ERRORS=OFF
202 -DIMATH_ENABLE_LARGE_STACK=ON
203 -DIMATH_HALF_USE_LOOKUP_TABLE=ON
204 -DIMATH_INSTALL_PKG_CONFIG=OFF
205 -DIMATH_INSTALL_SYM_LINK=OFF
206 -DIMATH_USE_CLANG_TIDY=OFF
207 -DJPEG_INCLUDE_DIR=/usr/include
208 -DJPEG_LIBRARY_DEBUG=/usr/lib/libjpeg.so
209 -DJPEG_LIBRARY_RELEASE=/usr/lib/libjpeg.so
210
211 -DJPEGXL_BUNDLE_LIBPNG=OFF
212 -DJPEGXL_ENABLE_AVX512=`_cpuflag2cmake avx512f`
213 -DJPEGXL_ENABLE_AVX512_SPR=`_cpuflag2cmake avx512_bf16` # Assuming that `avx_bf16` means "AVX-512FP16".
214 -DJPEGXL_ENABLE_AVX512_ZEN4=OFF # Don't know how to test for it.
215 -DJPEGXL_ENABLE_BENCHMARK=OFF
216 -DJPEGXL_ENABLE_BOXES=ON
217 -DJPEGXL_ENABLE_COVERAGE=OFF
218 -DJPEGXL_ENABLE_DEVTOOLS=OFF
219 -DJPEGXL_ENABLE_DOXYGEN=OFF
220 -DJPEGXL_ENABLE_EXAMPLES=OFF
221 -DJPEGXL_ENABLE_FUZZERS=OFF
222 -DJPEGXL_ENABLE_JNI=OFF
223 -DJPEGXL_ENABLE_JPEGLI=OFF
224 -DJPEGXL_ENABLE_JPEGLI_LIBJPEG=OFF
225 -DJPEGXL_ENABLE_MANPAGES=OFF
226 -DJPEGXL_ENABLE_OPENEXR=ON
227 -DJPEGXL_ENABLE_PLUGINS=OFF
228 -DJPEGXL_ENABLE_SIZELESS_VECTORS=ON
229 -DJPEGXL_ENABLE_SJPEG=ON
230 -DJPEGXL_ENABLE_SKCMS=OFF
231 -DJPEGXL_ENABLE_TCMALLOC=ON
232 -DJPEGXL_ENABLE_TOOLS=OFF
233 -DJPEGXL_ENABLE_TRANSCODE_JPEG=ON
234 -DJPEGXL_ENABLE_VIEWERS=OFF
235 -DJPEGXL_ENABLE_WASM_THREADS=ON
236 -DJPEGXL_FORCE_NEON=OFF
237 -DJPEGXL_FORCE_SYSTEM_BROTLI=ON
238 -DJPEGXL_FORCE_SYSTEM_GTEST=ON
239 -DJPEGXL_FORCE_SYSTEM_HWY=ON
240 -DJPEGXL_FORCE_SYSTEM_LCMS2=ON
241 -DJPEGXL_INSTALL_JPEGLI_LIBJPEG=OFF
242 -DJPEGXL_TEST_TOOLS=OFF
243 -DJPEGXL_WARNINGS_AS_ERRORS=OFF
244
245 -DLIBDEFLATE_BUILD_GZIP=OFF
246 -DLIBDEFLATE_BUILD_TESTS=OFF
247 -DLIBDEFLATE_COMPRESSION_SUPPORT=ON
248 -DLIBDEFLATE_DECOMPRESSION_SUPPORT=ON
249 -DLIBDEFLATE_FREESTANDING=OFF
250 -DLIBDEFLATE_GZIP_SUPPORT=ON
251 -DLIBDEFLATE_USE_SHARED_LIB=ON
252 -DLIBDEFLATE_ZLIB_SUPPORT=ON
253
254 -DMATH_LIBRARY=/usr/lib/libm.so
255 -DM_LIBRARY=/usr/lib/libm.so
256
257 -DOPENEXR_BUILD_PYTHON=OFF
258 -DOPENEXR_ENABLE_LARGE_STACK=ON
259 -DOPENEXR_ENABLE_THREADING=ON
260 -DOPENEXR_FORCE_INTERNAL_IMATH=OFF
261 -DOPENEXR_INSTALL_DOCS=OFF
262 -DOPENEXR_INSTALL_PKG_CONFIG=OFF
263 -DOPENEXR_INSTALL_TOOLS=OFF
264 -DOPENEXR_TEST_LIBRARIES=OFF
265 -DOPENEXR_TEST_PYTHON=OFF
266 -DOPENEXR_TEST_TOOLS=OFF
267 -DOPENEXR_USE_CLANG_TIDY=OFF
268
269 -DOpenGL_GL_PREFERENCE=GLVND
270
271 -DPLUTOVG_BUILD_EXAMPLES=OFF
272
273 -DPNG_TOOLS=OFF
274 -DPNG_HARDWARE_OPTIMIZATIONS=ON
275
276 -DPYTHON=OFF
277
278 -DSPDLOG_BUILD_ALL=OFF
279 -DSPDLOG_BUILD_BENCH=OFF
280 -DSPDLOG_BUILD_EXAMPLE=OFF
281 -DSPDLOG_BUILD_EXAMPLE_HO=OFF
282 -DSPDLOG_BUILD_PIC=ON
283 -DSPDLOG_BUILD_SHARED=OFF
284 -DSPDLOG_BUILD_TESTS=OFF
285 -DSPDLOG_BUILD_TESTS_HO=OFF
286 -DSPDLOG_BUILD_WARNINGS=OFF
287 -DSPDLOG_CLOCK_COARSE=OFF
288 -DSPDLOG_DISABLE_DEFAULT_LOGGER=OFF
289 -DSPDLOG_ENABLE_PCH=OFF
290 -DSPDLOG_FMT_EXTERNAL_HO=OFF
291 -DSPDLOG_NO_ATOMIC_LEVELS=OFF
292 -DSPDLOG_NO_EXCEPTIONS=OFF
293 -DSPDLOG_NO_THREAD_ID=OFF
294 -DSPDLOG_NO_TLS=OFF
295 -DSPDLOG_PREVENT_CHILD_FD=OFF
296 -DSPDLOG_SANITIZE_ADDRESS=OFF
297 -DSPDLOG_SYSTEM_INCLUDES=OFF
298 -DSPDLOG_TIDY=OFF
299 -DSPDLOG_USE_STD_FORMAT=OFF
300 -DSPDLOG_WCHAR_FILENAMES=OFF
301 -DSPDLOG_WCHAR_SUPPORT=OFF
302
303 -DUHDR_BUILD_DEPS=OFF
304 -DUHDR_BUILD_JAVA=OFF
305 -DUHDR_ENABLE_GLES=OFF
306 -DUHDR_ENABLE_INTRINSICS=ON
307 -DUHDR_ENABLE_LOGS=OFF
308 -DUHDR_ENABLE_WERROR=OFF
309 -DUHDR_WRITE_ISO=ON
310 -DUHDR_WRITE_XMP=ON
311
312 -DWITH_AOM_DECODER=ON
313 -DWITH_AOM_DECODER_PLUGIN=ON
314 -DWITH_AOM_ENCODER=ON
315 -DWITH_AOM_ENCODER_PLUGIN=ON
316 -DWITH_DAV1D=ON
317 -DWITH_DAV1D_PLUGIN=ON
318 -DWITH_FFMPEG_DECODER=ON
319 -DWITH_FFMPEG_DECODER_PLUGIN=ON
320 -DWITH_HEADER_COMPRESSION=ON
321 -DWITH_JPEG_DECODER=ON
322 -DWITH_JPEG_DECODER_PLUGIN=ON
323 -DWITH_JPEG_ENCODER=ON
324 -DWITH_JPEG_ENCODER_PLUGIN=ON
325 -DWITH_KVAZAAR=ON
326 -DWITH_KVAZAAR_PLUGIN=ON
327 -DWITH_LIBSHARPYUV=ON
328 -DWITH_OPENJPH_ENCODER=OFF
329 -DWITH_OPENJPH_ENCODER_PLUGIN=OFF
330 -DWITH_OpenJPEG_DECODER=ON
331 -DWITH_OpenJPEG_DECODER_PLUGIN=ON
332 -DWITH_OpenJPEG_ENCODER=ON
333 -DWITH_OpenJPEG_ENCODER_PLUGIN=ON
334 -DWITH_RAV1E=ON
335 -DWITH_RAV1E_PLUGIN=ON
336 -DWITH_REDUCED_VISIBILITY=OFF
337 -DWITH_SvtEnc=ON
338 -DWITH_SvtEnc_PLUGIN=ON
339 -DWITH_UNCOMPRESSED_CODEC=ON
340 -DWITH_UVG266=ON
341 -DWITH_UVG266_PLUGIN=ON
342 -DWITH_VVDEC=ON
343 -DWITH_VVDEC_PLUGIN=ON
344 -DWITH_VVENC=ON
345 -DWITH_VVENC_PLUGIN=ON
346 -DWITH_X265=ON
347 -DWITH_X265_PLUGIN=ON
348
349 -DZLIB_VERBOSE=OFF
350
351 -Wno-dev
352 )
353
354 cmake -S "${_pkgname}" -B build \
355 -G Ninja \
356 "${_cmake_config[@]}"
357
358 cd "${_pkgname}"
359 git log > "git.log"
360}
361
362pkgver() {
363 cd "$srcdir/${_pkgname}"
364
365 _ver="$(git describe --tags | sed -E 's|-g[0-9a-fA-F]*$||' | sed -E 's|^[vV]||' | tr '-' '+')"
366 _rev="$(git rev-list --count HEAD)"
367 _date="$(git log -1 --date=format:"%Y%m%d" --format="%ad")"
368 _hash="$(git rev-parse --short HEAD)"
369
370 if [ -z "${_ver}" ]; then
371 error "Version could not be determined."
372 return 1
373 else
374 printf '%s' "${_ver}.r${_rev}.${_date}.${_hash}"
375 fi
376}
377
378build() {
379 CFLAGS+=" ${_CFLAGSADDITIONS}"
380 CXXFLAGS+=" ${_CFLAGSADDITIONS}"
381 export CFLAGS
382 export CXXFLAGS
383
384 cmake --build build
385}
386
387package() {
388 CFLAGS+=" ${_CFLAGSADDITIONS}"
389 CXXFLAGS+=" ${_CFLAGSADDITIONS}"
390 export CFLAGS
391 export CXXFLAGS
392
393 ## Install main project
394 DESTDIR="${pkgdir}" cmake --install build
395
396 ## Add a lowercase executable symlink
397 ln -svr "${pkgdir}/usr/bin/HDRView" "${pkgdir}/usr/bin/hdrview"
398
399 ## Clean up stuff we do not want to install locally
400 #rm -Rf "${pkgdir}/opt/hdrview/lib"
401# rm -Rf "${pkgdir}/usr/include/glad"
402# rm -Rf "${pkgdir}/usr/include/hello_imgui"
403# rm -Rf "${pkgdir}/usr/include/jxl"
404# rm -Rf "${pkgdir}/usr/include/KHR"
405# rm -Rf "${pkgdir}/usr/include/libexif"
406# rm -Rf "${pkgdir}/usr/include/libheif"
407# rm -Rf "${pkgdir}/usr/include/plutovg"
408# rm -f "${pkgdir}/usr/include"/imconfig.h
409# rm -f "${pkgdir}/usr/include"/imgui*.h
410# rm -f "${pkgdir}/usr/include"/stb_image*.h
411# rm -f "${pkgdir}/usr/include"/zconf.h
412# rm -f "${pkgdir}/usr/include"/zlib.h
413# rm -f "${pkgdir}/usr/lib"/*.a
414# rm -Rf "${pkgdir}/usr/lib/cmake/hello_imgui"
415# rm -Rf "${pkgdir}/usr/lib/cmake/libheif"
416# rm -Rf "${pkgdir}/usr/lib/cmake/plutovg"
417# rm -Rf "${pkgdir}/usr/lib/cmake/zlib"
418# rm -Rf "${pkgdir}/usr/lib/libheif"
419# rm -f "${pkgdir}/usr/lib/pkgconfig"/libexif.pc
420# rm -f "${pkgdir}/usr/lib/pkgconfig"/libheif.pc
421# rm -f "${pkgdir}/usr/lib/pkgconfig"/libjxl*.pc
422# rm -f "${pkgdir}/usr/lib/pkgconfig"/zlib.pc
423
424 rm -Rf "${pkgdir}/usr"/{include,lib}
425
426 rm -Rf "${pkgdir}/usr/assets"
427 rm -Rf "${pkgdir}/usr/share/hello-imgui"
428 rm -f "${pkgdir}/usr"/hello_* rm -f "${pkgdir}/usr"/Hello_*
429
430
431 ## Install documentation and license
432 for _docfile in README.md TODO.md git.log; do
433 install -D -m644 -v "$srcdir/${_pkgname}/${_docfile}" "${pkgdir}/usr/share/doc/${_pkgname}/${_docfile}"
434 done
435 install -D -m644 -v "$srcdir/${_pkgname}/LICENSE.txt" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.txt"
436}
437

Scan history

Scanned at (UTC)SeverityRules
2026-09-27 13:18:29 Medium 1
2026-06-18 16:11:54 Clean 0

Report a package

Reports go to the AURWatch maintainer (one person) and are read by hand. No login required.

0 / 4000
Your suggestion