Commit Graph

254 Commits

Author SHA1 Message Date
Christophe de Dinechin e3ad6a1ebc Fix link order for Cygwin and MinGW
Similar to what was done in b2e1f20c8b
for DLLs.
2018-11-16 19:00:22 +01:00
Christophe de Dinechin db37db79cc Fix regression in 'make test'
The regression was introduced in 96cad841f8
on Cygwin and macOS. The MIQ_DLLNAME variable used $(@F) instead of $@.

The Jenkins setup failed to see the problem because it rebuilt
on top of existing directories that were pruned with existing libraries.

Added a second build after `git clean -dfx` in Jenkins to catch that.
2018-11-09 19:38:44 +01:00
Christophe de Dinechin cfff8871b6 Remove duplication of TESTS and BENCHMARKS in example
Probably the result of some rebase :-(
2018-11-09 19:25:29 +01:00
Christophe de Dinechin ce6b35154a Fix NEWS generation in `make dist`
Avoid overwriting existing NEWS entries for the current tag
2018-11-09 18:48:23 +01:00
Christophe de Dinechin 96cad841f8 Reorder numbering for shared libraries with extensions
On systems that rely on extensions to identify a shared library
(macOS and cygwin), then move from "libfoo.dll.1" to "libfoo.1.dll"
2018-11-09 15:45:48 +01:00
Christophe de Dinechin 6987258cab Fix cygwin DLL naming
Cygwin, like macOS, uses an extension to "recognize" something as being
a shared library. In that case, the extension is .dll.

Thinking about it, it's the naming in Linux that is illogical, in the
sense that the extension is before the count
2018-11-09 11:53:44 +01:00
Christophe de Dinechin 3574cb6d2f Add HAVE_DRAND48 check for drand48() function 2018-11-04 17:59:18 +01:00
Christophe de Dinechin b2e1f20c8b Adjustments based on recent observations made on MinGW
MinGW now seems to be able to cope with the -rpath option in ld.
However, it's necessary to place LDFLAGS after objects, as observed
with BUILDENV-specific LDFLAGS, i.e. LDFLAGS_BUILDENV_mingw=-lregex
2018-11-04 17:45:32 +01:00
Christophe de Dinechin 86fd196813 Repair the test target
Add .build target to MIQ_BUILD_TEST explicitly, to avoid one extra
step that introduces a circular dependency which breaks the test build.
2018-10-27 13:12:40 +02:00
Christophe de Dinechin e2df1851de Add missing trailing / to what is generated by configure script 2018-09-20 17:29:56 +02:00
Christophe de Dinechin 8d288a681b Avoid errors to show up when git fails (tarball case) 2018-09-20 17:18:29 +02:00
Christophe de Dinechin 7bbeb890ad Reword NEWS 2018-09-20 17:17:49 +02:00
Christophe de Dinechin 1684f58f92 Add basic 'configure' script to work with rpmbuild 2018-09-20 17:05:45 +02:00
Christophe de Dinechin 2455b1f1f7 Repair 'ar' command line case 2018-09-20 16:07:06 +02:00
Christophe de Dinechin 741ce2047c Simple implementation of the 'dist' rule
This is for better compatibility with automake-generated makefiles.
It generates a distribution tar file.
2018-09-20 15:49:53 +02:00
Christophe de Dinechin 4b5a42369d Add installcheck target for compatibility with automake-generated makefiles
This target at the moment does the same thing as check. There is no
real provision at the moment for checking the installation.
2018-09-20 15:49:06 +02:00
Christophe de Dinechin f6b87eda37 Implement the uninstall target
This is to improve compatibility with automake
2018-09-20 15:49:06 +02:00
Christophe de Dinechin 49621a97f6 Add a check for the getpeereid() function in macOS 2018-06-26 16:33:41 +02:00
Christophe de Dinechin f789c66fb7 Make sure that pkg-config output is available when testing libraries 2018-06-26 14:47:02 +02:00
Christophe de Dinechin 8533fc92ec Add x11.pc pseudo-package for macOS
The x11.pc file is missing on macOS (at least on Brew), and it was
getting annoying to add ad-hoc rules in every makefile that required
it. The hack here is to add one directly from make-it-quick.

Putting the make-it-quick directory last should ensure this solution
still works correclty if you have an actual x11.pc on your macOS system.
2018-06-19 19:09:01 +02:00
Christophe de Dinechin 425b400d69 Do not emit -L option in package if no library
A package like spice-protocol does not generate any library,
only headers, so emitting -L option generates warnings in user packages.
2018-06-19 18:38:00 +02:00
Christophe de Dinechin b42abcf3cc Add ability to put different package headers than install path
The SPICE protocol package installs headers in /usr/include/spice-1/spice,
but then returns -I/usr/include/spice-1, the code using #include <spice/blah.h>
So adding one level of indirection to deal with that case.
2018-06-19 18:19:44 +02:00
Christophe de Dinechin a71249c34d Avoid passing full names when linking LIBRARIES
While it's OK to link a library by giving its .a name, it doesn't
work well when linking with a .so, since it encodes the full path
of the .so name in the result
2018-06-15 09:38:35 +02:00
Christophe de Dinechin 10c7dcd30d Add colorized output of configuration result 2018-06-14 17:39:09 +02:00
Christophe de Dinechin bd7e23a307 Avoid possibly undefined NULL 2018-06-14 17:39:09 +02:00
Christophe de Dinechin d6f3f3cd46 Add missing packages to configuration flags
This was apparently lost in one of the recent rebases. Ouch.
2018-06-14 17:39:09 +02:00
Christophe de Dinechin 0e8c83820b Add support for shared-library versioning 2018-06-14 17:39:09 +02:00
Christophe de Dinechin aa87d0f94b Add documentation for pkg-config file generation 2018-05-26 11:15:13 +02:00
Christophe de Dinechin 46ff3609e1 Make it possible to run the tests from local MIQ 2018-05-17 15:50:41 +02:00
Christophe de Dinechin b49f74f58b Fix the execution of tests 2018-05-17 14:30:36 +02:00
Christophe de Dinechin 261186169a Make sure we create the output directory when building, fixes #1
Reported-by: Jochen Becher <jochen_becher@gmx.de>
2018-05-17 14:30:36 +02:00
Christophe de Dinechin 7a7040ceff Do not generate a variant when building a library 2018-05-15 16:33:11 +02:00
Christophe de Dinechin 3edf56abd4 Write 'Error' in a way that our 'Error:' grep does not find it
Otherwise, the error reporting at end of build erroneously reports a number
of errors by scanning the build log.
2018-05-14 16:21:23 +02:00
Christophe de Dinechin 0dd26e708d Do not disable printing directories by default 2018-05-14 16:14:19 +02:00
Christophe de Dinechin 044d38528c Ensure that we print where we build before configuring 2018-05-09 11:36:20 +02:00
Christophe de Dinechin fd9c4a2afb Fix order-only so that it does not introduce hard dependencies
With pre-3.80 make, the rules would introduce hard dependencies
instead of order-only dependencies, leading to a complete rebuild
of everything with every 'make'
2018-05-09 11:36:06 +02:00
Christophe de Dinechin 77b5010339 Pass MIQ variable to children make 2018-05-09 11:35:38 +02:00
Christophe de Dinechin bb93d3fb7a Fix the passing of the -rpath option to the linker 2018-04-13 16:20:54 +02:00
Christophe de Dinechin 5bcfdb969d Verify the installation step in the gitlab CI 2018-04-13 15:24:51 +02:00
Christophe de Dinechin c691f04167 Add check for the 'sigaction' function
This check is easier to get in autoconf than a test for struct sigaction.
It's also more complete, since the recorder actually needs the function.
2018-04-13 15:19:18 +02:00
Christophe de Dinechin 5cda3e208b Lookup the configuration files in the right spot if MIQ not installed 2018-04-13 15:17:08 +02:00
Christophe de Dinechin 65c65d32dd Add HEADERS variable 2018-04-12 13:17:21 +02:00
Christophe de Dinechin 91c679f114 Add documentation on how to use Make-It-Quick as submodule 2018-04-12 12:39:36 +02:00
Christophe de Dinechin fc6eb82353 Remove extraneous trailing / in include path 2018-04-12 12:39:36 +02:00
Christophe de Dinechin d6cd86f615 Add more config checks (lifted from SPICE/gtk) 2018-04-12 12:39:36 +02:00
Christophe de Dinechin 0ae490d5fd Add results from pkg-config to config.h 2018-04-12 12:39:36 +02:00
Christophe de Dinechin 6dd6537407 Add a check for alloca() (moved from SPICE/common) 2018-04-10 19:11:34 +02:00
Christophe de Dinechin 87ba839cdd Simplify rules for the dependencies 2018-04-10 18:56:25 +02:00
Christophe de Dinechin 0ab021d64b A better way to run tests 2018-04-10 18:42:35 +02:00
Christophe de Dinechin e7c15a35ae Add better libtool support in config.gnu.mk
When LIBTOOL is set, then we use libtool all the way.
Otherwise, we manually perform the compile/link stages.
2018-04-10 18:40:00 +02:00