source: rtems/c/src/lib/libcpu/powerpc/mpc821/clock/Makefile.in @ 35d7b15

4.104.114.84.95
Last change on this file since 35d7b15 was 35d7b15, checked in by Joel Sherrill <joel.sherrill@…>, on 12/21/99 at 14:41:43

Patch rtems-rc-19991203-7.diff from Ralf Corsepius <corsepiu@…>
which adds partial automake support to libcpu/<cpu>/*.

Until now I have only implemented full automake support for the sh (my
demonstration example :) and the i386 (inevitiable for structural
reasons of this subdirectory). For all other cpus only their toplevel
directories (exception: powerpc), include subdirectories and a few
selected subdirectories have been converted to automake.
I did this on purpose, because add automake support to each subdirectory
requires individual adaptations which to be tested individually.

Additionally the weirdnesses of the powerpc subdirectories hit again,
esp. some powerpc cpu-models

  • install files to $(PROJECT_INCLUDE)/<cpu-model>/ while others install them to $(PROJECT_INCLUDE)/
  • the scheme used to configure libcpu/powerpc/ is difficult to implement using automake, therefore this subdirectory still is configured by autoconf (The one out of an unlimited set selection scheme hits again :), though powerpc/*/* subdirectories already apply automake.

The patch also reveils structural weaknesses in RTEMS:

E.g. There seem to exist at least 5 different general schemes:

  • Not using libcpu at all (eg. i960)
  • Strictly tree-style a libcpu/<cpu-variant>/* (eg. m68k, sh)
  • Flat libcpu directory layout with cpu-variants merged into sources or not destinguishing cpu-variants (i386)
  • Not supporting variants with deep source tree (sparc, hppa, mips64orion)
  • Woven directory structure with shared directories (powerpc)

I regret having to say this, but from my POV this means, that there
doesn't exist a general implementation scheme for libcpu at all.

To apply:

rm -rf ./c/src/lib/libcpu/i386/wrapup
rm -rf ./c/src/lib/libcpu/mips64orion/include
rm -rf ./c/src/lib/libcpu/powerpc/ppc403/include
patch -p1 < rtems-rc-19991203-7.diff
./bootstrap

  • Property mode set to 100644
File size: 1.3 KB
Line 
1#
2#  $Id$
3#
4
5@SET_MAKE@
6srcdir = @srcdir@
7top_srcdir = @top_srcdir@
8top_builddir = ../..
9subdir = mpc821/clock
10
11RTEMS_ROOT = @RTEMS_ROOT@
12PROJECT_ROOT = @PROJECT_ROOT@
13
14VPATH = @srcdir@
15
16PGM = ${ARCH}/clock.rel
17
18# C source names, if any, go here -- minus the .c
19C_PIECES = clock
20C_FILES = $(C_PIECES:%=%.c)
21C_O_FILES = $(C_PIECES:%=${ARCH}/%.o)
22
23H_FILES =
24
25# Assembly source names, if any, go here -- minus the .s
26S_PIECES =
27S_FILES = $(S_PIECES:%=%.s)
28S_O_FILES = $(S_FILES:%.s=${ARCH}/%.o)
29
30SRCS = $(C_FILES) $(CC_FILES) $(H_FILES) $(S_FILES)
31OBJS = $(C_O_FILES) $(CC_O_FILES) $(S_O_FILES)
32
33include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
34include $(RTEMS_ROOT)/make/leaf.cfg
35
36INSTALL_CHANGE = @INSTALL_CHANGE@
37
38#
39# (OPTIONAL) Add local stuff here using +=
40#
41
42DEFINES +=
43CPPFLAGS +=
44CFLAGS += $(CFLAGS_OS_V)
45
46LD_PATHS +=
47LD_LIBS +=
48LDFLAGS +=
49
50#
51# Add your list of files to delete here.  The config files
52#  already know how to delete some stuff, so you may want
53#  to just run 'make clean' first to see what gets missed.
54#  'make clobber' already includes 'make clean'
55#
56
57CLEAN_ADDITIONS +=
58CLOBBER_ADDITIONS +=
59
60${PGM}: ${OBJS}
61        $(make-rel)
62
63all: ${ARCH} $(SRCS) $(PGM)
64
65install: all
66
67Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
68        cd $(top_builddir) \
69         && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
Note: See TracBrowser for help on using the repository browser.