[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Ilmbase and openexr header files
From: |
Andreas Enge |
Subject: |
Ilmbase and openexr header files |
Date: |
Sun, 6 Sep 2015 18:52:22 +0200 |
User-agent: |
Mutt/1.5.23 (2014-03-12) |
Hello,
the openexr package has ilmbase as a propagated input, since the openexr
header files include ilmbase header files. However, there is a problem with
subdirectories, since both packages put the include files into
.../include/OpenEXR.
Then, for instance,
/gnu/store/bnp4nsy7v4lzw562k4v7w34jdg8vkc3s-openexr-2.2.0/include/OpenEXR/ImfInt64.h
contains a line
#include "ImathInt64.h"
This is the file
/gnu/store/6ih7f5cq1amgh134f75xw2sxk39p9gi7-ilmbase-2.2.0/include/OpenEXR/ImathInt64.h
which of course is not found, since it resides in the subdirectory OpenEXR.
(Well, I wonder whether things work when everything is installed together in
/usr/include/OpenEXR, but anyway this is not our case.)
There was an error when adding openexr support to vigra, which I repaired
with a kludge, and it is happening again in the package hugin that I am
preparing. So I wonder what would be the proper fix.
I see the following options:
1) In vigra, I added ilmbase explicitly as an input and a configure-flag
(string-append "-DCMAKE_CXX_FLAGS=-I"
(assoc-ref %build-inputs "ilmbase")
"/include/OpenEXR"))))
which adds the correct include directory with an "-I" option during
compilation.
2) One might modify the environment variable CPATH in a separate phase
by adding the OpenEXR subdirectory of ilmbase.
3) One might also patch the openexr header files, replacing
#include "Imath...
by
#include "OpenEXR/Imath...
To me, 3) looks like the proper fix. What do you think?
Andreas
- Ilmbase and openexr header files,
Andreas Enge <=