4.104.114.84.95
Last change
on this file since 9608320 was
9608320,
checked in by Joel Sherrill <joel.sherrill@…>, on 11/22/99 at 13:41:11
|
Patch rtems-rc-19991117-4.diff from Ralf Corsepius <corsepiu@…>:
.. a major configuration cleanup
... major enhancement of automake support.
... and it contains a *major* breakthough:
Automake support for libchip and libmisc *LEAF* directories.
To implement this I have used several nasty tricks
- The basical trick is to wrap an old Makefile.in's contents into a
Makefile.am and still continue to use (i.e include) the old
*.cfg files.
- Replaced each INSTALL_IF_CHANGE and INSTALL_VARIANT with make
dependencies
- Add a gnu-make ifdef AUTOMAKE to main.cfg to avoid conflicts between
automake and RTEMS make rules
- Replaced each install:: and preinstall:: rule with make dependencies
- Replaced SUB_DIRS with SUBDIRS in all Makefile.ins (Automake
convention)
- Removed each manually added autoconf substitution which automake
performs automatically.
This is not yet full automake support, because using the temporary
installation directory, preinstallation in general and building variants
are in contradiction to automake's basic working principles ...
... the new Makefile.ams work still somewhat clumsy
... nevertheless they work (quite well).
WARNING:
At first glance this patch is small, but
- it affects the whole configuration system.
- it opens the road to introducing automake to all Makefile.ins
currently not being under automake control.
JOEL> Does this remove or add any files?
Both, all Makefile.ins below libchip and libmisc get replaced with
Makefile.ams.
|
-
Property mode set to
100644
|
File size:
1.5 KB
|
Rev | Line | |
---|
[bffb938] | 1 | # |
---|
| 2 | # $Id$ |
---|
| 3 | # |
---|
| 4 | # make/main.cfg |
---|
| 5 | # |
---|
| 6 | # Make(1) configuration file include'd by all Makefile's |
---|
| 7 | # |
---|
| 8 | |
---|
| 9 | # |
---|
| 10 | # where things are relative to PROJECT_ROOT; shouldn't need to change, |
---|
| 11 | # but could be overridden in custom files. |
---|
| 12 | # |
---|
| 13 | |
---|
| 14 | PROJECT_RELEASE=$(PROJECT_ROOT)/$(RTEMS_BSP) |
---|
| 15 | PROJECT_BIN=$(PROJECT_RELEASE)/bin |
---|
| 16 | PROJECT_INCLUDE=$(PROJECT_RELEASE)/lib/include |
---|
| 17 | PROJECT_TOOLS = $(PROJECT_RELEASE)/build-tools |
---|
| 18 | |
---|
| 19 | # |
---|
[d6c83529] | 20 | # Target architecture; may be changed as per 'make "ARCH=debug"' |
---|
[bffb938] | 21 | # This is where the object files get put. |
---|
| 22 | # |
---|
| 23 | |
---|
[d6c83529] | 24 | ARCH=o-optimize |
---|
[bffb938] | 25 | |
---|
| 26 | VARIANT= |
---|
| 27 | |
---|
| 28 | # |
---|
| 29 | # Initial target for make(1) |
---|
| 30 | # Once this is established we can safely include other targets |
---|
| 31 | # within this make-include file. |
---|
| 32 | # |
---|
| 33 | |
---|
| 34 | default_target: all |
---|
| 35 | |
---|
| 36 | # |
---|
| 37 | # Default makefile name |
---|
| 38 | # May be overridden by command line macro assignment |
---|
| 39 | # |
---|
| 40 | |
---|
| 41 | MAKEFILE=Makefile |
---|
| 42 | |
---|
| 43 | # |
---|
| 44 | # Target variant names |
---|
| 45 | # |
---|
[d6c83529] | 46 | TARGET_VARIANTS = optimize debug profile |
---|
[bffb938] | 47 | |
---|
| 48 | # |
---|
[d6c83529] | 49 | # Generate list of object directories: o-optimize, o-debug, o-profile |
---|
[bffb938] | 50 | # |
---|
[d6c83529] | 51 | VARIANTS=${TARGET_VARIANTS:%=o-%} |
---|
[bffb938] | 52 | |
---|
| 53 | # |
---|
| 54 | # List of "recursion-able" targets for directory Makefiles |
---|
| 55 | # |
---|
| 56 | |
---|
[29e68b75] | 57 | RECURSE_TARGETS=all depend install \ |
---|
[6693a68] | 58 | preinstall-recursive \ |
---|
[29e68b75] | 59 | $(TARGET_VARIANTS) |
---|
[bffb938] | 60 | |
---|
| 61 | ${ARCH}: |
---|
[817466c] | 62 | test -d ${ARCH} || mkdir ${ARCH} |
---|
[bffb938] | 63 | |
---|
| 64 | # general purpose forcing dependency; try to use .PHONY instead |
---|
| 65 | FORCEIT: |
---|
| 66 | |
---|
| 67 | FORCE: |
---|
| 68 | |
---|
[9608320] | 69 | ifndef AUTOMAKE |
---|
[29e68b75] | 70 | distclean-generic: |
---|
| 71 | -$(RM) Makefile .#* $(CONFIG_CLEAN_FILES) |
---|
| 72 | -$(RM) -r $(CLOBBER_ADDITIONS) |
---|
| 73 | |
---|
| 74 | clean-generic: |
---|
| 75 | -$(RM) a.out core mon.out gmon.out |
---|
| 76 | -$(RM) -r $(CLEAN_ADDITIONS) |
---|
[9608320] | 77 | endif |
---|
[29e68b75] | 78 | |
---|
| 79 | .PHONY: $(RECURSE_TARGETS) |
---|
| 80 | .PHONY: clean-generic |
---|
| 81 | .PHONY: distclean-generic |
---|
Note: See
TracBrowser
for help on using the repository browser.