source: rtems/c/Makefile.in @ 06fa582

4.104.114.84.95
Last change on this file since 06fa582 was 06fa582, checked in by Joel Sherrill <joel.sherrill@…>, on 08/19/98 at 12:56:20

Patches from Ralf Corsepius <corsepiu@…> and myself to
make solaris target buildable.

  1. The ipc check fails since solaris does not define union semun.

The unix port code actually defines this type itself on solaris. Doing
the same thing lets it get configured. Then...

  1. It looks like BSDINSTALL is not defined properly.

BSDINSTALL is defined in make/host.cfg.in as
BSDINSTALL=@INSTALL@

@INSTALL@ is generated by autoconf's standard macro AC_PROG_INSTALL, which
is widely used in almost any autoconf/automake configured package. In case
there is really something wrong with it, then it must be considered a bug
in autoconf.

I can see a doubious fragment in AC_PROG_INSTALL, which is used when no
appropriate bsd-install is found.

Finally Ralf saw a problem with the find on solaris which I also saw and
fixed.

  • Property mode set to 100644
File size: 3.5 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@
10prefix = @prefix@
11exec_prefix = @exec_prefix@
12bindir = @bindir@
13libdir = @libdir@
14includedir = @includedir@
15target = @target@
16manext = 1
17mandir = @mandir@/man$(manext)
18program_prefix = @program_prefix@
19VPATH = @srcdir@
20RTEMS_ROOT = @top_srcdir@
21PROJECT_ROOT = @PROJECT_ROOT@
22
23include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg
24include $(RTEMS_ROOT)/make/directory.cfg
25
26SUB_DIRS=build-tools src
27
28# We only make the install point for the KA9Q header files if it is enabled.
29LIBKA9Q_yes_V = lib/include/ka9q
30LIBKA9Q = $(LIBKA9Q_$(HAS_KA9Q)_V)
31
32# We only make the rtems++ install point if it is enabled.
33LIBRTEMSCPLUSPLUS_yes_V = lib/include/rtems++
34LIBRTEMSCPLUSPLUS = $(LIBRTEMSCPLUSPLUS_$(HAS_CPLUSPLUS)_V)
35
36# directories to be created in install point
37CREATE_DIRS = \
38    lib lib/include lib/include/sys lib/include/rtems \
39    lib/include/rtems/score lib/include/rtems/rtems lib/include/rtems/posix \
40    lib/include/netinet lib/include/libc lib/include/libc/sys \
41    lib/include/motorola lib/include/zilog \
42    $(LIBKA9Q) \
43    $(LIBRTEMSCPLUSPLUS) \
44    bin samples \
45    tests tests/screens tests/screens/sptests \
46    tests/screens/psxtests tests/screens/mptests \
47    tests/screens/mptests/node1 tests/screens/mptests/node2 \
48    build-tools update-tools
49
50# Make all/install must include 'env'
51# if something is added to TARGET_VARIANTS, then account for it here
52make_src_makefiles: Makefile.in Makefile
53        -find . -name Makefile \
54            -exec grep -l "^preinstall" {} \; > make_src_makefiles.tmp
55        -grep tools make_src_makefiles.tmp > make_src_makefiles
56        -grep -v tools make_src_makefiles.tmp >> make_src_makefiles
57        -rm make_src_makefiles.tmp
58
59
60pre_install_src: env make_src_makefiles
61        cd build-tools/scripts; $(MAKE)
62        @echo "Order of preinstall directories"
63        cat make_src_makefiles
64        @echo
65        CURRDIR=`pwd`; \
66        for i in `cat make_src_makefiles` ; do \
67                DIR=`dirname $$i`; \
68                cd $$DIR; \
69                $(MAKE) preinstall; \
70                cd $$CURRDIR; \
71        done
72all: pre_install_src env
73debug: env
74profile: env
75
76install: all install_files
77debug_install: env debug install_files
78profile_install: env profile install_files
79
80debug_all: debug
81profile_all: profile
82
83# top level clean/clobber will delete the install points
84clean_WRAPUP = $(MAKE) clean_wrapup
85clobber_WRAPUP = $(MAKE) clean_wrapup
86
87clean_wrapup: clean_tools clean_dirs clean_modules
88
89.PHONY: dirs clean_wrapup clean_dirs clean_tools clean_modules env install
90
91dirs:
92        -$(MKDIR) ${CREATE_DIRS:%=$(PROJECT_ROOT)/$(RTEMS_BSP)/%}
93        if test -d $(PROJECT_ROOT)/c/src/lib/libhwapi; then \
94                (cd $(PROJECT_ROOT)/c/src/lib/libhwapi ; $(MAKE) mkdirs) \
95        fi
96
97distclean: clobber
98
99clean_dirs:
100        $(RM) -r $(PROJECT_RELEASE)
101
102clean_tools:
103        cd build-tools; $(MAKE) clean
104
105$(PROJECT_ROOT)/$(RTEMS_BSP)/Makefile.inc: $(PROJECT_ROOT)/make/Templates/Makefile.inc
106        echo "RTEMS_BSP = $(RTEMS_BSP)" > $@
107        $(CAT) $< >> $@
108
109# NOTE: The wildcard on the install should pick up everything except
110#       the tests directory.  This significantly minimizes the install size.
111
112install_files: $(PROJECT_ROOT)/$(RTEMS_BSP)/Makefile.inc
113        -$(MKDIR) $(prefix)/
114        -$(MKDIR) $(prefix)/rtems
115        -$(RM) -rf $(prefix)/rtems/$(RTEMS_BSP)
116        cd ../; tar cf - $(RTEMS_BSP)/[bilsuM]* | \
117                (cd $(prefix)/rtems; tar xpBf - )
118        cd ../make; $(MAKE) RTEMS_BSP=$(RTEMS_BSP) install
119
120tests:
121        cd src/tests; $(MAKE) all
122
123debug_tests: debug
124        cd src/tests; $(MAKE) debug
125
126profile_tests: profile
127        cd src/tests; $(MAKE) profile
128
129env:    $(SRCS) dirs
Note: See TracBrowser for help on using the repository browser.