File fachwerk045.spec of Package Fachwerk

%define fachwerkjar  fachwerk.jar
%define fachwerksrctargz  fachwerk-0.4.5.src.tar.gz
%define releasename  fachwerk
%define releaseicon  fachwerk

%define fullname     %{name}-%{version}-%{release}

Name:           fachwerk
Summary:        Calculates strut-and-tie models used by structural engineers
Summary(de):    Programm für Bauingenieure, um Fachwerkmodelle zu berechnen
Version:        0.4.5
Release:        1
Source0:        http://sourceforge.net/projects/fachwerk/files/%{version}/%{fachwerksrctargz}
URL:            http://fachwerk.sourceforge.net/ 

Group:          Applications/Engineering
BuildArch:      noarch
BuildRoot:      %{_tmppath}/%{fullname}-buildroot
License:        GPL-2.0
Requires:       java >= 1.8.0
BuildRequires:  java-devel >= 1.8.0
BuildRequires:  ant
BuildRequires:  unzip
BuildRequires:  desktop-file-utils
Prefix:         /usr

%description
Fachwerk calculates strut-and-tie models used by structural 
engineers for analysing and designing reinforced concrete structures. 
The program only uses equilibrium conditions, thus it does 
not assume elastic material behaviour.
%description -l de
Das Programm Fachwerk soll Bauingenieuren im Betonbau die 
Anwendung von Spannungsfeldern und Fachwerkmodellen erleichtern. 
Es ist ein einfach zu bedienendes Fachwerkprogramm, welches - im Unterschied zu 
den gängigen Programmen - einzig die Gleichgewichtsbedingungen anwendet.

# 
%prep 
%setup -c -n %{name} 
sed -i s/'value="1.7"'/'value="1.8"'/g build*.xml

%build 
ant updatebuild2d
cd build/%{releasename}
echo '#! /bin/bash' > %{name}
echo 'java -jar $(dirname $0)/../share/'%{name}/%{fachwerkjar}' "$@"' >> %{name}

sed -i 's|Exec=%{releasename}|Exec=%{name}|' INFO/src/%{releasename}.desktop
sed -i 's|Icon=%{releasename}|Icon=%{name}|' INFO/src/%{releasename}.desktop


%install
cd $RPM_BUILD_DIR/%{name}/build
mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name}
mkdir -p $RPM_BUILD_ROOT%{_bindir}
mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1
mkdir -p $RPM_BUILD_ROOT%{_docdir}/%{name}
cp -p %{releasename}/%{fachwerkjar} $RPM_BUILD_ROOT%{_datadir}/%{name}
cp -p %{releasename}/%{name} $RPM_BUILD_ROOT%{_bindir}
cp -pr %{releasename}/lib $RPM_BUILD_ROOT%{_datadir}/%{name}
cp -pr %{releasename}/INFO $RPM_BUILD_ROOT%{_docdir}/%{name}
mv $RPM_BUILD_ROOT%{_docdir}/%{name}/INFO/manpage/%{releasename}.1.gz $RPM_BUILD_ROOT%{_mandir}/man1/%{name}.1.gz
cp -pr %{releasename}/examples $RPM_BUILD_ROOT%{_docdir}/%{name}

mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/scalable/apps
mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/scalable/mimetypes
mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps
mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/mimetypes
mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications
mkdir -p $RPM_BUILD_ROOT%{_datadir}/mime/packages/
cp -p %{releasename}/INFO/src/%{releaseicon}.svg $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/scalable/apps/%{name}.svg
cp -p %{releasename}/INFO/src/%{releaseicon}.svg $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/scalable/mimetypes/application-x-%{name}.svg
cp -p %{releasename}/INFO/src/%{releaseicon}.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps/%{name}.png
cp -p %{releasename}/INFO/src/%{releaseicon}.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/mimetypes/application-x-%{name}.png
cp -p %{releasename}/INFO/src/%{releasename}.desktop $RPM_BUILD_ROOT%{_datadir}/applications/%{name}.desktop
cp -p %{releasename}/INFO/src/%{releasename}.xml $RPM_BUILD_ROOT%{_datadir}/mime/packages/%{name}.xml


%clean 
rm -rf $RPM_BUILD_ROOT 

%files 
%defattr(-,root,root,0755)
%{_datadir}/%{name}
%doc %{_docdir}/%{name}
%doc %{_docdir}/%{name}/INFO
%doc %{_docdir}/%{name}/examples
%attr(755, root, root) %{_bindir}/%{name}
%{_mandir}/man1/%{name}.1*
%{_datadir}/icons/hicolor
%{_datadir}/icons/hicolor/scalable
%{_datadir}/icons/hicolor/scalable/apps
%{_datadir}/icons/hicolor/scalable/mimetypes
%{_datadir}/icons/hicolor/48x48
%{_datadir}/icons/hicolor/48x48/apps
%{_datadir}/icons/hicolor/48x48/mimetypes
%{_datadir}/icons/hicolor/scalable/mimetypes/application-x-%{name}.svg
%{_datadir}/icons/hicolor/scalable/apps/%{name}.svg
%{_datadir}/icons/hicolor/48x48/apps/%{name}.png
%{_datadir}/icons/hicolor/48x48/mimetypes/application-x-%{name}.png
%{_datadir}/applications/%{name}.desktop
%{_datadir}/mime/packages/%{name}.xml

%post
%desktop_database_post

%postun
%desktop_database_postun


%changelog 
* Fri Apr 05 2024 Adrian Vontobel <qwert2003@users.sourceforge.net> 0.4.5
- java requirement (increase >= 1.8.0)
* Wed Feb 22 2017 Adrian Vontobel <qwert2003@users.sourceforge.net> 0.4.5
- Initial rpm release.
openSUSE Build Service is sponsored by