文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>vendors/config/m68knommu/config.arch

vendors/config/m68knommu/config.arch

时间:2006-06-06  来源:rwen2012

.EXPORT_ALL_VARIABLES:
############################################################################
#
#  A Generic m68k config.arch that can be included by other platforms
#  to reduce the number of places that need to be edited when something
#  common changes.  If you include this file you may provide:
#
#  CPUFLAGS            - cpu specific flags to pass to the compiler
#  VENDOR_CFLAGS       - vendor specific flags to pass to the compiler
#  DISABLE_XIP         - set this to 1 to disable XIP code
#  DISABLE_SHARED_LIBS - set this to 1 to disable shared libraries
#  DISABLE_MOVE_RODATA - set this to 1 to disable moving rodata to text
#  LOPT                - library optimisation flags
#  UOPT                - user optimisation flags
#
#  David McCullough <[email protected]>
#
############################################################################
#
# Generic settings
#

ifndef CONSOLE_BAUD_RATE
CONSOLE_BAUD_RATE = 9600
endif

ifeq ($(ROOTDIR)/modules,$(wildcard $(ROOTDIR)/modules))
EXTRA_MODULE_DIRS = $(ROOTDIR)/modules
endif

ifndef VERSIONPKG
#define VERSIONPKG 1.0.0
endif

ifndef VERSIONSTR
VERSIONSTR = $(CONFIG_VENDOR)/$(CONFIG_PRODUCT) Version $(VERSIONPKG)
endif

############################################################################
#
# The makefiles need to know how to do things in different contexts
# To save some pain we put it all here
#
# First settings we always want for all builds
#

# ARCH = kernel,  TARGET_ARCH = uClibc

MACHINE       = m68k
ARCH          = m68knommu
CROSS_COMPILE = m68k-elf-
CROSS         = $(CROSS_COMPILE)

CC        = $(CROSS_COMPILE)gcc $(CPUFLAGS)
AS        = $(CROSS_COMPILE)as $(CPUFLAGS)
CXX       = $(CROSS_COMPILE)g++ $(CPUFLAGS)
AR        = $(CROSS_COMPILE)ar
LD        = $(CROSS_COMPILE)ld
OBJCOPY   = $(CROSS_COMPILE)objcopy
RANLIB    = $(CROSS_COMPILE)ranlib
ELF2FLT   = elf2flt
STRIPTOOL = $(CROSS_COMPILE)strip
STRIP     = $(STRIPTOOL)

UCLINUX_BUILD_SET = 0                    # have we set a special config below

ifndef DISABLE_SHARED_LIBS
  ifeq ($(CONFIG_BINFMT_SHARED_FLAT),y)
    BUILD_SHARED = 1
  endif
endif

############################################################################
#
# General purpose lib building rules,  uClibc.config uses these when
# possible
#

ifdef UCLINUX_BUILD_LIB

  ifdef CONFIG_LIB_DEBUG
    CFLAGS  :=  $(if $(LOPT),$(LOPT),-O1) -g
  else
    CFLAGS  :=  $(if $(LOPT),$(LOPT),-O2) -g -fomit-frame-pointer
  endif
    CFLAGS  += $(CPUFLAGS)
    CFLAGS  += $(VENDOR_CFLAGS)
    CFLAGS  += -fno-builtin
    CFLAGS  += -DEMBED
  ifdef BUILD_SHARED
    CFLAGS  += -mid-shared-library
  else
    ifndef DISABLE_XIP
      CFLAGS  += -msep-data
    endif
  endif

    # don't want all the CFLAGS for uClibc/Config
    ARCH_CFLAGS = $(CFLAGS)
    CFLAGS  += -I$(ROOTDIR)/lib/$(CONFIG_LIBCDIR)/include -I$(ROOTDIR)
    CFLAGS  += -Dlinux -D__linux__ -D__uClinux__ -Dunix

    # the following is needed for uClinux-2.4
    CFLAGS  += -I$(ROOTDIR)/$(LINUXDIR)/include

    LDFLAGS  = $(CFLAGS) -Wl,-elf2flt

  ifndef DISABLE_MOVE_RODATA
      LDFLAGS += -Wl,-move-rodata
  endif

    UCLINUX_BUILD_SET=1
endif

############################################################################
#
# Settings for building user apps
#

ifdef UCLINUX_BUILD_USER

    GCC_DIR = $(shell $(CC) -v 2>&1|grep specs|sed -e 's/.* \(.*\)specs/\1\./')
    GCC_LIB = /usr/local/m68k-elf/lib

    SLIBC        = -lc
    SLIBM        = -lm
    SLIBNET      = -lnet
    SLIBDES      = -ldes
    SLIBAES      = -laes
    SLIBPCAP     = -lpcap
    SLIBSSL      = -lssl
    SLIBCRYPTO   = -lcrypto
    SLIBCRYPT    = -lcrypt_old
    SLIBPTHREAD  = -lpthread
    SLIBSNAPGEARPP = -lsnapgear++
    SLIBSNAPGEAR   = -lsnapgear -llocale
    SLIBCONFIGDD   = -lconfigdd

  ifdef BUILD_SHARED
    LIBC          = -Wl,-R,$(ROOTDIR)/lib/$(LIBCDIR)/libc.gdb $(SLIBC)
    LIBSNAPGEAR   = -Wl,-R,$(ROOTDIR)/lib/libsnapgear/libsnapgear.gdb \
                    $(SLIBSNAPGEAR)
  else
    LIBC          = $(SLIBC)
    LIBSNAPGEAR   = $(SLIBSNAPGEAR)
  endif
    LIBM        = $(SLIBM)
    LIBNET      = $(SLIBNET)
    LIBDES      = $(SLIBDES)
    LIBAES      = $(SLIBAES)
    LIBPCAP     = $(SLIBPCAP)
    LIBSSL      = $(SLIBSSL)
    LIBCRYPTO   = $(SLIBCRYPTO)
    LIBCRYPT    = $(SLIBCRYPT)
    LIBPTHREAD  = $(SLIBPTHREAD)
    LIBSNAPGEARPP = $(SLIBSNAPGEARPP)
    LIBCONFIGDD = $(SLIBCONFIGDD)

    LIBGCC      = -lgcc
    LIBIBERTY   = -liberty
    LIBIO       = -lio
    LIBIOSTREAM = -liostream
    LIBSTDCPP   = -lstdc++

    LDPATH = \
            -L$(ROOTDIR)/lib/$(LIBCDIR)/. \
            -L$(ROOTDIR)/lib/$(LIBCDIR)/lib \
            -L$(ROOTDIR)/lib/libm \
            -L$(ROOTDIR)/lib/libnet \
            -L$(ROOTDIR)/lib/libdes \
            -L$(ROOTDIR)/lib/libaes \
            -L$(ROOTDIR)/lib/libpcap \
            -L$(ROOTDIR)/lib/libssl \
            -L$(ROOTDIR)/lib/libcrypt_old \
            -L$(ROOTDIR)/lib/libsnapgear++ \
            -L$(ROOTDIR)/lib/libsnapgear \
            -L$(ROOTDIR)/lib/zlib

    INCLIBC = -I$(ROOTDIR)/lib/$(CONFIG_LIBCDIR)/include
    INCLIBM = -I$(ROOTDIR)/lib/libm
    INCNET  = -I$(ROOTDIR)/lib/libnet
    INCDES  = -I$(ROOTDIR)/freeswan/libdes
    INCAES  = -I$(ROOTDIR)/freeswan/libcrypto/libaes
    INCGMP  = -I$(ROOTDIR)/lib/libgmp
    INCPCAP = -I$(ROOTDIR)/lib/libpcap
    INCSSL  = -I$(ROOTDIR)/lib/libssl/include
    INCZ    = -I$(ROOTDIR)/lib/zlib
    INCVEND = -I$(ROOTDIR)/vendors/include
    INCSG    = -I$(ROOTDIR)/lib/libsnapgear/include
    INCSGPP    = -I$(ROOTDIR)/lib/libsnapgear++/include
    INCCRYPTOLD    = -I$(ROOTDIR)/lib/libcrypt_old

  ifdef CONFIG_USER_DEBUG
    CFLAGS  :=  $(if $(UOPT),$(UOPT),-O1) -g
  else
    CFLAGS  :=  $(if $(UOPT),$(UOPT),-Os) -g -fomit-frame-pointer
  endif

    CFLAGS  += $(CPUFLAGS)
    CFLAGS  += $(VENDOR_CFLAGS)
    CFLAGS  += -Dlinux -D__linux__ -Dunix -D__uClinux__ -DEMBED
    CFLAGS  += $(INCLIBC) $(INCLIBM) $(INCCRYPTOLD)
    CFLAGS  += -I$(ROOTDIR)
    CFLAGS  += -fno-builtin

  ifdef BUILD_SHARED
    CFLAGS  += -mid-shared-library -mshared-library-id=0
  else
    ifndef DISABLE_XIP
      CFLAGS  += -msep-data
    endif
  endif

    #
    # the following is needed for 2.4
    #
    CFLAGS  += -I$(ROOTDIR)/$(LINUXDIR)/include

    CXXFLAGS = $(CFLAGS) $(INCCXX)

    LDFLAGS  = $(CFLAGS) -Wl,-elf2flt
  ifndef DISABLE_MOVE_RODATA
      LDFLAGS += -Wl,-move-rodata
  endif

  ifdef BUILD_SHARED
    LDFLAGS += -Wl,-shared-lib-id,0
  endif

  ifneq ($(LIBCDIR),libc)
    LDFLAGS += -nostartfiles $(ROOTDIR)/lib/$(LIBCDIR)/lib/crt0.o
  endif
      LDFLAGS += $(LDPATH)

    LDLIBS         = $(LIBC)
    LDLIBS-static  = $(SLIBC)
    CXXLIBS        = $(LIBSTDCPP) $(LIBIOSTREAM) $(LIBIO) $(LIBIBERTY) \
                     $(LIBC) $(LIBGCC)
    
  ifndef FLTFLAGS
    FLTFLAGS :=
  endif
    export FLTFLAGS

    # for anyone still using it
    CONVERT = /bin/true

    UCLINUX_BUILD_SET=1
endif

############################################################################
#
# fall through,  do other config options perhaps
#

ifeq ($(UCLINUX_BUILD_SET),1)
endif

############################################################################
相关阅读 更多 +
排行榜 更多 +
空中跑酷汉化版

空中跑酷汉化版

赛车竞速 下载
修仙传说

修仙传说

角色扮演 下载
魔界零之迷宫

魔界零之迷宫

冒险解谜 下载