Some platforms (eg. Emscripten) have their own version of the ar tool,
so it is important to pick one that matches the target architecture.
Without this macro we always use the default system-installed version
of ar.
<id> tag is changed to a Reverse-DNS form, and an accommodating
PACKAGE_RDNS is set in configure.ac to use it.
<name> and <summary> tags have been added, using existing autoconf
variable values.
The `appstream-util validate` command will complain about some
optionally-missing tags and a strict string length limit on some of
the <caption> tags. `validate-relax` passes, and by the letter of the
AppStream specification, we should be completely valid.
Introduce a new PROGRAM_SPREFIX variable in configure.ac, which is
basically identical to PROGRAM_PREFIX but without the trailing hyphen.
PROGRAM_PREFIX was also redefined so that it bases its name from
PACKAGE_SHORTNAME, reducing the number of hardcoded chocolates in the
source.
Copying DLLs raises the problem of finding where the DLLs are to copy.
With autotools, DLLs are usually installed to ${prefix}/bin alongside the
libraries installed to ${prefix}/lib. So we can use the -L arguments in
LDFLAGS passed to the linker to figure out a likely set of directories to
search in. Hook this into the build, too.
This fixes#764 - we now reliably build Windows .zip packages automatically
bundled with any DLLs which may be required.
This reverts commits 901ee2fe75 and
07afb7749f.
This change broke PNG screenshots on OS X and resulted in 32bit PNGs
on other platforms (large file sizes). The former might be a SDL_Image
bug, the latter definitely is.
Fixes#752
Using SDL_GL_GetProcAddress we can get a function pointer to the
GL routine we want at runtime, if it's available, and avoid a
static dependency on GL libraries.
Thanks to fraggle for the suggestion and Mike for fixing Linux
builds (alas PKG_CHECK_MODULES for GL broke OS X builds)
Performance with a software GL implementation is not great. Check
the GL_VERSION string and warn about possible performance problems
if we find "Mesa", suggesting hardware acceleration is not
available.
Additional LDFLAGS are needed for OS X when using SDL_opengl.h,
adjust configure.ac accordingly.
Fixes#741.
Remove any libpbg-specific code, let SDL_Image handle this for us.
For now, this uses a slow software-scaling routine for up-scaling the
original 320x200 RGBA buffer up to the desired 1600x1200 dimensions.
In the future, we might want to fall back to using the
hardware-accelerated texture-based approach of the main rendering
stack (though this may seem like an overkill here).
However, it might be easier to take screenshots in the actual screen
dimensions with this approach (though I somehow remember that we
decided on 1600x1200 being the ideal solution that we should stay
with?).
The fonts were previously in header files which were very difficult to
modify. Move these into PNG files which can be easily edited, and
convert them into header files automatically as part of the build
process, like we do with the application icons.
When using a Mac with a retina display, we want to use the large
textscreen font, albeit in a normal-sized window. The HIGHDPI flag is
the way to do this properly with SDL2; try to set it and if we get the
output screen size we're hoping for, switch to the large font.
As part of this, bump the SDL2 dependency to 2.0.1, since the
SDL_WINDOW_ALLOW_HIGHDPI flag was only added in this version.
All dependency libraries install pkg-config .pc files nowadays, which
makes the process of looking them up a lot simpler. Get rid of the SDL
workaround macro as it's not needed.
Options of the form --with-PACKAGE[=yes] (e.g. --with-libpng), when
passed to configure, were being treated as though --without-PACKAGE had
been given.
Although the intention is to have configure check and use PACKAGE by
default if it's available, thus requiring the user to pass an option
only if PACKAGE must NOT be used, there are times when the opposite
might be desired (i.e. the user wants to indicate PACKAGE MUST be used).
Moreover, allowing --with-PACKAGE and behaving as if --without-PACKAGE
had been specified is in itself quite confusing.
Fix that by testing the result of 'with_PACKAGE' in configure.ac and
acting accordingly instead of blindly assuming a 'no'.