source: rtems/c/Makefile.in @ 759a9d9

4.104.114.84.95
Last change on this file since 759a9d9 was 254b4450, checked in by Joel Sherrill <joel.sherrill@…>, on Apr 1, 1997 at 11:07:52 PM

This set of changes is the build of what was required to convert to
GNU autoconf. This is the first large step in allowing an RTEMS
user to perform a one-tree build (per crossgcc FAQ) including RTEMS
in the build process. With this change RTEMS is configured in
built in the same style as the GNU tools, yet retains the basic
structure of its traditional Makefiles (ala Tony Bennett).
Jiri Gaisler (jgais@…) deserves (and received)
a big thank you for doing this.

There are still issues to be resolved but as of this commit, all target
which can be built on a linux host have been using a modified version
of the source Jiri submitted. This source was merged and most targets
built in the tree before this commit.

There are some issues which remain to be resolved but they are primarily
related to host OS dependencies, script issues, the use of gawk
for hack_specs, and the dependence on gcc snapshots. These will
be resolved.

  • Property mode set to 100644
File size: 2.4 KB
Line 
1#
2#  $Id$
3#
4# top level directory for RTEMS build tree
5# This Makefile is *not* a good example of a directory Makefile.
6#
7
8@SET_MAKE@
9srcdir = @srcdir@
10top_srcdir = @top_srcdir@
11prefix = @prefix@
12exec_prefix = @exec_prefix@
13bindir = @bindir@
14libdir = @libdir@
15includedir = @includedir@
16target = @target@
17manext = 1
18mandir = @mandir@/man$(manext)
19program_prefix = @program_prefix@
20VPATH=@srcdir@
21
22include $(RTEMS_CUSTOM)
23include $(RTEMS_ROOT)/make/directory.cfg
24
25# dubious, but needed by rtems-glom ...
26export PROJECT_HOME
27
28SUB_DIRS=build-tools src
29
30# directories to be created in install point
31CREATE_DIRS =   include include/sys \
32    include/rtems include/rtems/score include/rtems/rtems include/rtems/posix \
33                include/libc include/libc/sys \
34                lib \
35                bin \
36                samples tests \
37                build-tools update-tools
38
39# Make all/install must include 'env'
40all $(TARGET_VARIANTS:%=%_install) $(TARGET_VARIANTS:%=%_all): env
41
42# top level clean/clobber will delete the install points
43clean_WRAPUP = $(MAKE) clean_wrapup
44clobber_WRAPUP = $(MAKE) clean_wrapup
45
46clean_wrapup: clean_tools clean_dirs clean_modules
47
48.PHONY: dirs clean_wrapup clean_dirs clean_tools clean_modules env install
49
50#  XXX The link is temporary while switching to -specs options.
51dirs:
52        -$(MKDIR) ${CREATE_DIRS:%=$(PROJECT_ROOT)/$(RTEMS_BSP)/%}
53        -ln -s $(PROJECT_ROOT)/$(RTEMS_BSP)/include \
54                $(PROJECT_ROOT)/$(RTEMS_BSP)/lib/include
55
56distclean: clobber
57
58clean_dirs:
59        $(RM) -r $(PROJECT_RELEASE)
60
61clean_tools:
62        cd build-tools; $(MAKE) clean
63
64# NOTE: The wildcard on the install should pick up everything except
65#       the tests directory.  This significantly minimizes the install size.
66install: all
67         -$(MKDIR) $(prefix)/$(target)
68         -$(MKDIR) $(prefix)/$(target)/rtems
69         -$(MKDIR) $(prefix)/$(target)/rtems/make
70         -$(MKDIR) $(prefix)/$(target)/rtems/make/compilers
71         -$(MKDIR) $(prefix)/$(target)/rtems/make/custom
72         -$(MKDIR) $(prefix)/$(target)/rtems/make/os
73        -rm -rf $(prefix)/$(target)/rtems/$(RTEMS_BSP)
74        cd ../; tar cf - $(RTEMS_BSP)/[bilsu]* | \
75                (cd $(prefix)/$(target)/rtems; tar xpBf - )
76        cd $(srcdir); tar cf - make/compilers make/custom make/os \
77                make/leaf.cfg make/directory.cfg make/main.cfg | \
78                (cd $(prefix)/$(target)/rtems; tar xpBf - )
79        echo RTEMS_BSP = $(RTEMS_BSP) > \
80                $(prefix)/$(target)/rtems/$(RTEMS_BSP)/Makefile.inc
81        cat make/Templates/Makefile.inc >> \
82                $(prefix)/$(target)/rtems/$(RTEMS_BSP)/Makefile.inc
83
84tests:
85        cd src/tests; $(MAKE) all
86
87env:    $(SRCS) dirs
88
89
90
91
92
93
94
95
96
97
98
Note: See TracBrowser for help on using the repository browser.