LogoopenSUSE Build Service > Projects
Sign Up | Log In

View File openocd.spec of Package openocd (Project home:scalpel4k)

# spec file for package openocd
# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/

%if 0%{?suse_version} < 1320
%define external_jimtcl 0
%define external_jimtcl 1

%define external_jaylink 0

%define _udevdir %(pkg-config --variable udevdir udev)
Name:           openocd
Version:        0.9.0
Release:        0
Summary:        Debugging, in-system programming and boundary-scan testing for embedded devices
License:        GPL-2.0
Group:          Development/Tools/Debuggers
Url:            http://openocd.sourceforge.net/
Source0:        http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.xz
Source2:        %name.keyring
BuildRequires:  autoconf >= 2.64
BuildRequires:  automake
BuildRequires:  fdupes
%if %{external_jimtcl}
BuildRequires:  jimtcl-devel
BuildRequires:  libftdi1-devel
BuildRequires:  libhidapi-devel
BuildRequires:  libtool
BuildRequires:  libudev-devel
BuildRequires:  udev
BuildRequires:  libusb-compat-devel
BuildRequires:  makeinfo
BuildRequires:  pkg-config >= 0.23
BuildRequires:  pkgconfig(libusb-1.0) >= 1.0.16
BuildRequires:  pkgconfig(udev)
%if %{external_jaylink}
BuildRequires:	pkgconfig(libjaylink) >= 0.2
Provides:       libjaylink
Requires:       %{name}-data = %{version}
Requires(post): udev
Requires(post): %{install_info_prereq}
Requires(preun): %{install_info_prereq}
Requires(postun): udev

The Open On-Chip Debugger (OpenOCD) provides debugging, in-system programming
and boundary-scan testing for embedded devices.  Various different boards,
targets, and interfaces are supported to ease development time.

Install OpenOCD if you are looking for an open source solution for hardware

%package data
Summary:        Hardware Scripts for OpenOCD
Group:          Development/Tools/Debuggers
Requires:       %{name} = %{version}
BuildArch:      noarch

%description data
The Open On-Chip Debugger (OpenOCD) provides debugging, in-system programming
and boundary-scan testing for embedded devices.
This package provides hardware description files and documentation.

%setup -q

sed -i 's/GROUP="plugdev"/GROUP="users"/g' contrib/60-openocd.rules

%if !%{external_jimtcl}
# set this explicitly, else the configure from included jimtcl
# won't find a compiler :(
export CC=gcc
./bootstrap nosubmodule
%configure \
%if %{external_jimtcl}
  --disable-internal-jimtcl \
  --disable-werror \
  --enable-static \
  --disable-shared \
  --disable-doxygen-html \
  --enable-ioutil \
  --enable-ftdi \
  --enable-stlink \
  --enable-ti-icdi \
  --enable-ulink \
  --enable-usb-blaster-2 \
  --enable-vsllink \
  --enable-jlink \
%if %{external_jaylink}
  --disable-internal-libjaylink \
  --enable-osbdm \
  --enable-opendous \
  --enable-aice \
  --enable-usbprog \
  --enable-rlink \
  --enable-armjtagew \
  --enable-cmsis-dap \
%ifarch %ix86 x86_64
  --enable-parport \
  --enable-amtjtagaccel \
%ifarch %arm
  --enable-bcm2835gpio \
  --enable-gw16012 \
  --enable-oocd_trace \
  --enable-buspirate \
  --enable-sysfsgpio \

make %{?_smp_mflags} V=1

rm -f %{buildroot}%{_infodir}/dir ||:
rm -f %{buildroot}%{_libdir}/libopenocd.* ||:
rm -rf %{buildroot}%{_datadir}/%{name}/contrib/libdcc ||:
mkdir -p %{buildroot}%{_udevdir}/rules.d
mv %{buildroot}%{_datadir}/%{name}/contrib/60-openocd.rules %{buildroot}%{_udevdir}/rules.d/60-openocd.rules

%fdupes %{buildroot}

%install_info --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz

%install_info_delete --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz


%doc contrib/libdcc README AUTHORS ChangeLog COPYING
%if %{external_jaylink}

%files data