Commit Graph

15 Commits

Author SHA1 Message Date
Christophe de Dinechin 085a0856ee Refactor installation
- Avoid installing files that are already installed
- Use the .ext conventions for the variables names
- Only create install targets for things to install
- Create a new `INSTALLABLE` variable

Signed-off-by: Christophe de Dinechin <christophe@dinechin.org>
2021-02-12 12:10:41 +01:00
Christophe de Dinechin ff92a7386f Replace OBJ_EXT with EXT.obj and similar for other extensions
This will allow to make the code dealing with extensions more generic in the
future.

Signed-off-by: Christophe de Dinechin <christophe@dinechin.org>
2020-09-01 22:04:53 +02:00
Christophe de Dinechin 5146122af7 Automatic copyright header adjustment 2019-03-22 16:43:14 +01:00
Christophe de Dinechin c8aa5562e5 Follow GNU guidelines regarding GPLv3
- Rename LICENSE to COPYING
- Add recommended header in each file
2019-03-18 11:10:18 +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 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 2bcd0c9bcf Makefile rules refactoring - MIQ namespace + solidity
A number of changes in this commit:

1. Variable namespace cleanup:
   Rename non-configurable variables as MIQ_XYZ.

2. Internal target namespace cleanup
   Rename intermediate targets to begin with a dot (.)
   For example .build, .prebuild, etc.
   This impacts makefiles that hook for example to prebuild
   (now they need to hook to the .prebuild target)

3. Target, variant and build-environment variables names
   For example, dependencies on $(TARGET) moved from DEFINES_xyz
   to DEFINES_TARGET_xyz instead of DEFINES_xyz, and same thing
   for includes, sources, etc.

4. Protection of special user-level top-level targets
   A target like log-% no longer interferes with a file name such
   as log-file.c

5. Better support for multiple products
   When building foo.exe and bar.lib, there can be different
   sources for each project, i.e. $(SOURCES_foo) and $(SOURCES_bar).
2018-04-10 18:37:27 +02:00
Christophe de Dinechin 198ad6420d Change project name to 'Make-it-Quick', and make it installable
This simplifies the management of projects using make-it-quick by
putting the makefile include files in a shared location
(typically /usr/local/include/make-it-quick)
2018-04-04 10:32:09 +02:00
Christophe de Dinechin 4d77ac826f Copyright update for 2018 2018-04-04 10:31:11 +02:00
Christophe de Dinechin f4715b4916 Cygwin is strange, and actually requires .a extension for libraries 2018-04-04 10:21:04 +02:00
Christophe de Dinechin faac4b1e05 DLL extension for Cygwin must be .dll for things to work OK 2018-04-04 10:21:04 +02:00
Christophe de Dinechin 16943ff6a2 Make cygwin inherit directly from GNU instead of MinGW 2018-04-04 10:21:04 +02:00
Christophe de Dinechin 019d9c091d Fix mis-definition in config.cygwin.mk 2018-04-04 10:19:39 +02:00
Christophe de Dinechin 1c3c0e606c Initial state 2018-04-04 10:19:24 +02:00