Skip to content

Commit 22c76d8

Browse files
Merge branch 'arc-dev' into arc-staging
2 parents 68192a1 + c20c1c9 commit 22c76d8

25 files changed

+2042
-2562
lines changed

Makefile.release

Lines changed: 178 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
##############################################################################
22
# Copyright (C) 2014-2015 Synopsys Inc.
33
#
4-
# Contributor Anton Kolesov <[email protected]>
5-
#
64
# This program is free software; you can redistribute it and/or modify it
75
# under the terms of the GNU General Public License as published by the Free
86
# Software Foundation; either version 3 of the License, or (at your option)
@@ -15,7 +13,6 @@
1513
#
1614
# You should have received a copy of the GNU General Public License along
1715
# with this program. If not, see <http://www.gnu.org/licenses/>.
18-
# This is a script to create prebuilt packages of GNU Toolchain
1916
#
2017
##############################################################################
2118

@@ -26,9 +23,12 @@
2623
#
2724
# 1. Checkout toolchain directory to desired branch. Create tags if needed.
2825
#
29-
# 2. Run "make -f Makefile.release RELEASE=<release>". If you do not want
30-
# build-all.sh to checkout directories, then do "touch
31-
# ../release_output/.stamp_checked_out
26+
# 2. Run "make -f Makefile.release RELEASE=<release> toolchain". If you do not
27+
# want build-all.sh to checkout directories, then do "touch
28+
# ../release_output/.stamp_checked_out before running makefile. Note that
29+
# "toolchain" target will build only toolchain prebuilts, nothing else, but it
30+
# also doesn't have other prerequisites. Target "all" will also build IDE and
31+
# OpenOCD, however this also requires additional preparations.
3232
#
3333

3434
BUILDALLFLAGS := --disable-werror --strip --rel-rpaths --no-auto-pull \
@@ -38,35 +38,48 @@ BUILDALLFLAGS := --disable-werror --strip --rel-rpaths --no-auto-pull \
3838
# Output artifacts
3939
#
4040
O := ../release_output
41-
OS_NAME := linux
42-
SOURCE_TARBALL_CONTENTS :=$(addprefix ../,binutils cgen gcc gdb newlib toolchain uClibc)
43-
SOURCE_TARBALL_TGZ := $O/arc_gnu_$(RELEASE)_sources.tar.gz
44-
# Baremetal toolchain
45-
ELF_LE_NAME := arc_gnu_$(RELEASE)_prebuilt_elf32_le_$(OS_NAME)_install
46-
ELF_BE_NAME := arc_gnu_$(RELEASE)_prebuilt_elf32_be_$(OS_NAME)_install
47-
ELF_LE_DIR := arc-elf32
48-
ELF_BE_DIR := arceb-elf32
49-
ELF_LE_TGZ := $(ELF_LE_NAME).tar.gz
50-
ELF_BE_TGZ := $(ELF_BE_NAME).tar.gz
51-
# Linux toolchain
52-
LINUX_LE_700_NAME := arc_gnu_$(RELEASE)_prebuilt_uclibc_le_arc700_$(OS_NAME)_install
53-
LINUX_LE_HS_NAME := arc_gnu_$(RELEASE)_prebuilt_uclibc_le_archs_$(OS_NAME)_install
54-
LINUX_BE_700_NAME := arc_gnu_$(RELEASE)_prebuilt_uclibc_be_arc700_$(OS_NAME)_install
55-
LINUX_BE_HS_NAME := arc_gnu_$(RELEASE)_prebuilt_uclibc_be_archs_$(OS_NAME)_install
56-
LINUX_LE_700_DIR := arc700-linux
57-
LINUX_BE_700_DIR := arceb700-linux
58-
LINUX_LE_HS_DIR := archs-linux
59-
LINUX_BE_HS_DIR := arcebhs-linux
60-
LINUX_LE_700_TGZ := $(LINUX_LE_700_NAME).tar.gz
61-
LINUX_BE_700_TGZ := $(LINUX_BE_700_NAME).tar.gz
62-
LINUX_LE_HS_TGZ := $(LINUX_LE_HS_NAME).tar.gz
63-
LINUX_BE_HS_TGZ := $(LINUX_BE_HS_NAME).tar.gz
64-
# Baremetal for Windows
65-
WIN_ELF_NAME := arc_gnu_$(RELEASE)_prebuilt_elf32_windows_install
66-
WIN_ELF_LE_DIR := arc_gnu_$(RELEASE)_prebuilt_elf32_windows_install
67-
WIN_ELF_TGZ := $(WIN_ELF_NAME).tar.gz
68-
# Big endian toolchain is installed to same directory as little endian
69-
#WIN_ELF_BE_DIR := $O/arceb-elf32_windows
41+
# Use -a when invoking tar, then we can easily change to .tar.xz if we want.
42+
TAR_EXT := .tar.gz
43+
44+
# Toolchain: source tarball
45+
TOOLS_SOURCE_CONTENTS := $(addprefix ../,binutils cgen gcc gdb newlib toolchain uClibc)
46+
TOOLS_SOURCE_DIR := $O/arc_gnu_$(RELEASE)_sources
47+
48+
# Toolchain: baremetal for Linux hosts
49+
TOOLS_ELFLE_DIR_LINUX := arc_gnu_$(RELEASE)_prebuilt_elf32_le_linux_install
50+
TOOLS_ELFBE_DIR_LINUX := arc_gnu_$(RELEASE)_prebuilt_elf32_be_linux_install
51+
52+
# Toolchain: baremetal for Windows hosts
53+
TOOLS_ELFLE_DIR_WIN := arc_gnu_$(RELEASE)_prebuilt_elf32_le_win_install
54+
TOOLS_ELFBE_DIR_WIN := arc_gnu_$(RELEASE)_prebuilt_elf32_be_win_install
55+
56+
# Toolchain: linux
57+
TOOLS_LINUXLE_700_DIR_LINUX := arc_gnu_$(RELEASE)_prebuilt_uclibc_le_arc700_linux_install
58+
TOOLS_LINUXBE_700_DIR_LINUX := arc_gnu_$(RELEASE)_prebuilt_uclibc_be_arc700_linux_install
59+
TOOLS_LINUXLE_HS_DIR_LINUX := arc_gnu_$(RELEASE)_prebuilt_uclibc_le_archs_linux_install
60+
TOOLS_LINUXBE_HS_DIR_LINUX := arc_gnu_$(RELEASE)_prebuilt_uclibc_be_archs_linux_install
61+
62+
# IDE: vanilla Eclipse variables
63+
ECLIPSE_VERSION := luna-SR2
64+
ECLIPSE_VANILLA_ZIP_WIN := eclipse-cpp-$(ECLIPSE_VERSION)-win32.zip
65+
ECLIPSE_VANILLA_TGZ_LINUX := eclipse-cpp-$(ECLIPSE_VERSION)-linux-gtk-x86_64.tar.gz
66+
# Coma separated list
67+
ECLIPSE_REPO := http://download.eclipse.org/releases/luna
68+
# Coma separated list
69+
ECLIPSE_PREREQ := org.eclipse.tm.terminal.serial,org.eclipse.tm.terminal.view
70+
ECLIPSE_DL_LINK_BASE := http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/luna/SR2
71+
# IDE: output related variables
72+
IDE_INSTALL_LINUX := arc_gnu_$(RELEASE)_ide_linux_install
73+
IDE_TGZ_LINUX := $(IDE_INSTALL_LINUX).tar.gz
74+
IDE_PLUGINS_DIR := arc_gnu_$(RELEASE)_ide_plugins
75+
IDE_PLUGINS_ZIP := $(IDE_PLUGINS_DIR).zip
76+
77+
# OpenOCD
78+
OOCD_DIR_WIN := arc_gnu_$(RELEASE)_openocd_win_install
79+
OOCD_DIR_LINUX := arc_gnu_$(RELEASE)_openocd_linux_install
80+
# Should be created and checked out manually before running this Makefile.
81+
OOCD_SRC_DIR_LINUX := ../openocd
82+
7083
# md5sum
7184
MD5SUM_FILE := md5.sum
7285

@@ -77,19 +90,32 @@ endif
7790
#
7891
# Human friendly aliases
7992
#
80-
.PHONY: checkout source-tarball elf-le-build elf-be-build elf-le elf-be all
93+
.PHONY: checkout source-tarball elf-le-build elf-be-build elf-le elf-be all \
94+
windows ide openocd-win \
95+
openocd openocd-tar openocd-build openocd-install openocd-configure openocd-bootstrap \
96+
toolchain
8197

8298
all: $O/$(MD5SUM_FILE)
8399
@echo "MD5 sums:"
84100
@cat $<
85101

102+
toolchain: \
103+
$O/.stamp_source_tarball \
104+
$O/.stamp_elf_le_tarball $O/.stamp_elf_be_tarball \
105+
$O/.stamp_linux_le_700_tarball $O/.stamp_linux_be_700_tarball \
106+
$O/.stamp_linux_le_hs_tarball $O/.stamp_linux_be_hs_tarball \
107+
$O/.stamp_elf_le_windows_tarball $O/.stamp_elf_be_windows_tarball
108+
86109
$O/$(MD5SUM_FILE): \
87110
$O/.stamp_source_tarball \
88111
$O/.stamp_elf_le_tarball $O/.stamp_elf_be_tarball \
89112
$O/.stamp_linux_le_700_tarball $O/.stamp_linux_be_700_tarball \
90113
$O/.stamp_linux_le_hs_tarball $O/.stamp_linux_be_hs_tarball \
91-
$O/.stamp_elf_windows_tarball
92-
cd $O && md5sum *linux_install.tar.gz *sources.tar.gz *.zip > $@
114+
$O/.stamp_elf_le_windows_tarball $O/.stamp_elf_be_windows_tarball \
115+
$O/$(OOCD_DIR_WIN).zip $O/$(OOCD_DIR_WIN).tar.gz \
116+
$O/.stamp_ide_linux_tar $O/$(IDE_PLUGINS_ZIP) \
117+
$O/$(OOCD_DIR_LINUX).tar.gz
118+
cd $O && md5sum *linux_install.tar.gz *sources.tar.gz *win_install.zip *plugins.zip > $@
93119

94120

95121
checkout: $O/.stamp_checked_out
@@ -104,6 +130,11 @@ elf-le: $O/.stamp_elf_le_tarball
104130

105131
elf-be: $O/.stamp_elf_be_tarball
106132

133+
windows: $O/.stamp_elf_le_windows_tarball $O/.stamp_elf_be_windows_tarball
134+
135+
ide: $O/.stamp_ide_linux_tar $O/$(IDE_PLUGINS_ZIP)
136+
137+
107138
#
108139
# Real targets
109140
#
@@ -119,90 +150,170 @@ $O/.stamp_checked_out: | $O
119150
# Create source tarball
120151
.NOTPARALLEL: $O/.stamp_source_tarball
121152
$O/.stamp_source_tarball: $O/.stamp_checked_out
122-
tar --exclude-vcs -c -z -f $(SOURCE_TARBALL_TGZ) --exclude=$O --transform="s|^|arc_gnu_$(RELEASE)_sources/|" $(SOURCE_TARBALL_CONTENTS)
153+
tar --exclude-vcs -c -z -f $(TOOLS_SOURCE_DIR)$(TAR_EXT) --exclude=$O \
154+
--transform="s|^|arc_gnu_$(RELEASE)_sources/|" $(TOOLS_SOURCE_CONTENTS)
123155
touch $@
124156

125157
$O/.stamp_elf_le_built: $O/.stamp_checked_out
126-
./build-all.sh $(BUILDALLFLAGS) --install-dir $O/$(ELF_LE_DIR) \
158+
./build-all.sh $(BUILDALLFLAGS) --install-dir $O/$(TOOLS_ELFLE_DIR_LINUX) \
127159
--no-uclibc --release-name $(RELEASE)
128160
touch $@
129161

130162
$O/.stamp_elf_be_built: $O/.stamp_checked_out
131-
./build-all.sh $(BUILDALLFLAGS) --install-dir $O/$(ELF_BE_DIR) \
163+
./build-all.sh $(BUILDALLFLAGS) --install-dir $O/$(TOOLS_ELFBE_DIR_LINUX) \
132164
--no-uclibc --release-name $(RELEASE) --big-endian
133165
touch $@
134166

135167
$O/.stamp_elf_le_tarball: $O/.stamp_elf_le_built
136-
cd $O && tar czf $(ELF_LE_TGZ) --transform='s#$(ELF_LE_DIR)#$(ELF_LE_NAME)#' $(ELF_LE_DIR)/
168+
cd $O && tar czf $(TOOLS_ELFLE_DIR_LINUX)$(TAR_EXT) $(TOOLS_ELFLE_DIR_LINUX)/
137169
touch $@
138170

139171
$O/.stamp_elf_be_tarball: $O/.stamp_elf_be_built
140-
cd $O && tar czf $(ELF_BE_TGZ) --transform='s#$(ELF_BE_DIR)#$(ELF_BE_NAME)#' $(ELF_BE_DIR)/
172+
cd $O && tar czf $(TOOLS_ELFBE_DIR_LINUX)$(TAR_EXT) $(TOOLS_ELFBE_DIR_LINUX)/
141173
touch $@
142174

143175
$O/.stamp_linux_le_700_built: $O/.stamp_checked_out
144-
./build-all.sh $(BUILDALLFLAGS) --install-dir $O/$(LINUX_LE_700_DIR) \
176+
./build-all.sh $(BUILDALLFLAGS) --install-dir $O/$(TOOLS_LINUXLE_700_DIR_LINUX) \
145177
--no-elf32 --release-name $(RELEASE) --cpu arc700
146178
touch $@
147179

148180
$O/.stamp_linux_le_hs_built: $O/.stamp_checked_out
149-
./build-all.sh $(BUILDALLFLAGS) --install-dir $O/$(LINUX_LE_HS_DIR) \
181+
./build-all.sh $(BUILDALLFLAGS) --install-dir $O/$(TOOLS_LINUXLE_HS_DIR_LINUX) \
150182
--no-elf32 --release-name $(RELEASE) --cpu archs
151183
touch $@
152184

153185
$O/.stamp_linux_be_700_built: $O/.stamp_checked_out
154-
./build-all.sh $(BUILDALLFLAGS) --install-dir $O/$(LINUX_BE_700_DIR) \
186+
./build-all.sh $(BUILDALLFLAGS) --install-dir $O/$(TOOLS_LINUXBE_700_DIR_LINUX) \
155187
--no-elf32 --release-name $(RELEASE) --big-endian --cpu arc700
156188
touch $@
157189

158190
$O/.stamp_linux_be_hs_built: $O/.stamp_checked_out
159-
./build-all.sh $(BUILDALLFLAGS) --install-dir $O/$(LINUX_BE_HS_DIR) \
191+
./build-all.sh $(BUILDALLFLAGS) --install-dir $O/$(TOOLS_LINUXBE_HS_DIR_LINUX) \
160192
--no-elf32 --release-name $(RELEASE) --big-endian --cpu archs
161193
touch $@
162194

163195
$O/.stamp_linux_le_700_tarball: $O/.stamp_linux_le_700_built
164-
cd $O && tar czf $(LINUX_LE_700_TGZ) --transform='s#$(LINUX_LE_700_DIR)#$(LINUX_LE_700_NAME)#' $(LINUX_LE_700_DIR)/
196+
cd $O && tar czf $(TOOLS_LINUXLE_700_DIR_LINUX)$(TAR_EXT) \
197+
$(TOOLS_LINUXLE_700_DIR_LINUX)/
165198
touch $@
166199

167200
$O/.stamp_linux_le_hs_tarball: $O/.stamp_linux_le_hs_built
168-
cd $O && tar czf $(LINUX_LE_HS_TGZ) --transform='s#$(LINUX_LE_HS_DIR)#$(LINUX_LE_HS_NAME)#' $(LINUX_LE_HS_DIR)/
201+
cd $O && tar czf $(TOOLS_LINUXLE_HS_DIR_LINUX)$(TAR_EXT) \
202+
$(TOOLS_LINUXLE_HS_DIR_LINUX)/
169203
touch $@
170204

171205
$O/.stamp_linux_be_700_tarball: $O/.stamp_linux_be_700_built
172-
cd $O && tar czf $(LINUX_BE_700_TGZ) --transform='s#$(LINUX_BE_700_DIR)#$(LINUX_BE_700_NAME)#' $(LINUX_BE_700_DIR)/
206+
cd $O && tar czf $(TOOLS_LINUXBE_700_DIR_LINUX)$(TAR_EXT) \
207+
$(TOOLS_LINUXBE_700_DIR_LINUX)/
173208
touch $@
174209

175210
$O/.stamp_linux_be_hs_tarball: $O/.stamp_linux_be_hs_built
176-
cd $O && tar czf $(LINUX_BE_HS_TGZ) --transform='s#$(LINUX_BE_HS_DIR)#$(LINUX_BE_HS_NAME)#' $(LINUX_BE_HS_DIR)/
211+
cd $O && tar czf $(TOOLS_LINUXBE_HS_DIR_LINUX)$(TAR_EXT) \
212+
$(TOOLS_LINUXBE_HS_DIR_LINUX)/
177213
touch $@
178214

179215
#
180216
# Windows build
181217
#
182-
build-elf32-windows.sh: windows-installer/build-elf32_windows.patch build-elf32.sh $O/.stamp_source_tarball
183-
patch -p1 -o $@ < $<
184-
chmod u+x $@
218+
$O/.stamp_elf_le_windows_built: $O/.stamp_checked_out $O/.stamp_elf_le_built
219+
PATH=$(shell readlink -e $O/$(TOOLS_ELFLE_DIR_LINUX)/bin):$$PATH \
220+
./build-all.sh $(BUILDALLFLAGS) \
221+
--install-dir $O/$(TOOLS_ELFLE_DIR_WIN) --no-uclibc --no-sim \
222+
--release-name $(RELEASE) --host i686-w64-mingw32
223+
touch $@
224+
225+
$O/.stamp_elf_be_windows_built: $O/.stamp_checked_out $O/.stamp_elf_be_built
226+
# Install toolchain in the same dir as little endian
227+
PATH=$(shell readlink -e $O/$(TOOLS_ELFBE_DIR_LINUX))/bin:$$PATH \
228+
./build-all.sh $(BUILDALLFLAGS) \
229+
--install-dir $O/$(TOOLS_ELFBE_DIR_WIN) --no-uclibc --big-endian --no-sim \
230+
--release-name $(RELEASE) --host i686-w64-mingw32
231+
touch $@
185232

186-
build-all-windows.sh: build-all.sh | build-elf32-windows.sh $O/.stamp_source_tarball
187-
sed -e 's/build-elf32.sh/build-elf32-windows.sh/' <$< >$@
188-
chmod +x $@
233+
$O/.stamp_elf_le_windows_tarball: $O/.stamp_elf_le_windows_built
234+
cd $O && tar czf $(TOOLS_ELFLE_DIR_WIN)$(TAR_EXT) $(TOOLS_ELFLE_DIR_WIN)/
235+
cd $O && zip -q -r $(TOOLS_ELFLE_DIR_WIN).zip $(TOOLS_ELFLE_DIR_WIN)/
236+
touch $@
189237

190-
$O/.stamp_elf_le_windows_built: $O/.stamp_checked_out build-all-windows.sh $O/.stamp_elf_le_built
191-
PATH=$(shell readlink -e $O/$(ELF_LE_DIR)/bin):$$PATH ./build-all-windows.sh $(BUILDALLFLAGS) \
192-
--install-dir $O/$(WIN_ELF_LE_DIR) --no-uclibc --no-sim --release-name $(RELEASE)
238+
$O/.stamp_elf_be_windows_tarball: $O/.stamp_elf_be_windows_built
239+
cd $O && tar czf $(TOOLS_ELFBE_DIR_WIN)$(TAR_EXT) $(TOOLS_ELFBE_DIR_WIN)/
240+
cd $O && zip -q -r $(TOOLS_ELFBE_DIR_WIN).zip $(TOOLS_ELFBE_DIR_WIN)/
193241
touch $@
194242

195-
$O/.stamp_elf_be_windows_built: $O/.stamp_checked_out build-all-windows.sh $O/.stamp_elf_be_built
196-
# We install toolchain in the same dir as little endian
197-
PATH=$(shell readlink -e $O/$(ELF_BE_DIR))/bin:$$PATH ./build-all-windows.sh $(BUILDALLFLAGS) \
198-
--install-dir $O/$(WIN_ELF_LE_DIR) --no-uclibc --big-endian --no-sim --release-name $(RELEASE)
243+
#
244+
# IDE related targets
245+
#
246+
$O/$(IDE_PLUGINS_ZIP): $O/$(IDE_PLUGINS_DIR)
247+
cd $O/$(IDE_PLUGINS_DIR) && zip -q -r ../$(IDE_PLUGINS_ZIP) *
248+
249+
$O/$(ECLIPSE_VANILLA_TGZ_LINUX):
250+
wget -nv -O $@ '$(ECLIPSE_DL_LINK_BASE)/$(ECLIPSE_VANILLA_TGZ_LINUX)&r=1'
251+
252+
$O/$(ECLIPSE_VANILLA_ZIP_WIN):
253+
wget -nv -O $@ '$(ECLIPSE_DL_LINK_BASE)/$(ECLIPSE_VANILLA_ZIP_WIN)&r=1'
254+
255+
$O/.stamp_ide_linux_eclipse: $O/$(ECLIPSE_VANILLA_TGZ_LINUX)
256+
mkdir -p $O/$(IDE_INSTALL_LINUX)
257+
tar xaf $< -C $O/$(IDE_INSTALL_LINUX)
258+
$O/$(IDE_INSTALL_LINUX)/eclipse/eclipse \
259+
-application org.eclipse.equinox.p2.director \
260+
-noSplash \
261+
-repository $(ECLIPSE_REPO),file://$(realpath $O/$(IDE_PLUGINS_DIR)) \
262+
-installIU $(ECLIPSE_PREREQ),com.arc.cdt.feature.feature.group
199263
touch $@
200264

201-
$O/.stamp_elf_windows_tarball: $O/.stamp_elf_le_windows_built $O/.stamp_elf_be_windows_built
202-
cd $O && tar czf $(WIN_ELF_TGZ) --transform='s#$(WIN_ELF_LE_DIR)#$(WIN_ELF_NAME)#' $(WIN_ELF_LE_DIR)/
203-
cd $O && zip -q -r $(WIN_ELF_NAME).zip $(WIN_ELF_LE_DIR)/
265+
$O/.stamp_ide_linux_tar: \
266+
$O/$(OOCD_DIR_LINUX)/bin/openocd \
267+
$O/.stamp_ide_linux_eclipse \
268+
$O/.stamp_elf_be_built $O/.stamp_elf_le_built \
269+
$O/.stamp_linux_be_hs_built $O/.stamp_linux_le_hs_built
270+
cp -ad $O/$(TOOLS_ELFLE_DIR_LINUX)/* $O/$(IDE_INSTALL_LINUX)
271+
cp -ad $O/$(TOOLS_ELFBE_DIR_LINUX)/* $O/$(IDE_INSTALL_LINUX)
272+
cp -ad $O/$(TOOLS_LINUXLE_HS_DIR_LINUX)/* $O/$(IDE_INSTALL_LINUX)
273+
cp -ad $O/$(TOOLS_LINUXBE_HS_DIR_LINUX)/* $O/$(IDE_INSTALL_LINUX)
274+
mkdir $O/$(IDE_INSTALL_LINUX)/eclipse/jre
275+
tar xaf $O/jre-*-linux-x64.tar.gz -C $O/$(IDE_INSTALL_LINUX)/eclipse/jre \
276+
--strip-components=1
277+
cp -ad $O/$(OOCD_DIR_LINUX)/* $O/$(IDE_INSTALL_LINUX)
278+
tar caf $O/$(IDE_TGZ_LINUX) -C $O $(IDE_INSTALL_LINUX)
204279
touch $@
205280

281+
#
282+
# OpenOCD
283+
#
284+
openocd: $(OOCD_SRC_DIR_LINUX)/src/openocd
285+
openocd-bootstrap: $(OOCD_SRC_DIR_LINUX)/configure
286+
openocd-configure: $(OOCD_SRC_DIR_LINUX)/Makefile
287+
openocd-build: $(OOCD_SRC_DIR_LINUX)/src/openocd
288+
openocd-install: $(OOCD_DIR_LINUX)/bin/openocd
289+
openocd-tar: $O/$(OOCD_DIR_LINUX).tar.gz
290+
openocd: openocd-tar
291+
292+
$(OOCD_SRC_DIR_LINUX)/configure:
293+
cd $(OOCD_SRC_DIR_LINUX) && ./bootstrap
294+
295+
$(OOCD_SRC_DIR_LINUX)/Makefile: $(OOCD_SRC_DIR_LINUX)/configure
296+
cd $(OOCD_SRC_DIR_LINUX) && ./configure --enable-ftdi --disable-werror \
297+
--prefix=$(abspath $O/$(OOCD_DIR_LINUX))
298+
299+
$(OOCD_SRC_DIR_LINUX)/src/openocd: $(OOCD_SRC_DIR_LINUX)/Makefile
300+
$(MAKE) -C $(OOCD_SRC_DIR_LINUX) all pdf
301+
302+
$O/$(OOCD_DIR_LINUX)/bin/openocd: $(OOCD_SRC_DIR_LINUX)/src/openocd
303+
$(MAKE) -C $(OOCD_SRC_DIR_LINUX) install install-pdf
304+
305+
$O/$(OOCD_DIR_LINUX).tar.gz: $O/$(OOCD_DIR_LINUX)/bin/openocd
306+
tar -C $O -caf $O/$(OOCD_DIR_LINUX).tar.gz $(OOCD_DIR_LINUX)/
307+
308+
# Make OpenOCD for Windows zip file.
309+
openocd-win: $O/$(OOCD_DIR_WIN).zip $O/$(OOCD_DIR_WIN).tar.gz
310+
311+
$O/$(OOCD_DIR_WIN).zip: $O/$(OOCD_DIR_WIN)
312+
cd $O && zip -q -r $(OOCD_DIR_WIN).zip $(OOCD_DIR_WIN)/
313+
314+
$O/$(OOCD_DIR_WIN).tar.gz: $O/$(OOCD_DIR_WIN)
315+
tar -C $O -caf $O/$(OOCD_DIR_WIN).tar.gz $(OOCD_DIR_WIN)/
316+
206317
#
207318
# Clean
208319
#

0 commit comments

Comments
 (0)