Advertisement
david_david

sweethome3d.spec

Sep 24th, 2013
152
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.60 KB | None | 0 0
  1. %define pkgname SweetHome3D
  2. %define pkgmod 3DModels
  3. %define modelver 1.3
  4.  
  5. Name: sweethome3d
  6. Version: 4.1
  7. Release: %mkrel 1
  8. Summary: A free interior design application, with a 3D preview
  9. License: GPLv2
  10. Group: Graphics/3D
  11. URL: http://www.sweethome3d.com/
  12. Source0: http://sourceforge.net/projects/%{name}/files/SweetHome3D-source/%{pkgname}-%{version}-src.zip
  13. Source1: http://sourceforge.net/projects/%{name}/files/SweetHome3D-models/%{pkgmod}-Contributions-%{modelver}.zip
  14. Source2: http://sourceforge.net/projects/%{name}/files/SweetHome3D-models/%{pkgmod}-KatorLegaz-%{modelver}.zip
  15. Source3: http://sourceforge.net/projects/%{name}/files/SweetHome3D-models/%{pkgmod}-LucaPresidente-%{modelver}.zip
  16. Source4: http://sourceforge.net/projects/%{name}/files/SweetHome3D-models/%{pkgmod}-Reallusion-%{modelver}.zip
  17. Source5: http://sourceforge.net/projects/%{name}/files/SweetHome3D-models/%{pkgmod}-Scopia-%{modelver}.zip
  18. Source6: http://sourceforge.net/projects/%{name}/files/SweetHome3D-models/%{pkgmod}-Trees-%{modelver}.zip
  19. Source7: http://sourceforge.net/projects/%{name}/files/SweetHome3D-models/%{pkgmod}-BlendSwap-CC-BY-%{modelver}.zip
  20. Source8: http://sourceforge.net/projects/%{name}/files/SweetHome3D-models/%{pkgmod}-BlendSwap-CC-0-%{modelver}.zip
  21. Source10: sweethome3d_128x128.png
  22. Source11: sweethome3d-4.1-script
  23. Source20: http://sourceforge.net/projects/%{pkgname}/files/TexturesLibraryEditor-source/TexturesLibraryEditor-1.2-src.zip
  24. Source21: http://sourceforge.net/projects/%{pkgname}/files/FurnitureLibraryEditor-source/FurnitureLibraryEditor-1.11-src.zip
  25. Patch0: sweethome3d-3.2-nomacosx.patch
  26. Patch1: sweethome3d-4.1-build_xml.patch
  27. Patch2: sweethome3d-4.1-javadoc.patch
  28. BuildArch: noarch
  29.  
  30. BuildRequires: abbot
  31. BuildRequires: ant
  32. BuildRequires: batik
  33. BuildRequires: desktop-file-utils
  34. BuildRequires: dos2unix
  35. BuildRequires: gnu-regexp
  36. BuildRequires: icedtea-web
  37. BuildRequires: imagemagick
  38. BuildRequires: iText
  39. BuildRequires: java-devel
  40. BuildRequires: java-javadoc
  41. BuildRequires: java3d
  42. BuildRequires: java3d-javadoc
  43. BuildRequires: java3ds-fileloader
  44. BuildRequires: jdepend
  45. BuildRequires: jdom
  46. BuildRequires: jiprof
  47. BuildRequires: junit
  48. BuildRequires: jpackage-utils
  49. BuildRequires: sunflow
  50. BuildRequires: xerces-j2
  51. BuildRequires: xml-commons-apis
  52.  
  53. Requires: batik
  54. Requires: icedtea-web
  55. Requires: iText
  56. Requires: janino
  57. Requires: java
  58. Requires: java3d
  59. Requires: java3ds-fileloader
  60. Requires: jpackage-utils
  61. Requires: sunflow
  62.  
  63. Suggests: %{_lib}cg0
  64.  
  65.  
  66. %description
  67. Sweet Home 3D is a free interior design application that helps you place your
  68. furniture on a house 2D plan, with a 3D preview.
  69. Available at http://www.sweethome3d.eu/, this program is aimed at people who
  70. want to design their interior quickly, whether they are moving or they just
  71. want to redesign their existing home. Numerous visual guides help you draw the
  72. plan of your home and layout furniture. You may draw the walls of your rooms
  73. upon the image of an existing plan, and then, drag and drop furniture onto the
  74. plan from a catalog organized by categories. Each change in the 2D plan is
  75. simultaneously updated in the 3D view, to show you a realistic rendering of
  76. your layout.
  77.  
  78. #-----------------------------------------------------------------------------
  79.  
  80. %package 3dmodels
  81. Group: Graphics/3D
  82. Summary: Some extra 3DModels for %{pkgname}
  83. BuildArch: noarch
  84. Requires: %{name} = %{version}-%{release}
  85.  
  86. %description 3dmodels
  87. Some extra 3DModels for %{pkgname}.
  88.  
  89. This package contains:
  90. * 3DModels Contributions %{modelver}
  91. * 3DModels KatorLegaz %{modelver}
  92. * 3DModels Scopia %{modelver}
  93. * 3DModels Trees %{modelver}
  94. * 3DModels LucaPresidente %{modelver}
  95. * 3DModels Reallusion-%{modelver}
  96. * 3DModels BlendSwap-CC-BY-%{modelver}
  97. * 3DModels BlendSwap-CC-0-%{modelver}
  98.  
  99. #-----------------------------------------------------------------------------
  100.  
  101. %package javadoc
  102. Group: Development/Java
  103. Summary: Javadoc for %{pkgname}
  104. BuildArch: noarch
  105.  
  106. %description javadoc
  107. Sweet Home 3D - An application for placing your furniture on a house 2D plan,
  108. with a 3D preview
  109.  
  110. This package contains javadoc for %{pkgname}.
  111.  
  112. #-----------------------------------------------------------------------------
  113.  
  114. %prep
  115. %setup -q -n %{pkgname}-%{version}-src
  116. %patch0 -p0
  117. %patch1 -p0
  118. %patch2 -p0
  119.  
  120. for j in $(find . -name "*.jar"); do
  121. mv $j $j.no
  122. done
  123.  
  124. rm -rf lib/windows
  125. rm -rf lib/macosx
  126. rm -rf lib/linux
  127.  
  128. pushd lib
  129. ln -sf $(build-classpath batik-all) batik-svgpathparser-1.7.jar
  130. ln -sf $(build-classpath itext) iText-2.1.7.jar
  131. ln -sf $(build-classpath java3d/j3dcore) j3dcore.jar
  132. ln -sf $(build-classpath java3d/j3dutils) j3dutils.jar
  133. ln -sf $(build-classpath java3ds-fileloader) Loader3DS1_2u.jar
  134. ln -sf $(build-classpath sunflow) sunflow-0.07.3h.jar
  135. ln -sf $(build-classpath java3d/vecmath) vecmath.jar
  136. # FIXME for package jar that does not exist on Mageia
  137. mv jmf.jar.no jmf.jar
  138. mv freehep-vectorgraphics-svg-2.1.1.jar.no freehep-vectorgraphics-svg-2.1.1.jar
  139. popd
  140.  
  141. pushd libtest
  142. ln -sf $(build-classpath abbot) abbot.jar
  143. ln -sf $(build-classpath gnu-regexp) gnu-regexp-1.1.0.jar
  144. ln -sf $(build-classpath jdepend) jdepend-2.9.jar
  145. ln -sf $(build-classpath jdom) jdom-1.0.jar
  146. ln -sf /usr/share/icedtea-web/netx.jar jnlp.jar
  147. ln -sf $(build-classpath jiprof/profile) profile.jar
  148. popd
  149.  
  150. for c in $(find lib -name "*.class"); do
  151. rm -f $c
  152. done
  153.  
  154. dos2unix *.TXT
  155. chmod 644 *.TXT
  156.  
  157. mkdir -p 3DModels-Contributions
  158. pushd 3DModels-Contributions
  159. unzip -q %{SOURCE1}
  160. mv README.TXT README-3DModels-Contributions.txt
  161. mv LICENSE.TXT LICENSE-3DModels-Contributions.txt
  162. popd
  163. mkdir -p 3DModels-KatorLegaz
  164. pushd 3DModels-KatorLegaz
  165. unzip -q %{SOURCE2}
  166. mv README.TXT README-3DModels-KatorLegaz.txt
  167. mv LICENSE.TXT LICENSE-3DModels-KatorLegaz.txt
  168. popd
  169. mkdir -p 3DModels-LucaPresidente
  170. pushd 3DModels-LucaPresidente
  171. unzip -q %{SOURCE3}
  172. mv README.TXT README-3DModels-LucaPresidente.txt
  173. mv LICENSE.TXT LICENSE-3DModels-LucaPresidente.txt
  174. popd
  175. mkdir -p 3DModels-Reallusion
  176. pushd 3DModels-Reallusion
  177. unzip -q %{SOURCE4}
  178. mv README.TXT README-3DModels-Reallusion.txt
  179. mv LICENSE.TXT LICENSE-3DModels-Reallusion.txt
  180. popd
  181. mkdir -p 3DModels-Scopia
  182. pushd 3DModels-Scopia
  183. unzip -q %{SOURCE5}
  184. mv README.TXT README-3DModels-Scopia.txt
  185. mv LICENSE.TXT LICENSE-3DModels-Scopia.txt
  186. popd
  187. mkdir -p 3DModels-Trees
  188. pushd 3DModels-Trees
  189. unzip -q %{SOURCE6}
  190. mv README.TXT README-3DModels-Trees.txt
  191. mv LICENSE.TXT LICENSE-3DModels-Trees.txt
  192. popd
  193. mkdir -p 3DModels-BlendSwap-CC-BY
  194. pushd 3DModels-BlendSwap-CC-BY
  195. unzip -q %{SOURCE7}
  196. mv README.TXT README-3DModels-BlendSwap-CC-BY.txt
  197. mv LICENSE.TXT LICENSE-3DModels-BlendSwap-CC-BY.txt
  198. popd
  199. mkdir -p 3DModels-BlendSwap-CC-0
  200. pushd 3DModels-BlendSwap-CC-0
  201. unzip -q %{SOURCE8}
  202. mv README.TXT README-3DModels-BlendSwap-CC-0.txt
  203. mv LICENSE.TXT LICENSE-3DModels-BlendSwap-CC-0.txt
  204. popd
  205.  
  206. %build
  207. %ant application furniture textures help javadoc
  208.  
  209. %install
  210. # .jar-repertory
  211. mkdir -p %{buildroot}%{_javadir}/%{name}
  212. install -pm 644 build/SweetHome3D.jar \
  213. %{buildroot}%{_javadir}/%{name}/%{pkgname}-%{version}.jar
  214.  
  215. (
  216. cd %{buildroot}%{_javadir}/%{name}
  217. for jar in *-%{version}*; do
  218. ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"`
  219. done
  220. )
  221.  
  222. for i in Furniture Textures Help; do
  223. install -pm 644 build/$i.jar %{buildroot}%{_javadir}/%{name}
  224. done
  225.  
  226. rm -rf lib/iText-2.1.7.jar
  227. rm -rf lib/j3dcore.jar
  228. rm -rf lib/j3dutils.jar
  229. rm -rf lib/sunflow-0.07.3h.jar
  230. rm -rf lib/vecmath.jar
  231. rm -rf lib/Loader3DS1_2u.jar
  232.  
  233. # FIXME for package jar that does not exist on Mageia
  234. install -pm 644 lib/jmf.jar %{buildroot}%{_javadir}/%{name}
  235. install -pm 644 lib/freehep-vectorgraphics-svg-2.1.1.jar %{buildroot}%{_javadir}/%{name}
  236.  
  237. # 3Dmodels-repertory
  238. mkdir -p %{buildroot}%{_datadir}/%{name}/%{pkgmod}
  239. for i in Contributions KatorLegaz LucaPresidente Reallusion Scopia Trees BlendSwap-CC-BY BlendSwap-CC-0; do
  240. install -m 644 3DModels-$i/*.sh3f %{buildroot}%{_datadir}/%{name}/%{pkgmod}
  241. done
  242.  
  243. # javadoc-repertory
  244. mkdir -p %{buildroot}%{_javadocdir}/%{name}
  245. cp -pr javadoc/* %{buildroot}%{_javadocdir}/%{name}
  246.  
  247. # binary-repertory
  248. mkdir -p %{buildroot}%{_bindir}
  249. install -m 755 %{SOURCE11} %{buildroot}%{_bindir}/%{name}
  250.  
  251. # icons-repertory
  252. mkdir -p %{buildroot}%{_datadir}/pixmaps %{buildroot}%{_iconsdir} %{buildroot}%{_iconsdir}/hicolor/128x128/apps/
  253. cp %{SOURCE10} %{buildroot}%{_iconsdir}/hicolor/128x128/apps/%{name}.png
  254. cp %{SOURCE10} %{buildroot}%{_datadir}/pixmaps/%{name}.png
  255. cp deploy/%{pkgname}*.jpg %{buildroot}%{_iconsdir}
  256. cp deploy/%{pkgname}*.gif %{buildroot}%{_iconsdir}
  257.  
  258. for png in 64x64 32x32 22x22 16x16; do
  259. mkdir -p %{buildroot}%{_iconsdir}/hicolor/${png}/apps/
  260. convert -geometry $png %{SOURCE10} %{buildroot}%{_iconsdir}/hicolor/${png}/apps/%{name}.png
  261. done
  262.  
  263. # menu-entry
  264. mkdir -p %{buildroot}%{_datadir}/applications
  265. cat > %{name}.desktop <<EOF
  266. [Desktop Entry]
  267. Version=1.0
  268. Name=Sweet Home 3D
  269. Name[fr]=Sweet Home 3D
  270. Name[ru]=Милый дом 3D
  271. GenericName=Sweet Home 3D
  272. GenericName[fr]=Sweet Home 3D
  273. GenericName[ru]=SweetHome 3D
  274. Comment=Design Application
  275. Comment[fr]=Application de conception d'intérieur en 3D
  276. Comment[ru]=Программа проектирования домашнего интерьера в 3D
  277. Exec=%{name}
  278. Icon=%{name}
  279. Terminal=false
  280. Type=Application
  281. StartupNotify=true
  282. StartupWMClass=com-eteks-sweethome3d-SweetHome3D
  283. Categories=Application;Graphics;2DGraphics;3DGraphics;
  284. EOF
  285.  
  286. desktop-file-install --mode=0644 --dir=%{buildroot}%{_datadir}/applications %{name}.desktop
  287.  
  288. %check
  289. desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop
  290.  
  291. %files
  292. %doc COPYING* LICENSE.TXT README.TXT
  293. %{_bindir}/%{name}
  294. %dir %{_javadir}/%{name}
  295. %{_javadir}/%{name}/Furniture.jar
  296. %{_javadir}/%{name}/Help.jar
  297. %{_javadir}/%{name}/%{pkgname}-%{version}.jar
  298. %{_javadir}/%{name}/%{pkgname}.jar
  299. %{_javadir}/%{name}/Textures.jar
  300. # FIXME for package jar that does not exist on Mageia
  301. %{_javadir}/%{name}/jmf.jar
  302. %{_javadir}/%{name}/freehep-vectorgraphics-svg-2.1.1.jar
  303. #
  304. %{_datadir}/applications/%{name}.desktop
  305. %{_datadir}/pixmaps/%{name}.png
  306. %{_iconsdir}/*.jpg
  307. %{_iconsdir}/*.gif
  308. %{_iconsdir}/hicolor/*x*/apps/%{name}.png
  309.  
  310. %files 3dmodels
  311. %doc 3DModels-Contributions/*.txt 3DModels-KatorLegaz/*.txt 3DModels-Scopia/*.txt 3DModels-Trees/*.txt 3DModels-LucaPresidente/*.txt 3DModels-Reallusion/*.txt 3DModels-BlendSwap-CC-BY/*.txt 3DModels-BlendSwap-CC-0/*.txt
  312. %dir %{_datadir}/%{name}
  313. %dir %{_datadir}/%{name}/%{pkgmod}
  314. %{_datadir}/%{name}/%{pkgmod}/*.sh3f
  315.  
  316. %files javadoc
  317. %dir %{_javadocdir}/%{name}
  318. %{_javadocdir}/%{name}/*
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement