# # $Id$ # @SET_MAKE@ srcdir = @srcdir@ VPATH = @srcdir@ RTEMS_ROOT = @top_srcdir@ PROJECT_ROOT = @PROJECT_ROOT@ INSTALL = @INSTALL@ # We only build multiprocessing related files if HAS_MP was defined MP_PIECES_yes_V = mpci mppkt objectmp threadmp MP_PIECES = $(MP_PIECES_$(HAS_MP)_V) # H_FILES that get installed in the rtems/score subdirectoy H_PIECES= address apiext bitfield chain context copyrt coremsg coremutex \ coresem heap interr isr object \ priority stack states sysstate thread threadq \ tod tqdata userext watchdog wkspace # Use this if compilation in location will be supported # H_FILES=$(H_PIECES:%=$(srcdir)/%.h) targopts.h # FIXME: Work-around H_FILES=$(H_PIECES:%=$(srcdir)/%.h) TARGOPTS=$(PROJECT_INCLUDE)/rtems/score/targopts.h SRCS=$(H_FILES) $(TARGOPTS) include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg include $(RTEMS_ROOT)/make/leaf.cfg # # Add your list of files to delete here. The config files # already know how to delete some stuff, so you may want # to just run 'make clean' first to see what gets missed. # 'make clobber' already includes 'make clean' # CLEAN_ADDITIONS += $(TARGOPTS) CLOBBER_ADDITIONS += # Until RTEMS_CPU is removed from all the make configuration files, # this will need to be here to transform hppa1.1 into hppa1_1 to # make it a valid cpp symbol. At some point in the near future, # targopts.h should not define RTEMS_CPU. As best I can tell, # gcc cpp predefines eliminate the need for RTEMS_CPU_MODEL # on some families but not on others. For example, the i386 # family does not give us enough information from the predefines. RTEMS_CPU_DEFINED=$(subst .,_,$(RTEMS_CPU)) # make the target dependent options file $(TARGOPTS): @echo "/* target board dependent options file */" >$@ @echo "/* automatically generated -- DO NOT EDIT!! */" >>$@ @echo >>$@ @echo "#ifndef __TARGET_OPTIONS_h" >>$@ @echo "#define __TARGET_OPTIONS_h" >>$@ @echo >>$@ @echo "#ifdef $(RTEMS_CPU_DEFINED)" >>$@ @echo "#undef $(RTEMS_CPU_DEFINED)" >>$@ @echo "#endif" >>$@ @echo "#define $(RTEMS_CPU_DEFINED) 1" >>$@ @echo >>$@ @echo "#ifdef $(RTEMS_CPU_MODEL)" >>$@ @echo "#undef $(RTEMS_CPU_MODEL)" >>$@ @echo "#endif" >>$@ @echo "#define $(RTEMS_CPU_MODEL) 1" >>$@ @echo >>$@ @echo "#ifdef $(RTEMS_BSP)" >>$@ @echo "#undef $(RTEMS_BSP)" >>$@ @echo "#endif" >>$@ @echo "#define $(RTEMS_BSP) 1" >>$@ @echo >>$@ @$(make-target-options) ifeq (${RTEMS_USE_MACROS},yes) @echo "#define USE_MACROS 1" >>$@ else @echo "#define USE_INLINES 1" >>$@ endif ifeq ($(RTEMS_HAS_MULTIPROCESSING),yes) @echo "#define RTEMS_MULTIPROCESSING 1" >>$@ endif ifeq ($(RTEMS_HAS_POSIX_API),yes) @echo "#define RTEMS_POSIX_API 1" >>$@ endif ifeq ($(RTEMS_USE_NEWLIB),yes) @echo "#define RTEMS_NEWLIB 1" >>$@ @echo "#define MALLOC_PROVIDED 1" >>$@ endif @echo >>$@ @echo "#endif" >>$@ @chmod 755 $@ all: $(SRCS) $(INSTALL_DATA) ${H_FILES} $(PROJECT_INCLUDE)/rtems/score