On Sunday 08 of March 2020 11:13:16 deloptes wrote:
Michele Calgaro via trinity-devel wrote:
On 2020/03/07 04:01 PM, deloptes wrote:
Thank you Michele, but doesn't it look like
manual process? Usually
the configure script may or may not print the results of the
configuration.
Can this be automated?
Hi Emanoil,
not sure to understand what you are looking for then... Perhaps you
can explain better Cheers
Michele
I think this was correct, what you understood.
For example tdelibs during configuration says
-- Found PCSCLITE: /usr/lib/x86_64-linux-gnu/libpcsclite.so
-- Checking for one of the modules 'libcryptsetup'
-- Performing Test HAVE_NEW_CRYPTSETUP
-- Performing Test HAVE_NEW_CRYPTSETUP - Success
-- Performing Test HAVE_CRYPTSETUP_GET_TYPE
-- Performing Test HAVE_CRYPTSETUP_GET_TYPE - Success
-- Found JPEG: /usr/lib/x86_64-linux-gnu/libjpeg.so (found version "62")
-- Found PNG: /usr/lib/x86_64-linux-gnu/libpng.so (found version
"1.6.36")
-- Found TIFF: /usr/lib/x86_64-linux-gnu/libtiff.so (found
version "4.1.0")
-- Found Jasper: /usr/lib/x86_64-linux-gnu/libjasper.so (found
version "1.900.1")
in many cases there are conditions in the make system (automake or
cmake) that will enable or disable an optional feature if the library is
found or not found.
How one could know what feature was compiled at the end?
Here is the fundamental difference between automake × cmake builds.
It is common for automake that there is a choice of "yes / no / auto" - and
these are exactly where it is uncertain what features are actually
included.
For cmake it is usual that there is a choice of "yes / no" - and if option
is set to yes, then building must fail if the conditions are not met - ie,
not found libraries, includes, etc. Therefore, cmake building should give
certainty what the features are actually included.
Dealing with automation verification for automake building is a waste of
time. That's one of the reasons we want to convert everything to CMake.
Verification in CMake should be an essential part that we try to follow. As
I mentioned above, there should apply that when conditions are not met for
the WITH_* and BUILD_* options, building should always fail in the
configuration phase.
Cheers
--
Slávek