File SweetHome3D.spec of Package SweetHome3D

# Copyright (c) 2006-2008 oc2pus
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments to toni@links2linux.de

# norootforbuild

Name:			SweetHome3D
Version:		5.1
Release:		0
Summary:		An application for placing your furniture on a house 2D plan, with a 3D preview
License:		GPL
URL:			http://sweethome3d.sourceforge.net/
Group:			Productivity/Graphics/3D Editors
Source0:		%{name}-%{version}-src.zip
Source1:		%{name}.png
Source10:		3DModels-Contributions-1.5.1.zip
Source11:		3DModels-KatorLegaz-1.5.1.zip
Source12:		3DModels-Scopia-1.5.1.zip
Source13:		3DModels-Trees-1.5.1.zip 
Source14:		3DModels-Reallusion-1.5.1.zip
Source15:		3DModels-LucaPresidente-1.5.1.zip
Source16:		3DModels-BlendSwap-CC-0-1.5.1.zip
Source17:		3DModels-BlendSwap-CC-BY-1.5.1.zip
Source18:		Textures-Contributions-1.1.zip
Source19:		Textures-eTeksScopia-1.1.zip
BuildRequires:	ant
BuildRequires:	dos2unix
BuildRequires:	java-devel >= 1.7
BuildRequires:	java-3d
BuildRequires:	unzip
BuildRequires:	update-alternatives
BuildRequires:	update-desktop-files
BuildRequires:	xerces-j2
%if %suse_version > 1100
BuildRequires:	xmlbeans
%endif
BuildRequires:	xml-commons-apis
Requires:		java >= 1.7
Requires:		java-3d >= 1.5.2
BuildArch:		noarch
BuildRoot:		%{_tmppath}/%{name}-%{version}-%{release}-buildroot

%description
Sweet Home 3D is a free application that helps you placing your
furniture on a house 2D plan, with a 3D preview.

%package 3DModels
Summary:	Some extra 3DModels for SweetHome3D.
Group:		Productivity/Graphics/3D Editors
Requires:	%{name}
Enhances:	%{name}

%description 3DModels
Some extra 3DModels for SweetHome3D.

This package contains:
* 3DModels-Contributions-1.5.1.zip
* 3DModels-KatorLegaz-1.5.1.zip
* 3DModels-Scopia-1.5.1.zip
* 3DModels-Trees-1.5.1.zip 
* 3DModels-Reallusion-1.5.1.zip
* 3DModels-LucaPresidente-1.5.1.zip
* 3DModels-BlendSwap-CC-0-1.5.1.zip
* 3DModels-BlendSwap-CC-BY-0-1.5.1.zip

%package Textures
Summary:	Some extra Textures for SweetHome3D.
Group:		Productivity/Graphics/3D Editors
Requires:	%{name}
Enhances:	%{name}

%description Textures
Some extra Textures for SweetHome3D.

This package contains:
* Textures-Contributions-1.1.zip
* Textures-eTeksScopia-1.1.zip

%prep
%setup -q -n %{name}-%{version}-src

%__rm -r lib/linux
%__rm -r lib/macosx
%__rm -r lib/windows

# java3d
%__rm    lib/j3d*.jar
%__rm    lib/vecmath*.jar
ln -s %{_javadir}/java-3d/*.jar lib/

dos2unix     *.TXT
%__chmod 644 *.TXT

#3DModels
%__install -dm 755 3DModels-Contributions
pushd 3DModels-Contributions
	unzip -q %{SOURCE10}
	%__mv README.TXT README-3DModels-Contributions.txt
	%__mv LICENSE.TXT LICENSE-3DModels-Contributions.txt
    dos2unix LICENSE-3DModels-Contributions.txt
popd
%__install -dm 755 3DModels-KatorLegaz
pushd 3DModels-KatorLegaz
	unzip -q %{SOURCE11}
	%__mv README.TXT README-3DModels-KatorLegaz.txt
	%__mv LICENSE.TXT LICENSE-3DModels-KatorLegaz.txt
    dos2unix LICENSE-3DModels-KatorLegaz.txt
popd
%__install -dm 755 3DModels-Scopia
pushd 3DModels-Scopia
	unzip -q %{SOURCE12}
	%__mv README.TXT README-3DModels-Scopia.txt
	%__mv LICENSE.TXT LICENSE-3DModels-Scopia.txt
    dos2unix LICENSE-3DModels-Scopia.txt
popd
%__install -dm 755 3DModels-Trees
pushd 3DModels-Trees
	unzip -q %{SOURCE13}
	%__mv README.TXT README-3DModels-Trees.txt
	%__mv LICENSE.TXT LICENSE-3DModels-Trees.txt
    dos2unix LICENSE-3DModels-Trees.txt
popd
%__install -dm 755 3DModels-Reallusion
pushd 3DModels-Reallusion
	unzip -q %{SOURCE14}
	%__mv README.TXT README-3DModels-Reallusion.txt
	%__mv LICENSE.TXT LICENSE-3DModels-Reallusion.txt
    dos2unix LICENSE-3DModels-Reallusion.txt
popd
%__install -dm 755 3DModels-LucaPresidente
pushd 3DModels-LucaPresidente
	unzip -q %{SOURCE15}
	%__mv README.TXT README-3DModels-LucaPresidente.txt
	%__mv LICENSE.TXT LICENSE-3DModels-LucaPresidente.txt
    dos2unix LICENSE-3DModels-LucaPresidente.txt
popd
%__install -dm 755 3DModels-BlendSwap-CC-0
pushd 3DModels-BlendSwap-CC-0
	unzip -q %{SOURCE16}
	%__mv README.TXT README-3DModels-BlendSwap-CC-0.txt
	%__mv LICENSE.TXT LICENSE-3DModels-BlendSwap-CC-0.txt
    dos2unix LICENSE-3DModels-BlendSwap-CC-0.txt
popd
%__install -dm 755 3DModels-BlendSwap-CC-BY
pushd 3DModels-BlendSwap-CC-BY
	unzip -q %{SOURCE17}
	%__mv README.TXT README-3DModels-BlendSwap-CC-BY.txt
	%__mv LICENSE.TXT LICENSE-3DModels-BlendSwap-CC-BY.txt
    dos2unix LICENSE-3DModels-BlendSwap-CC-BY.txt
popd

#Textures
%__install -dm 755 Textures-Contributions
pushd Textures-Contributions
	unzip -q %{SOURCE18}
	%__mv README.TXT README-Textures-Contributions.txt
	%__mv LICENSE.TXT LICENSE-Textures-Contributions.txt
    dos2unix LICENSE-Textures-Contributions.txt
    dos2unix README-Textures-Contributions.txt
popd
%__install -dm 755 Textures-eTeksScopia
pushd Textures-eTeksScopia
	unzip -q %{SOURCE19}
	%__mv README.TXT README-Textures-eTeksScopia.txt
	%__mv LICENSE.TXT LICENSE-Textures-eTeksScopia.txt
    dos2unix LICENSE-Textures-eTeksScopia.txt
    dos2unix README-Textures-eTeksScopia.txt
popd

%build
%ant application furniture textures help

%install
# jars
%__install -dm 755 %{buildroot}%{_javadir}/%{name}
%__install -pm 644 build/%{name}.jar \
	%{buildroot}%{_javadir}/%{name}/%{name}-%{version}.jar

pushd %{buildroot}%{_javadir}/%{name}
	for jar in *-%{version}*; do
		ln -sf ${jar} `echo $jar | sed "s|-%{version}||g"`
	done
popd

for i in Furniture Textures Help; do
	%__install -pm 644 build/$i.jar \
		%{buildroot}%{_javadir}/%{name}
done

# remove java3d links
%__rm lib/j3d*.jar lib/vecmath.jar
# copy other unpackaged libs
%__install -pm 644 lib/*.jar \
	%{buildroot}%{_javadir}/%{name}
%__install -pm 644 libtest/jnlp.jar \
	%{buildroot}%{_javadir}/%{name}

# startscript
%__install -dm 755 %{buildroot}%{_bindir}
%__cat > %{name}.sh << EOF
#!/bin/sh

# source the jpackage helpers
VERBOSE=1
. %{_javadir}-utils/java-functions

# set JAVA_* environment variables
set_javacmd
check_java_env
set_jvm_dirs
set_options "-Djava.library.path="/usr/lib64:/usr/lib""

CLASSPATH=\`build-classpath %{name} java-3d\`
MAIN_CLASS="com.eteks.sweethome3d.SweetHome3D"

# add some extra catalogs if they exist
if [ ! -d \$HOME/.eteks/sweethome3d/furniture ]; then
	mkdir -p \$HOME/.eteks/sweethome3d/furniture
	for i in Contributions KatorLegaz Scopia Trees LucaPresidente Reallusion BlendSwap-CC-BY BlendSwap-CC-0; do
		if [ -f %{_datadir}/%{name}/$i.sh3f ]; then
			ln -s %{_datadir}/%{name}/$i.sh3f \
				\$HOME/.eteks/sweethome3d/furniture
		fi
	done
fi

run
EOF
%__install -m 755 %{name}.sh %{buildroot}%{_bindir}


#3Models
%__install -dm 755 %{buildroot}%{_datadir}/%{name}
for i in Contributions KatorLegaz Scopia Trees LucaPresidente Reallusion BlendSwap-CC-BY BlendSwap-CC-0; do
	%__install -m 644 3DModels-$i/*.sh3f \
		%{buildroot}%{_datadir}/%{name}
done

#Textures
%__install -dm 755 %{buildroot}%{_datadir}/%{name}
for i in Contributions eTeksScopia; do
	%__install -m 644 Textures-$i/*.sh3t \
		%{buildroot}%{_datadir}/%{name}
done


# icon and menu-entry
%__install -dm 755 %{buildroot}%{_datadir}/pixmaps
%__install -m 644 %{SOURCE1} \
	%{buildroot}%{_datadir}/pixmaps

%__cat > %{name}.desktop << EOF
[Desktop Entry]
Comment=A application that helps you placing your furniture on a house 2D plan, with a 3D preview
Name=Sweet Home 3D
GenericName=
Type=Application
Exec=%{name}.sh
Icon=%{name}.png
Encoding=UTF-8
Terminal=false
Categories=Graphics;3DGraphics;
EOF
%suse_update_desktop_file -i %{name} Graphics 3DGraphics

%clean
[ -d "%{buildroot}" -a "%{buildroot}" != "" ] && %__rm -rf "%{buildroot}"

%files
%defattr(-,root,root,-)
%doc COPYING.TXT
%{_bindir}/%{name}.sh
%dir %{_javadir}/%{name}
%{_javadir}/%{name}/*.jar
%{_datadir}/pixmaps/%{name}.png
%{_datadir}/applications/%{name}.desktop

%files 3DModels
%defattr(-,root,root,-)
%doc 3DModels-Contributions/*.txt
%doc 3DModels-KatorLegaz/*.txt
%doc 3DModels-Scopia/*.txt
%doc 3DModels-Trees/*.txt
%doc 3DModels-LucaPresidente/*.txt
%doc 3DModels-Reallusion/*.txt
%doc 3DModels-BlendSwap-CC-BY/*.txt
%doc 3DModels-BlendSwap-CC-0/*.txt
%dir %{_datadir}/%{name}
%{_datadir}/%{name}/*.sh3f

%files Textures
%defattr(-,root,root,-)
%doc Textures-Contributions/*.txt
%doc Textures-eTeksScopia/*.txt
%dir %{_datadir}/%{name}
%{_datadir}/%{name}/*.sh3t

%changelog
openSUSE Build Service is sponsored by