Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Revision: 8721a12
Author: Liviu Ionescu
Date: 2017-09-03 00:57:08
[ilg-archived#16]; remove duplicate Makefile lines
  • Loading branch information
besonzore committed Oct 1, 2017
1 parent 23282d7 commit 3220742
Show file tree
Hide file tree
Showing 77 changed files with 1,377 additions and 1,561 deletions.
70 changes: 51 additions & 19 deletions Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -5,22 +5,45 @@ AUTOMAKE_OPTIONS = gnu 1.6
# make sure we pass the correct jimtcl flags to distcheck
DISTCHECK_CONFIGURE_FLAGS = --disable-install-jim

# do not run Jim Tcl tests (esp. during distcheck)
check-recursive:
@true

nobase_dist_pkgdata_DATA = \
contrib/libdcc/dcc_stdio.c \
contrib/libdcc/dcc_stdio.h \
contrib/libdcc/example.c \
contrib/libdcc/README \
contrib/99-openocd.rules
contrib/60-openocd.rules

if INTERNAL_JIMTCL
SUBDIRS = jimtcl
else
SUBDIRS =
DIST_SUBDIRS =
bin_PROGRAMS =
noinst_LTLIBRARIES =
info_TEXINFOS =
dist_man_MANS =
EXTRA_DIST =

if INTERNAL_JIMTCL
SUBDIRS += jimtcl
DIST_SUBDIRS += jimtcl
endif

SUBDIRS += src doc
# common flags used in openocd build
AM_CFLAGS = $(GCC_WARNINGS)

AM_CPPFLAGS = $(HOST_CPPFLAGS)\
-I$(top_srcdir)/src \
-I$(top_builddir)/src \
-I$(top_srcdir)/src/helper \
-DPKGDATADIR=\"$(pkgdatadir)\" \
-DBINDIR=\"$(bindir)\"

EXTRA_DIST = \
if INTERNAL_JIMTCL
AM_CPPFLAGS += -I$(top_srcdir)/jimtcl \
-I$(top_builddir)/jimtcl
endif
EXTRA_DIST += \
BUGS \
HACKING \
NEWTAPS \
Expand Down Expand Up @@ -96,17 +119,26 @@ distclean-local:

DISTCLEANFILES = doxygen.log

METASOURCES = AUTO

BUILT_SOURCES =
CLEANFILES =

MAINTAINERCLEANFILES = \
$(srcdir)/INSTALL \
$(srcdir)/configure \
$(srcdir)/Makefile.in \
$(srcdir)/depcomp \
$(srcdir)/config.guess \
$(srcdir)/config.sub \
$(srcdir)/config.h.in \
$(srcdir)/config.h.in~ \
$(srcdir)/compile \
$(srcdir)/ltmain.sh \
$(srcdir)/missing \
$(srcdir)/aclocal.m4 \
$(srcdir)/install-sh
%D%/INSTALL \
%D%/configure \
%D%/Makefile.in \
%D%/depcomp \
%D%/config.guess \
%D%/config.sub \
%D%/config.h.in \
%D%/config.h.in~ \
%D%/compile \
%D%/ltmain.sh \
%D%/missing \
%D%/aclocal.m4 \
%D%/install-sh \
%D%/texinfo.tex

include src/Makefile.am
include doc/Makefile.am
2 changes: 1 addition & 1 deletion NEWTAPS
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ This is always a 32bit hex number.
Examples:
0x1f0f0f0f - is an old ARM7TDMI
0x3f0f0f0f - is a newer ARM7TDMI
0x3ba00477 - is an ARM cortex M3
0x3ba00477 - is an ARM Cortex-M3

Some chips have multiple JTAG taps - be sure to list
each one individually - ORDER is important!
Expand Down
59 changes: 8 additions & 51 deletions README
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Welcome to OpenOCD!
OpenOCD provides on-chip programming and debugging support with a
layered architecture of JTAG interface and TAP support including:

- (X)SVF playback to faciliate automated boundary scan and FPGA/CPLD
- (X)SVF playback to facilitate automated boundary scan and FPGA/CPLD
programming;
- debug target support (e.g. ARM, MIPS): single-stepping,
breakpoints/watchpoints, gprof profiling, etc;
Expand Down Expand Up @@ -45,9 +45,6 @@ e.g.:
openocd -f interface/stlink-v2-1.cfg -c "transport select hla_swd" \
-f target/stm32l0.cfg

NB: when using an FTDI-based adapter you should prefer configs in the
ftdi directory; the old configs for the ft2232 are deprecated.

After OpenOCD startup, connect GDB with

(gdb) target extended-remote localhost:3333
Expand Down Expand Up @@ -119,18 +116,18 @@ Wiggler, XDS100v2, Xverve.
Debug targets
-------------

ARM11, ARM7, ARM9, AVR32, Cortex-A, Cortex-R, Cortex-M,
ARM11, ARM7, ARM9, AVR32, Cortex-A, Cortex-R, Cortex-M, LS102x-SAP,
Feroceon/Dragonite, DSP563xx, DSP5680xx, FA526, MIPS EJTAG, NDS32,
XScale, Intel Quark.

Flash drivers
-------------

ADUC702x, AT91SAM, AVR, CFI, DSP5680xx, EFM32, EM357, FM3, Kinetis,
ADUC702x, AT91SAM, ATH79, AVR, CFI, DSP5680xx, EFM32, EM357, FM3, FM4, Kinetis,
LPC8xx/LPC1xxx/LPC2xxx/LPC541xx, LPC2900, LPCSPIFI, Marvell QSPI,
Milandr, NIIET, NuMicro, PIC32mx, PSoC4, SiM3x, Stellaris, STM32, STMSMI,
STR7x, STR9x, nRF51; NAND controllers of AT91SAM9, LPC3180, LPC32xx,
i.MX31, MXC, NUC910, Orion/Kirkwood, S3C24xx, S3C6400, XMC4xxx.
i.MX31, MXC, NUC910, Orion/Kirkwood, S3C24xx, S3C6400, XMC1xxx, XMC4xxx.


==================
Expand Down Expand Up @@ -184,10 +181,6 @@ suggestions:
particular hardware;
- Use "ftdi" interface adapter driver for the FTDI-based devices.

As a PACKAGER, never link against the FTD2XX library, as the resulting
binaries can't be legally distributed, due to the restrictions of the
GPL.


================
Building OpenOCD
Expand Down Expand Up @@ -221,18 +214,16 @@ You'll also need:
Additionally, for building from git:

- autoconf >= 2.64
- automake >= 1.9
- automake >= 1.14
- texinfo

USB-based adapters depend on libusb-1.0 and some older drivers require
libusb-0.1 or libusb-compat-0.1. A compatible implementation, such as
FreeBSD's, additionally needs the corresponding .pc files.

USB-Blaster, ASIX Presto, OpenJTAG and ft2232 interface adapter
drivers need either one of:
USB-Blaster, ASIX Presto and OpenJTAG interface adapter
drivers need:
- libftdi: http://www.intra2net.com/en/developer/libftdi/index.php
- ftd2xx: http://www.ftdichip.com/Drivers/D2XX.htm (proprietary,
GPL-incompatible)

CMSIS-DAP support needs HIDAPI library.

Expand All @@ -242,7 +233,7 @@ Permissions delegation
Running OpenOCD with root/administrative permissions is strongly
discouraged for security reasons.

For USB devices on GNU/Linux you should use the contrib/99-openocd.rules
For USB devices on GNU/Linux you should use the contrib/60-openocd.rules
file. It probably belongs somewhere in /etc/udev/rules.d, but
consult your operating system documentation to be sure. Do not forget
to add yourself to the "plugdev" group.
Expand Down Expand Up @@ -304,40 +295,6 @@ use both the --enable-parport AND the --enable-parport-giveio option
if you want to use giveio instead of ioperm parallel port access
method.

Using FTDI's FTD2XX
-------------------

The (closed source) FTDICHIP.COM solution is faster than libftdi on
Windows. That is the motivation for supporting it even though its
licensing restricts it to non-redistributable OpenOCD binaries, and it
is not available for all operating systems used with OpenOCD. You may,
however, build such copies for personal use.

The FTDICHIP drivers come as either a (win32) ZIP file, or a (Linux)
TAR.GZ file. You must unpack them ``some where'' convenient. As of this
writing FTDICHIP does not supply means to install these files "in an
appropriate place."

You should use the following ./configure options to make use of
FTD2XX:

--with-ftd2xx-win32-zipdir
Where (CYGWIN/MINGW) the zip file from ftdichip.com
was unpacked <default=search>
--with-ftd2xx-linux-tardir
Where (Linux/Unix) the tar file from ftdichip.com
was unpacked <default=search>
--with-ftd2xx-lib=(static|shared)
Use static or shared ftd2xx libs (default is static)

Remember, this library is binary-only, while OpenOCD is licenced
according to GNU GPLv2 without any exceptions. That means that
_distributing_ copies of OpenOCD built with the FTDI code would
violate the OpenOCD licensing terms.

Note that on Linux there is no good reason to use these FTDI binaries;
they are no faster (on Linux) than libftdi, and cause licensing issues.


==========================
Obtaining OpenOCD From GIT
Expand Down
26 changes: 16 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,26 @@
# GNU ARM Eclipse OpenOCD
# GNU MCU Eclipse OpenOCD

The **GNU ARM Eclipse OpenOCD** is a new distribution of [OpenOCD](http://openocd.org), customised for a better/more convenient integration with the **GNU ARM OpenOCD Debugging** plug-in.
The **GNU MCU Eclipse OpenOCD** project is a fork of [OpenOCD](http://openocd.org), customised for a better/more convenient integration with the **GNU MCU OpenOCD Debugging** plug-in.

Expect **GNU MCU Eclipse OpenOCD** to follow official OpenOCD releases, plus several intermediate releases, as needed.

## RISC-V support

The **GNU MCU Eclipse OpenOCD** also tracks the changes from the [RISC-V OpenOCD](https://github.com/riscv/riscv-openocd) fork.

## How to use

* [Overview](http://gnuarmeclipse.github.io/openocd/) (read me first!)
* [Install](http://gnuarmeclipse.github.io/openocd/install)
* Eclipse plug-in
* [Support](https://github.com/gnuarmeclipse/openocd/issues/1)
* [Overview](http://gnu-mcu-eclipse.github.io/openocd/) (read me first!)
* [Install](http://gnu-mcu-eclipse.github.io/openocd/install)
* [Eclipse plug-in](https://gnu-mcu-eclipse.github.io/debug/openocd/)
* [Support](https://github.com/gnu-mcu-eclipse/openocd/issues/1)

## How to build

* [How to build](http://gnuarmeclipse.github.io/openocd/how-to-build) (using Docker containers)
* [Change log](http://gnuarmeclipse.github.io/openocd/change-log)
* [How to build](https://gnu-mcu-eclipse.github.io/openocd/build-procedure/) (using Docker containers)
* [Change log](https://gnu-mcu-eclipse.github.io/openocd/change-log/)

## Releases & binaries

See the [releases](http://gnuarmeclipse.github.io/openocd/releases) page.
Binaries for most platforms can be downloaded from [GitHub Releases](https://github.com/gnuarmeclipse/openocd/releases).
See the [releases](https://gnu-mcu-eclipse.github.io/openocd/releases/) page.
Binaries for most platforms can be downloaded from [GitHub Releases](https://github.com/gnu-mcu-eclipse/openocd/releases).
7 changes: 2 additions & 5 deletions TODO
Original file line number Diff line number Diff line change
Expand Up @@ -93,9 +93,6 @@ interface support:
-# rewrite implementation to use non-blocking I/O
- J-Link driver:
- fix to work with long scan chains, such as R.Doss's svf test.
- FT2232 (libftdi):
- make performance comparable to alternatives (on Win32, D2XX is faster)
- make usability comparable to alternatives
- Autodetect USB based adapters; this should be easy on Linux. If there's
more than one, list the options; otherwise, just select that one.

Expand Down Expand Up @@ -170,9 +167,9 @@ https://lists.berlios.de/pipermail/openocd-development/2009-October/011506.html
garabage.
- implement missing functionality (grep FNC_INFO_NOTIMPLEMENTED ...)
- Thumb2 single stepping: ARM1156T2 needs simulator support
- Cortex A8 support (ML)
- Cortex-A8 support (ML)
- add target implementation (ML)
- Cortex M3 support
- Cortex-M3 support
- when stepping, only write dirtied registers (be faster)
- when connecting to halted core, fetch registers (startup is quirky)
- Generic ARM run_algorithm() interface
Expand Down
7 changes: 7 additions & 0 deletions bootstrap
Original file line number Diff line number Diff line change
Expand Up @@ -39,5 +39,12 @@ else
git submodule update
fi

if [ -x src/jtag/drivers/libjaylink/autogen.sh ]; then
(
cd src/jtag/drivers/libjaylink
./autogen.sh
)
fi

echo "Bootstrap complete. Quick build instructions:"
echo "./configure ...."
Loading

0 comments on commit 3220742

Please sign in to comment.