summaryrefslogblamecommitdiffstats
path: root/c/src/lib/libbsp/m68k/efi332/start/Makefile.am
blob: ac9c0cf1a6be420b32d625e26f13a976ecaa47a4 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
  
       
  
 
                 
                                              



                                                 
                                                           





                                                       

                                                                                 

                                                               
 
                                                                             

                             

                                                                     













                                                                           
                                                                                    







                                                                         
                                                                                       




                                                                            
                                                                          

                                                      
                                                                      
 
                                                                      
 
                                  
 
                                                                   

                                                         
##
## $Id$
##

C_FILES = start.c
C_O_FILES = $(C_FILES:%.c=$(ARCH)/%.$(OBJEXT))

OBJS = $(C_O_FILES)

include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(top_srcdir)/../../../../../../automake/compile.am
include $(top_srcdir)/../../../../../../automake/lib.am

#
# (OPTIONAL) Add local stuff here using +=
#

bsplib_DATA = $(PROJECT_RELEASE)/lib/start$(LIB_VARIANT).$(OBJEXT)
bsplib_DATA += $(PROJECT_RELEASE)/lib/except_vect_332_ROM$(LIB_VARIANT).$(OBJEXT)
bsplib_DATA += $(PROJECT_RELEASE)/lib/ram_init$(LIB_VARIANT)
bsplib_DATA += $(PROJECT_RELEASE)/lib/ram_init_FW$(LIB_VARIANT)

$(PROJECT_RELEASE)/lib/start$(LIB_VARIANT).$(OBJEXT): $(ARCH)/start.$(OBJEXT)
	$(INSTALL_DATA) $< $@

$(PROJECT_RELEASE)/lib/except_vect_332_ROM$(LIB_VARIANT).$(OBJEXT): \
    $(ARCH)/except_vect_332_ROM.$(OBJEXT)
	$(INSTALL_DATA) $< $@

$(PROJECT_RELEASE)/lib/ram_init$(LIB_VARIANT): \
    $(ARCH)/ram_init
	$(INSTALL_DATA) $< $@

$(PROJECT_RELEASE)/lib/ram_init_FW$(LIB_VARIANT): \
    $(ARCH)/ram_init_FW
	$(INSTALL_DATA) $< $@

$(ARCH)/ram_init: $(srcdir)/start.c $(srcdir)/ram_init.ld \
    $(srcdir)/ram_init.sed
	sed -f $(srcdir)/ram_init.sed $(srcdir)/start.c >$(ARCH)/ram_init.S
	$(CC) -D SIM_CRB=0x0000 -E $(ARCH)/ram_init.S >$(ARCH)/ram_init1.S
	sed "/.$(OBJEXT)rg/ {N; s/\n/%/; P;}; /\.text/P; D;" $(ARCH)/ram_init1.S | \
           sort | sed "h;1{s/.*/.data/;P;g;};s/%.*//;P;g;s/.*%//;" \
           >$(ARCH)/ram_init2.S
	$(CC) -nostdlib -Wl,-T$(srcdir)/ram_init.ld $(ARCH)/ram_init2.S \
           -o $(ARCH)/ram_init

$(ARCH)/ram_init_FW: $(srcdir)/ram_init.ld $(ARCH)/ram_init.S
	$(CC) -D FLASHWRITE -D SIM_CRB=0x0000 -E $(ARCH)/ram_init.S \
           >$(ARCH)/ram_init_FW1.S
	sed "/.$(OBJEXT)rg/ {N; s/\n/%/; P;}; /\.text/P; D;" $(ARCH)/ram_init_FW1.S | \
           sort | sed "h;1{s/.*/.data/;P;g;};s/%.*//;P;g;s/.*%//;" \
           >$(ARCH)/ram_init_FW2.S
	$(CC) -nostdlib -Wl,-T$(srcdir)/ram_init.ld $(ARCH)/ram_init_FW2.S \
           -o $(ARCH)/ram_init_FW

TMPINSTALL_FILES += $(PROJECT_RELEASE)/lib/start$(LIB_VARIANT).$(OBJEXT) \
    $(PROJECT_RELEASE)/lib/ram_init$(LIB_VARIANT) \
    $(PROJECT_RELEASE)/lib/ram_init_FW$(LIB_VARIANT) \
    $(PROJECT_RELEASE)/lib/except_vect_332_ROM$(LIB_VARIANT).$(OBJEXT)

all-local: $(ARCH) $(OBJS) $(ARCH)/start.$(OBJEXT) $(TMPINSTALL_FILES)

.PRECIOUS: $(ARCH)/start.$(OBJEXT)

EXTRA_DIST = start.c except_vect_332_ROM.S ram_init.ld ram_init.sed

include $(top_srcdir)/../../../../../../automake/local.am