root/trunk/freewrt/mk/vars.mk

Revision 3818, 8.7 kB (checked in by tg, 1 month ago)

prefix paxmirabilis tools, WFM

Line 
1 # $FreeWRT$
2 #-
3 # This file is part of the FreeWRT project. FreeWRT is copyrighted
4 # material, please see the LICENCE file in the top-level directory
5 # or at http://www.freewrt.org/licence for details.
6 #-
7 # Note: if this file ever doesn't work on both GNU and BSD make,
8 # I'll use 'svn blame' and get to you personally ;-)
9
10 CP=                     cp -fpR
11 PCP=                    mirpax -v -rw -pe
12 INSTALL_DIR=            install -d -m0755
13 INSTALL_DATA=           install -m0644
14 INSTALL_BIN=            install -m0755
15 INSTALL_SCRIPT=         install -m0755
16 MAKEFLAGS=              V=99 $(EXTRA_MAKEFLAGS)
17 BUILD_USER=             $(shell id -un)
18 BUILD_GROUP=            $(shell id -gn)
19 BMAKE=                  ${TOPDIR}/lbin/bmake
20 BSDMAKE_FLAGS+=         BINOWN=${BUILD_USER} BINGRP=${BUILD_GROUP}
21 BSDMAKE_FLAGS+=         LIBOWN=${BUILD_USER} LIBGRP=${BUILD_GROUP}
22 BSDMAKE_FLAGS+=         SHAREOWN=${BUILD_USER} SHAREGRP=${BUILD_GROUP}
23 BSDMAKE_FLAGS+=         MANOWN=${BUILD_USER} MANGRP=${BUILD_GROUP}
24 BSDMAKE_FLAGS+=         DOCOWN=${BUILD_USER} DOCGRP=${BUILD_GROUP}
25 BSDMAKE_FLAGS+=         NONBINMODE=0644 BINMODE=0755 CONFGRP=${BUILD_GROUP}
26 BSDMAKE_FLAGS+=         MACHINE=${ARCH} MACHINE_ARCH=${ARCH} OStype=Linux
27 BSDMAKE_FLAGS+=         RTLD_TYPE=GNU STRIP=: INSTALL_STRIP= OBJECT_FMT=ELF
28 BSDMAKE_FLAGS+=         HOSTCC='${HOSTCC}' HOSTLDFLAGS='${HOSTLDFLAGS}' \
29                         HOSTCFLAGS='${HOSTCPPFLAGS} ${HOSTCFLAGS}'
30 BSDMAKE=                env MAKEFLAGS=V=99 MFLAGS= BSDOBJDIR='${BUILD_DIR}' \
31                         LD='${TARGET_CROSS}ld' ${BMAKE} ${BSDMAKE_FLAGS}
32
33 TARGET_CFLAGS:=         $(TARGET_OPTIMIZATION) $(TARGET_DEBUGGING)
34 OPTIMIZE_FOR_CPU=       $(ARCH)
35
36 BASE_DIR:=              $(TOPDIR)
37 DISTDIR?=               ${BASE_DIR}/dl
38 DIST_SUBDIR?=
39 LOCAL_DISTDIR?=
40 BUILD_DIR:=             $(BASE_DIR)/build_$(ARCH)$(ARCH_FPU_SUFFIX)
41 STAGING_PARENT:=        ${BASE_DIR}/cross_${ARCH}${ARCH_FPU_SUFFIX}
42 STAGING_TOOLS:=         ${STAGING_PARENT}/host
43 STAGING_DIR:=           ${STAGING_PARENT}/target
44 TOOLCHAIN_BUILD_DIR=    $(BASE_DIR)/toolchain_build_$(ARCH)$(ARCH_FPU_SUFFIX)
45 TOOLS_DIR=              $(BASE_DIR)/tools
46 TOOLS_BUILD_DIR=        $(BASE_DIR)/tools_build
47 SCRIPT_DIR:=            $(BASE_DIR)/scripts
48 BIN_DIR:=               $(BASE_DIR)/bin_${ARCH}
49 LBIN_DIR:=              $(BASE_DIR)/lbin
50 PACKAGE_DIR:=           $(BIN_DIR)/packages
51 TARGET_DIR:=            $(BUILD_DIR)/root
52 IMAGE:=                 $(BUILD_DIR)/root_fs_$(ARCH)$(ARCH_FPU_SUFFIX)
53 REAL_GNU_TARGET_NAME=   $(OPTIMIZE_FOR_CPU)-linux-uclibc
54 GNU_TARGET_NAME=        $(OPTIMIZE_FOR_CPU)-linux
55 TARGET_PATH=            ${LBIN_DIR}:${STAGING_TOOLS}/bin:${STAGING_DIR}/scripts:${_PATH}
56 KERNEL_CROSS:=          $(STAGING_TOOLS)/bin/$(OPTIMIZE_FOR_CPU)-linux-uclibc-
57 TARGET_CROSS:=          $(STAGING_TOOLS)/bin/$(OPTIMIZE_FOR_CPU)-linux-uclibc-
58 TARGET_COMPILER_PREFIX?=${TARGET_CROSS}
59 TARGET_CC:=             ${TARGET_COMPILER_PREFIX}gcc
60 TARGET_CXX:=            ${TARGET_COMPILER_PREFIX}g++
61 TARGET_CPPFLAGS+=       -isystem ${STAGING_DIR}/include \
62                         -isystem ${STAGING_DIR}/usr/include
63 TARGET_LDFLAGS+=        -Wl,-O2
64 PATCH=                  ${MBSH} $(SCRIPT_DIR)/patch-kernel.sh
65 SED:=                   $(STAGING_TOOLS)/bin/sed -i -e
66 LINUX_DIR:=             $(BUILD_DIR)/linux
67 LINUX_HEADERS_DIR:=     $(TOOLCHAIN_BUILD_DIR)/linux
68
69 TARGET_CONFIGURE_OPTS=  PATH='${TARGET_PATH}' \
70                         AR=$(TARGET_CROSS)ar \
71                         AS=$(TARGET_CROSS)as \
72                         LD=$(TARGET_CROSS)ld \
73                         NM=$(TARGET_CROSS)nm \
74                         CC="$(TARGET_CC)" \
75                         GCC="$(TARGET_CC)" \
76                         CXX="$(TARGET_CXX)" \
77                         RANLIB=$(TARGET_CROSS)ranlib
78 HOST_CONFIGURE_OPTS=    CC_FOR_BUILD='${HOSTCC}' \
79                         CFLAGS_FOR_BUILD='${HOSTCFLAGS}' \
80                         CPPFLAGS_FOR_BUILD='${HOSTCPPFLAGS}' \
81                         LDFLAGS_FOR_BUILD='${HOSTLDFLAGS}'
82
83 # invoke ipkg-build with some default options
84 IPKG_BUILD:=            PATH='${TARGET_PATH}' ${MBSH} \
85                             ${TOPDIR}/scripts/ipkg-build -c -o 0 -g 0
86 # where to build (and put) .ipk packages
87 IPKG_TARGET_DIR:=       $(PACKAGE_DIR)
88 IPKG:=                  IPKG_TMP=$(BUILD_DIR)/tmp IPKG_INSTROOT=$(TARGET_DIR) \
89                         IPKG_CONF_DIR=$(STAGING_DIR)/etc \
90                         IPKG_OFFLINE_ROOT=$(BUILD_DIR)/root \
91                         ${MBSH} ${SCRIPT_DIR}/ipkg -force-defaults -force-depends
92 IPKG_STATE_DIR:=        $(TARGET_DIR)/usr/lib/ipkg
93
94 RSTRIP:=                prefix='${TARGET_CROSS}' ${MBSH} ${SCRIPT_DIR}/rstrip.sh
95
96 EXTRACT_CMD=            mkdir -p ${WRKDIR}; \
97                         cd ${WRKDIR} && \
98                         for file in ${FULLDISTFILES}; do case $$file in \
99                         *.cpio | *.tar) \
100                                 mirpax -r -s '!/\.$$!!' <$$file ;; \
101                         *.cpio.Z | *.cpio.gz | *.cgz | *.mcz | \
102                             *.tar.Z | *.tar.gz | *.taz | *.tgz) \
103                                 gzip -dc $$file | mirpax -r -s '!/\.$$!!' ;; \
104                         *.cpio.bz2 | *.cbz | *.tar.bz2 | *.tbz | *.tbz2) \
105                                 bzip2 -dc $$file | mirpax -r -s '!/\.$$!!' ;; \
106                         *.zip) \
107                                 unzip -d ${WRKDIR} $$file ;; \
108                         *) \
109                                 echo "Cannot extract '$$file'" >&2; \
110                                 false ;; \
111                         esac; done
112
113 FETCH_CMD?=             wget -t1 --timeout=20
114 MASTER_SITE_BACKUP?=    ${MASTER_SITE_FREEWRT}
115
116 MASTER_SITE_FREEWRT?=   \
117         http://www.freewrt.org/distfiles/ \
118
119 MASTER_SITE_MIRBSD?=    \
120         http://www.mirbsd.org/MirOS/distfiles/ \
121         http://pub.allbsd.org/MirOS/distfiles/ \
122
123 MASTER_SITE_GNU?=       \
124         http://ftp.gnu.org/gnu/ \
125         ftp://ftp.gnu.org/gnu/ \
126         ftp://ftp.funet.fi/pub/gnu/prep/ \
127         ftp://mirrors.usc.edu/pub/gnu/ \
128         ftp://ftp.cs.tu-berlin.de/pub/gnu/ \
129         ftp://aeneas.mit.edu/pub/gnu/ \
130         ftp://mirrors.dotsrc.org/gnu/ \
131         ftp://ftp.wustl.edu/pub/gnu/ \
132         ftp://ftp.kddilabs.jp/GNU/ \
133         ftp://ftp.mirror.ac.uk/sites/ftp.gnu.org/gnu/ \
134         ftp://sunsite.org.uk/package/gnu/ \
135         ftp://ftp.informatik.hu-berlin.de/pub/gnu/ \
136         ftp://ftp.rediris.es/mirror/gnu/gnu/ \
137         ftp://ftp.cs.univ-paris8.fr/mirrors/ftp.gnu.org/ \
138         ftp://ftp.chg.ru/pub/gnu/ \
139         ftp://ftp.uvsq.fr/pub/gnu/ \
140         ftp://ftp.sunet.se/pub/gnu/ \
141
142 MASTER_SITE_SOURCEFORGE?=       \
143         http://easynews.dl.sourceforge.net/sourceforge/ \
144         http://puzzle.dl.sourceforge.net/sourceforge/ \
145         http://optusnet.dl.sourceforge.net/sourceforge/ \
146         http://heanet.dl.sourceforge.net/sourceforge/ \
147         http://jaist.dl.sourceforge.net/sourceforge/ \
148         http://nchc.dl.sourceforge.net/sourceforge/ \
149         http://switch.dl.sourceforge.net/sourceforge/ \
150         http://kent.dl.sourceforge.net/sourceforge/ \
151         http://internap.dl.sourceforge.net/sourceforge/ \
152         http://mesh.dl.sourceforge.net/sourceforge/ \
153         http://ovh.dl.sourceforge.net/sourceforge/ \
154         http://surfnet.dl.sourceforge.net/sourceforge/ \
155         http://ufpr.dl.sourceforge.net/sourceforge/ \
156
157 MASTER_SITE_MYSQL?=             \
158         ftp://ftp.fu-berlin.de/unix/databases/mysql/ \
159         http://sunsite.informatik.rwth-aachen.de/mysql/ \
160         http://mysql.easynet.be/ \
161         http://mysql.blic.net/ \
162         http://mysql.online.bg/ \
163         http://mysql.mirrors.cybercity.dk/ \
164         http://mirrors.dotsrc.org/mysql/ \
165         http://mysql.tonnikala.org/ \
166         ftp://ftp.inria.fr/pub/MySQL/ \
167         http://mirrors.ircam.fr/pub/mysql/ \
168         http://mirrors.ee.teiath.gr/mysql/ \
169         http://mysql.sote.hu/ \
170         http://mysql.mirrors.crysys.hit.bme.hu/ \
171         http://na.mirror.garr.it/mirrors/MySQL/ \
172         http://mysql.bst.lt/ \
173         http://mysql.proserve.nl/ \
174         http://mirror.hostfuss.com/mysql/ \
175         http://mysql.mirrors.webazilla.nl/ \
176         http://mirror.dinpris.com/mysql/ \
177         http://mysql.nfsi.pt/ \
178         http://lisa.gov.pt/ftp/mysql/ \
179         ftp://mirrors.fibernet.ro/1/MySQL/ \
180         http://mysql.ran.ro/ \
181         http://mysql.directnet.ru/ \
182         ftp://ftp.dn.ru/pub/MySQL/ \
183         http://mysql.dn.ru/ \
184         http://mysql.mix.su/ \
185         http://www.fastmirrors.org/mysql/ \
186         http://mirrors.bevc.net/mysql/ \
187         http://www.wsection.com/mysql/ \
188         http://mysql.paknet.org/ \
189         http://mysql.rediris.es/ \
190         http://mysql.dataphone.se/ \
191         http://mirror.switch.ch/ftp/mirror/mysql/ \
192         ftp://ftp.solnet.ch/mirror/mysql/ \
193         http://mysql.net.ua/ \
194         ftp://ftp.tlk-l.net/pub/mirrors/mysql.com/ \
195         http://mysql.infocom.ua/ \
196         http://www.mirrorservice.org/sites/ftp.mysql.com/ \
197         http://mirrors.dedipower.com/www.mysql.com/ \
198         http://www.mirror.ac.uk/mirror/www.mysql.org/ \
199         http://mysql.mirror.rafal.ca/ \
200         http://mysql.serenitynet.com/ \
201         ftp://mirror.mcs.anl.gov/pub/mysql/ \
202         http://mirror.services.wisc.edu/mysql/ \
203         http://mysql.orst.edu/ \
204         http://mysql.he.net/ \
205         http://mysql.mirrors.pair.com/ \
206         http://mysql.mirror.redwire.net/ \
207         http://mysql.mirrors.hoobly.com/ \
208         http://mirror.trouble-free.net/mysql_mirror/ \
209         http://mirrors.24-7-solutions.net/pub/mysql/ \
210         http://www.stathy.com/mysql/ \
211         http://mirror.x10.com/mirror/mysql/ \
212         http://mysql.localhost.net.ar/ \
213         http://mirrors.uol.com.br/pub/mysql/ \
214         http://mysql.vision.cl/ \
215         http://mysql.tecnoera.com/ \
216         http://mysql.mirrors.arminco.com/ \
217         http://mysqlmirror.netandhost.in/ \
218         http://mirror.mysql-partners-jp.biz/ \
219         http://ftp.iij.ad.jp/pub/db/mysql/ \
220         http://mysql.oss.eznetsols.org/ \
221         http://mysql.holywar.net/ \
222         http://mysql.new21.com/ \
223         http://mysql.byungsoo.net/ \
224         http://mysql.isu.edu.tw/ \
225         http://mysql.cdpa.nsysu.edu.tw/ \
226         http://mysql.cs.pu.edu.tw/ \
227         http://ftp.stu.edu.tw/pub/Unix/Database/Mysql/ \
228         http://mysql.ntu.edu.tw/ \
229         http://mysql.planetmirror.com/ \
230         http://mysql.mirrors.ilisys.com.au/ \
231         http://mysql.inspire.net.nz/ \
232         http://mysql.mirror.ac.za/ \
233 #       http://ftp.plusline.de/mysql/ \
234
235 MASTER_SITE_GNOME+=     \
236         ftp://ftp.acc.umu.se/pub/GNOME/ \
237         ftp://ftp.rpmfind.net/linux/gnome.org/ \
238         ftp://ftp.unina.it/pub/linux/GNOME/ \
239         ftp://ftp.belnet.be/mirror/ftp.gnome.org/ \
240         ftp://ftp.dit.upm.es/linux/gnome/ \
241         ftp://ftp.dataplus.se/pub/linux/gnome/ \
242         ftp://ftp.cse.buffalo.edu/pub/Gnome/ \
243         ftp://ftp.linux.org.uk/mirrors/ftp.gnome.org/ \
244         ftp://ftp.gnome.org/pub/GNOME/ \
245
Note: See TracBrowser for help on using the browser.