#4746: buildbot performs unnecessary dependency checks
--------------------+-------------------------------------
Reporter: Forgon | Owner:
Type: bug | Status: new
Priority: normal | Milestone: unspecified
Component: other | Version: unspecified
Keywords: | Blocked By:
Blocking: | Operating System: All/Non-Specific
--------------------+-------------------------------------
Before executing `make dist`, buildbot runs `./configure --disable-debug`.
This script includes several dependency checks using the macro
'PKG_CHECK_MODULES()' provided by
[https://www.freedesktop.org/wiki/Software/pkg-config pkg-config], each of
which must succeed in order to continue compilation (view
[http://buildbot.wz2100.net/builders/master-
nightly/builds/1918/steps/configure/logs/stdio this log] for an example of
failure).
These checks are unnecessary, because `make dist` merely creates an
archive containing source code files and newly generated documentation
(for which dependencies are checked with the less strict macro
'AC_CHECK_CONF()' of [https://www.gnu.org/software/autoconf/autoconf.html
autoconf]).
Thus, two dependencies are currently not checked, which can cause
compilation failures (see #4637):
* SDL >= 2.0.5
* Qt Script >= 5.4
To fix this problem, Per
[http://developer.wz2100.net/ticket/4637#comment:21 suggested skipping
dependency checks for MXE builds]. I offer a better solution:
The [https://linux.die.net/man/1/pkg-config man page of pkg-config]
states:
> The macro PKG_CHECK_MODULES can be used in configure.ac to check whether
modules exist. A typical usage would be:
>
> PKG_CHECK_MODULES([MYSTUFF], [gtk+-2.0 >= 1.3.5 libxml = 1.8.4])
>
> This would result in MYSTUFF_LIBS and MYSTUFF_CFLAGS substitution
variables, set to the libs and cflags for the given module list.
Before executing `make dist`, buildbot should thus run the `./configure`
script as below:
{{{
./configure --disable-debug \
QT5_CFLAGS=' ' QT5_LIBS=' ' \
SDL_CFLAGS=' ' SDL_LIBS=' ' \
PNG_CFLAGS=' ' PNG_LIBS=' ' \
THEORA_CFLAGS=' ' THEORA_LIBS=' ' \
OPENAL_CFLAGS=' ' OPENAL_LIBS=' ' \
VORBIS_CFLAGS=' ' VORBIS_LIBS=' ' \
VORBISFILE_CFLAGS=' ' VORBISFILE_LIBS=' ' \
GLEW_CFLAGS=' ' GLEW_LIBS=' ' \
FRIBIDI_CFLAGS=' ' FRIBIDI_LIBS=' ' \
FREETYPE_CFLAGS=' ' FREETYPE_LIBS=' ' \
HARFBUZZ_CFLAGS=' ' HARFBUZZ_LIBS=' ' \
FONTCONFIG_CFLAGS=' ' FONTCONFIG_LIBS=' '
}}}
--
Ticket URL: <http://developer.wz2100.net/ticket/4746>
Warzone 2100 Trac <http://developer.wz2100.net/>
The Warzone 2100 Project
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Warzone2100-project mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/warzone2100-project