File klayout.spec of Package klayout

#
# spec file for package klayout
#
# Copyright (c) 2016 SUSE LINUX Products 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/
#


Name:           klayout
Version:        0.24.9
Release:        0
Summary:        GDS2 chip layout Viewer
License:        GPL-2.0+
Group:          Productivity/Scientific/Electronics
Url:            http://www.klayout.de
Source0:        http://www.klayout.de/downloads/%{name}-%{version}.tar.gz
Source1:        %{name}.desktop
# TODO: no patch currently
# Patch:          build-sh.diff
BuildRequires:  gcc
BuildRequires:  gcc-c++
BuildRequires:  libqt4-devel
%if 0%{?suse_version}%{?sles_version}
BuildRequires:  libqt4-x11
%endif
BuildRequires:  libstdc++-devel
BuildRequires:  qt-devel
%if 0%{?suse_version} == 1310
BuildRequires:  ruby20
BuildRequires:  ruby20-devel
%endif
%if 0%{?suse_version} == 1320
BuildRequires:  ruby2.1
BuildRequires:  ruby2.1-devel
BuildRequires:  libruby2_1-2_1
%endif
# SLE 12
%if 0%{?suse_version} == 1315
BuildRequires:  ruby
BuildRequires:  ruby-devel
%endif
%if (0%{?suse_version} > 0 && 0%{?suse_version} < 1300)
BuildRequires:  ruby
BuildRequires:  ruby-devel
%endif
%if 0%{?fedora} 
BuildRequires:  ruby
BuildRequires:  ruby-devel
%endif
%if 0%{?centos_version} 
BuildRequires:  ruby
%if 0%{?centos_version} > 600
BuildRequires:  ruby-libs
%endif
BuildRequires:  ruby-devel
%endif
BuildRequires:  python
BuildRequires:  python-devel
%if 0%{?suse_version}%{?sles_version}
BuildRequires:  update-desktop-files
%endif
BuildRequires:  pkgconfig
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
GDS2 (chip layout) viewer for the chip design engineer.
The main objective was to focus on the basic functionality but adding some
useful features that many, even commercial viewers don't have:
* shows the design as it is
* can animate layers to make them blink or scroll the fill pattern.
* display a layer "marked" by drawing a small cross on all shapes<
All comes wrapped in a nice, Qt based state of the art GUI. Usage of the viewer
is simple and is similar to that of other tools.

%prep
%setup -q

%build
# TODO: REQUIRE RUBY build.sh -rblib /usr/lib/libruby1.8.so -rbinc /usr/lib/ruby/1.8/i486-linux

%ifarch %ix86
TARGET="linux-32-gcc-release"
%else
TARGET="linux-64-gcc-release"
%endif

# CentOS/RHES 5 has qt3 as default
%if (0%{?centos_version} && 0%{?centos_version} < 600) || (0%{?rhel_version} && 0%{?rhel_version} < 600)
QTBIN=%{_prefix}/%{_lib}/qt4/bin
QTINC=%{_prefix}/%{_lib}/qt4/include
QTLIB=%{_prefix}/%{_lib}/qt4/%{_lib}
%else
QTBIN=$(dirname $(pkg-config --variable=moc_location QtCore))
QTLIB=`pkg-config --variable=libdir QtCore`
QTINC=%{_includedir}
%endif

./build.sh -platform $TARGET \
           -bin %{buildroot}%{_bindir} \
           -build `pwd` \
           -qtbin $QTBIN \
           -qtinc $QTINC \
           -qtlib $QTLIB \
           -with-qtbinding \
           -dry-run
make -j1 all CCOPT="%optflags -fno-strict-aliasing -c -o" \
             CXXOP="%optflags -fno-strict-aliasing -c -o" \
             CCOPT_SO="%optflags -fno-strict-aliasing -fPIC -c -o" \
             CXXOPT_SO="%optflags -fno-strict-aliasing -fPIC -c -o" \
             LOPT="%optflags -o" \
             LOPT_SO="%optflags -shared -fPIC -o"
strip main/klayout

%install
%make_install
install -Dm644 %{SOURCE1} %{buildroot}%{_datadir}/applications/%{name}.desktop
install -Dm644 src/images/logo.png %{buildroot}%{_datadir}/pixmaps/%{name}.png
%if 0%{?suse_version}%{?sles_version}
%suse_update_desktop_file -n %{name}
%endif

%files
%defattr(-,root,root)
%doc LICENSE
%{_bindir}/*
%{_datadir}/applications/%{name}.desktop
%{_datadir}/pixmaps/%{name}.png

%changelog
openSUSE Build Service is sponsored by