When installing in a distribution, we need the config.system-setup.mk to point
to the right directory (e.g. /usr/share/make-it-quick/config) to fetch the
sources while building.
Signed-off-by: Christophe de Dinechin <christophe@dinechin.org>
Normally, the `config` installables are intended for configuration files.
For `make-it-quick`, we override it for `.c` files that we will place under the
`config/` directory under `make-it-quick`.
Signed-off-by: Christophe de Dinechin <christophe@dinechin.org>
- 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>
Changes since release 0.2.6
- Add configuration check for long double
- config: Add tests for _Float80 and _Float128
- Add configuration check for _Float16
- Merge pull request #3 from FreedomBen/FreedomBen-typo-fix
- Fix simple typo avaiable -> available
- More renaming using the .ext convention
- Repair installation of DLLs
- Rename MIQ_COMPILE to COMPILE-lt (for libtool)
- Replace [BUILD] with [LINK] in the output
- Make the COMPILE and LINK build steps more generic
- Rename OBJFILES to BUILD
- Replace OBJ_EXT with EXT.obj and similar for other extensions
- Add a test printout for the count-characters test
- Fix name fo test executable in example makefie
Signed-off-by: Christophe de Dinechin <christophe@dinechin.org>
Changed more variables with the convention to use .ext rather than _EXT.
For example, replace PREFIX_DLL with PREFIX.dll.
Signed-off-by: Christophe de Dinechin <christophe@dinechin.org>
This addresses two issues:
- There was a mixup between the installed config.system-setup.mk
and the one being used for installation, which could lead to
build fragility / difficulty to reproduce.
- Making `make install` and `rpmbuild` consistent in what is
being installed and produced.
Earlier, $(PREFIX_LIB) would be the path for libraries,
but also for installation. That led makefiles to adjusting
the prefix in order to install in some subdirectory.
That does not work in a distro setup where PREFIX_BIN
and the like are provided by the build environment,
and represent the base of that build environment.
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).
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)