dnsmasq: stay close as possible to master branch
[tomato.git] / release / src-rt-6.x.4708 / router / common.mak
blob0e8f6c3f86a7b7ba21a92b56fdf06eecd90c255d
1 ifeq ($(SRCBASE),)
2 # ..../src/router/
3 # (directory of the last (this) makefile)
4 export TOP := $(shell cd $(dir $(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST))) && pwd)
6 # ..../src/
7 export SRCBASE := $(shell (cd $(TOP)/.. && pwd))
8 export SRCBASEDIR := $(shell (cd $(TOP)/.. && pwd | sed 's/.*release\///g'))
9 else
10 export TOP := $(SRCBASE)/router
11 endif
13 include $(SRCBASE)/tomato_profile.mak
14 include $(TOP)/.config
16 export BUILD := $(shell (gcc -dumpmachine))
17 export HOSTCC := gcc
19 ifeq ($(TCONFIG_BCMARM),y)
20 export PLATFORM := arm-uclibc
21 export CROSS_COMPILE := arm-brcm-linux-uclibcgnueabi-
22 export CROSS_COMPILER := $(CROSS_COMPILE)
23 export CONFIGURE := ./configure --host=arm-linux --build=$(BUILD)
24 export HOSTCONFIG := linux-armv4
25 export BCMEX := _arm
26 export EXTRA_FLAG := -lgcc_s
27 export ARCH := arm
28 export HOST := arm-linux
29 else
30 export PLATFORM := mipsel-uclibc
31 export CROSS_COMPILE := mipsel-uclibc-
32 export CROSS_COMPILER := $(CROSS_COMPILE)
33 export CONFIGURE := ./configure --host=mipsel-linux --build=$(BUILD)
34 export HOSTCONFIG := linux-mipsel
35 export ARCH := mips
36 export HOST := mipsel-linux
37 endif
39 export PLT := $(ARCH)
40 export TOOLCHAIN := $(shell cd $(dir $(shell which $(CROSS_COMPILE)gcc))/.. && pwd -P)
42 export CC := $(CROSS_COMPILE)gcc
43 export AR := $(CROSS_COMPILE)ar
44 export AS := $(CROSS_COMPILE)as
45 export LD := $(CROSS_COMPILE)ld
46 export NM := $(CROSS_COMPILE)nm
47 export OBJCOPY := $(CROSS_COMPILE)objcopy
48 export RANLIB := $(CROSS_COMPILE)ranlib
49 ifeq ($(TCONFIG_BCMARM),y)
50 export STRIP := $(CROSS_COMPILE)strip
51 else
52 export STRIP := $(CROSS_COMPILE)strip -R .note -R .comment
53 endif
54 export SIZE := $(CROSS_COMPILE)size
56 include $(SRCBASE)/target.mak
58 # Determine kernel version
59 SCMD=sed -e 's,[^=]*=[ ]*\([^ ]*\).*,\1,'
60 KVERSION:= $(shell grep '^VERSION[ ]*=' $(LINUXDIR)/Makefile|$(SCMD))
61 KPATCHLEVEL:= $(shell grep '^PATCHLEVEL[ ]*=' $(LINUXDIR)/Makefile|$(SCMD))
62 KSUBLEVEL:= $(shell grep '^SUBLEVEL[ ]*=' $(LINUXDIR)/Makefile|$(SCMD))
63 KEXTRAVERSION:= $(shell grep '^EXTRAVERSION[ ]*=' $(LINUXDIR)/Makefile|$(SCMD))
64 LINUX_KERNEL=$(KVERSION).$(KPATCHLEVEL).$(KSUBLEVEL)$(KEXTRAVERSION)
65 LINUX_KERNEL_VERSION=$(shell expr $(KVERSION) \* 65536 + $(KPATCHLEVEL) \* 256 + $(KSUBLEVEL))
66 ifeq ($(LINUX_KERNEL),)
67 $(error Empty LINUX_KERNEL variable)
68 endif
71 export LIBDIR := $(TOOLCHAIN)/lib
72 export USRLIBDIR := $(TOOLCHAIN)/usr/lib
74 export PLATFORMDIR := $(TOP)/$(PLATFORM)
75 export INSTALLDIR := $(PLATFORMDIR)/install
76 export TARGETDIR := $(PLATFORMDIR)/target
77 export STAGEDIR := $(PLATFORMDIR)/stage
79 ifeq ($(EXTRACFLAGS),)
80 ifeq ($(TCONFIG_BCMARM),y)
81 export EXTRACFLAGS := -DBCMWPA2 -DBCMARM -fno-delete-null-pointer-checks -marm
82 else
83 export EXTRACFLAGS := -DBCMWPA2 -fno-delete-null-pointer-checks -mips32 -mtune=mips32
84 endif
85 endif
86 export EXTRACFLAGS += -DLINUX_KERNEL_VERSION=$(LINUX_KERNEL_VERSION)
88 CPTMP = @[ -d $(TOP)/dbgshare ] && cp $@ $(TOP)/dbgshare/ || true
90 ifeq ($(CONFIG_LINUX26),y)
91 export KERNELCC := $(CC)
92 export KERNELLD := $(LD)
93 else
94 export KERNELCC := $(CC)-3.4.6
95 endif
97 # ifneq ($(STATIC),1)
98 # SIZECHECK = @$(SRCBASE)/btools/sizehistory.pl $@ $(TOMATO_PROFILE_L)_$(notdir $@)
99 # else
100 SIZECHECK = @$(SIZE) $@
101 # endif