Mercurial > ecos
view examples/build_Make.params @ 3173:afb59e9b7339
* cdl/hal_arm.cdl: Add CDL to control whether both IRQs and FIQs
are disabled in critical sections, or only IRQs. The default is to
disable both and translate any FIQs into IRQs for delivery. The
alternative is for FIQs to essentially exist outside eCos.
* include/hal_arch.h (CPSR_THREAD_INITIAL):
* include/hal_intr.h (CPSR_INTR_MASK, HAL_*_INTERRUPTS)
(HAL_*_FIQ): Add definitions for separating FIQ from IRQ.
* src/hal_mk_defs.c (main):
* src/vectors.S (start, FIQ, IRQ, spurious_IRQ):
(hal_*_interrupts, hal_*_FIQ, __fiq_stack_base): Add support for
separating FIQ from IRQ in critical section processing.
| author | nickg |
|---|---|
| date | Fri, 11 May 2012 10:24:33 +0000 |
| parents | ba637aa555ec |
| children |
line wrap: on
line source
#! /bin/sh # This script will set up a Makefile fragment with # platform specifics. This fragement can be used by # the automatically generated Makefile (via the script # 'build_Makefile') # Copied from 'makefile' in the "install" tree ECOS_BUILD_DIR=${1-`pwd`} ECOS_INSTALL_DIR=`echo ${ECOS_BUILD_DIR}/install` if [ ! -d ${ECOS_BUILD_DIR}/install ]; then if [ ! -d ${ECOS_BUILD_DIR}/*_build ]; then echo "Not an eCos install tree" echo "usage: <eCos_repository>/build_Make.params [<eCos_install_dir>]" echo "... where <eCos_install_dir> is the directory which contains" echo " the *.ecc configuration file used to build the kernel" exit else ECOS_INSTALL_DIR=`echo ${ECOS_BUILD_DIR}/*_install` ECOS_BUILD_DIR=`echo ${ECOS_BUILD_DIR}/*_build` fi fi cat <<EOF >Make.params # Copied from 'makefile' in the "install" tree EOF grep export ${ECOS_BUILD_DIR}/makefile >>Make.params cat <<EOF >>Make.params # # Target specific flags, etc. # EOF cat ${ECOS_INSTALL_DIR}/include/pkgconf/ecos.mak >>Make.params # # Add CFLAGS manipulation - this should match <ecos>/packages/pkgconf/rules.mak # cat <<EOF >>Make.params # # Modify CFLAGS to match newer compilers # ACTUAL_CFLAGS = \$(ECOS_GLOBAL_CFLAGS) ACTUAL_CXXFLAGS = \$(ECOS_GLOBAL_CFLAGS) ACTUAL_LDFLAGS = \$(ECOS_GLOBAL_LDFLAGS) # GCC since 2.95 does -finit-priority by default so remove it from old HALs ACTUAL_CFLAGS := \$(subst -finit-priority,,\$(ACTUAL_CFLAGS)) # -fvtable-gc is known to be broken in all recent GCC. ACTUAL_CFLAGS := \$(subst -fvtable-gc,,\$(ACTUAL_CFLAGS)) # Expand inline functions ACTUAL_CFLAGS := -finline-limit=7000 \$(ACTUAL_CFLAGS) # Separate C++ flags out from C flags. ACTUAL_CFLAGS := \$(subst -fno-rtti,,\$(ACTUAL_CFLAGS)) ACTUAL_CFLAGS := \$(subst -frtti,,\$(ACTUAL_CFLAGS)) ACTUAL_CFLAGS := \$(subst -Woverloaded-virtual,,\$(ACTUAL_CFLAGS)) ACTUAL_CFLAGS := \$(subst -fvtable-gc,,\$(ACTUAL_CFLAGS)) ACTUAL_CXXFLAGS := \$(subst -Wstrict-prototypes,,\$(ACTUAL_CXXFLAGS)) EOF
