j2se14.spec 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
  1. ##
  2. ## j2se14.spec -- OpenPKG RPM Specification
  3. ## Copyright (c) 2000-2004 The OpenPKG Project <http://www.openpkg.org/>
  4. ## Copyright (c) 2000-2004 Ralf S. Engelschall <rse@engelschall.com>
  5. ## Copyright (c) 2000-2004 Cable & Wireless <http://www.cw.com/>
  6. ##
  7. ## Permission to use, copy, modify, and distribute this software for
  8. ## any purpose with or without fee is hereby granted, provided that
  9. ## the above copyright notice and this permission notice appear in all
  10. ## copies.
  11. ##
  12. ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  13. ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
  14. ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  15. ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
  16. ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  17. ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  18. ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  19. ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  20. ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  21. ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  22. ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  23. ## SUCH DAMAGE.
  24. ##
  25. # package versions
  26. %define V_sunjava 1_4_2_05
  27. %define V_filesys 1.4.2_05
  28. %define V_openpkg 1.4.2.05
  29. # package information
  30. Name: j2se14
  31. Summary: Java 2 Platform, Standard Edition (J2SE) 1.4
  32. URL: http://java.sun.com/j2se/
  33. Vendor: Sun Microsystems, Inc.
  34. Packager: The OpenPKG Project
  35. Distribution: OpenPKG
  36. Class: EVAL
  37. Group: Language
  38. License: Commercial
  39. Version: %{V_openpkg}
  40. Release: 20040707
  41. # list of sources
  42. Source0: http://java.sun.com/j2se/::/j2sdk-%{V_sunjava}-linux-i586.bin
  43. Source1: http://java.sun.com/j2se/::/j2sdk-%{V_sunjava}-solaris-sparc.sh
  44. Source2: http://java.sun.com/j2se/::/j2sdk-%{V_sunjava}-solaris-sparcv9.sh
  45. Source3: http://java.sun.com/j2se/::/j2sdk-%{V_sunjava}-solaris-i586.sh
  46. Source4: rc.j2se14
  47. %NoSource 0
  48. %NoSource 1
  49. %NoSource 2
  50. %NoSource 3
  51. # build information
  52. Prefix: %{l_prefix}
  53. BuildRoot: %{l_buildroot}
  54. BuildPreReq: OpenPKG, openpkg >= 20040130
  55. PreReq: OpenPKG, openpkg >= 20040130
  56. AutoReq: no
  57. AutoReqProv: no
  58. Provides: JDK, JRE
  59. Conflicts: j2se
  60. %description
  61. The premier solution for rapidly developing and deploying
  62. mission-critical, enterprise applications, J2SE provides the
  63. essential compiler, tools, runtimes, and APIs for writing,
  64. deploying, and running applets and applications in the Java
  65. programming language.
  66. %track
  67. prog j2se14 = {
  68. disabled
  69. comment = "rse: no tracking possible"
  70. version = 1.4.2.05
  71. url = http://www.sun.com/java/
  72. regex = j2se-(__VER__)\.tar\.gz
  73. }
  74. %prep
  75. %setup -q -c j2se14 -T
  76. %build
  77. %install
  78. rm -rf $RPM_BUILD_ROOT
  79. # select vendor source
  80. pkgfile=""
  81. suppfile=""
  82. pkgdir=%{V_filesys}
  83. case "%{l_platform -t}" in
  84. i?86-linux2.[2-6]* | i?86-freebsd[45]* )
  85. pkgfile="%{SOURCE j2sdk-%{V_sunjava}-linux-i586.bin}"
  86. pkgdir="j2sdk%{V_filesys}"
  87. ;;
  88. sun4u-sunos5.[6-9]* )
  89. pkgfile="%{SOURCE j2sdk-%{V_sunjava}-solaris-sparc.sh}"
  90. suppfile="%{SOURCE j2sdk-%{V_sunjava}-solaris-sparcv9.sh}"
  91. pkgdir="j2sdk%{V_filesys}"
  92. ;;
  93. i?86-sunos5.[6-9]* )
  94. pkgfile="%{SOURCE j2sdk-%{V_sunjava}-solaris-i586.sh}"
  95. pkgdir="j2sdk%{V_filesys}"
  96. ;;
  97. esac
  98. if [ ".$pkgfile" = . ]; then
  99. echo "Sorry, unsupported architecture '%{l_platform -t}'" 1>&2
  100. exit 1
  101. fi
  102. # create installation tree
  103. %{l_shtool} mkdir -f -p -m 755 \
  104. $RPM_BUILD_ROOT%{l_prefix}/bin \
  105. $RPM_BUILD_ROOT%{l_prefix}/cgi \
  106. $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d \
  107. $RPM_BUILD_ROOT%{l_prefix}/libexec \
  108. $RPM_BUILD_ROOT%{l_prefix}/man/man1 \
  109. $RPM_BUILD_ROOT%{l_prefix}/share/j2se14
  110. # unpack vendor distribution
  111. ( umask 022
  112. cd $RPM_BUILD_ROOT%{l_prefix}/libexec
  113. case "%{l_platform -t}" in
  114. i?86-linux2.[2-6]* | i?86-freebsd[45]* )
  115. echo "yes" | sh $pkgfile \
  116. >$RPM_BUILD_ROOT%{l_prefix}/share/j2se14/COPYING.32
  117. ;;
  118. sun4u-sunos5.[6-9]* )
  119. echo "yes" | sh $pkgfile \
  120. >$RPM_BUILD_ROOT%{l_prefix}/share/j2se14/COPYING.32
  121. echo "yes" | sh $suppfile \
  122. >$RPM_BUILD_ROOT%{l_prefix}/share/j2se14/COPYING.64
  123. ;;
  124. i?86-sunos5.[6-9]* )
  125. echo "yes" | sh $pkgfile \
  126. >$RPM_BUILD_ROOT%{l_prefix}/share/j2se14/COPYING.32
  127. ;;
  128. esac
  129. mv $pkgdir j2se14
  130. ) || exit $?
  131. # fix vendor distribution
  132. ( cd $RPM_BUILD_ROOT%{l_prefix}/libexec/j2se14/bin
  133. find . -type f -print | xargs chmod u+w
  134. cd $RPM_BUILD_ROOT%{l_prefix}/libexec/j2se14/jre/bin
  135. find . -type f -print | xargs chmod u+w
  136. case "%{l_platform -t}" in
  137. sun4u-sunos5.[6-9]* )
  138. cd $RPM_BUILD_ROOT%{l_prefix}/libexec/j2se14/bin/sparcv9
  139. find . -type f -print | xargs chmod u+w
  140. cd $RPM_BUILD_ROOT%{l_prefix}/libexec/j2se14/jre/bin/sparcv9
  141. find . -type f -print | xargs chmod u+w
  142. ;;
  143. esac
  144. ) || exit $?
  145. # optionally brand ELF binaries (FreeBSD only)
  146. case "%{l_platform -t}" in
  147. i?86-freebsd[45]* )
  148. brandelf -t Linux \
  149. `find $RPM_BUILD_ROOT%{l_prefix}/libexec/j2se14/bin/ -type f -print` \
  150. >/dev/null 2>&1 || true
  151. brandelf -t Linux \
  152. `find $RPM_BUILD_ROOT%{l_prefix}/libexec/j2se14/jre/bin/ -type f -print` \
  153. >/dev/null 2>&1 || true
  154. ;;
  155. esac
  156. # copy man pages to a final location
  157. if [ -d $RPM_BUILD_ROOT%{l_prefix}/libexec/j2se14/man/man1 ]; then
  158. cp $RPM_BUILD_ROOT%{l_prefix}/libexec/j2se14/man/man1/* \
  159. $RPM_BUILD_ROOT%{l_prefix}/man/man1
  160. elif [ -d $RPM_BUILD_ROOT%{l_prefix}/libexec/j2se14/man/sman1 ]; then
  161. cp $RPM_BUILD_ROOT%{l_prefix}/libexec/j2se14/man/sman1/* \
  162. $RPM_BUILD_ROOT%{l_prefix}/man/man1
  163. fi
  164. # remove unwanted files
  165. rm -f $RPM_BUILD_ROOT%{l_prefix}/man/man1/kinit.1
  166. rm -f $RPM_BUILD_ROOT%{l_prefix}/man/man1/klist.1
  167. rm -f $RPM_BUILD_ROOT%{l_prefix}/man/man1/ktab.1
  168. rm -rf $RPM_BUILD_ROOT%{l_prefix}/libexec/j2se14/man 2>/dev/null || true
  169. rm -rf $RPM_BUILD_ROOT%{l_prefix}/libexec/j2se14/demo 2>/dev/null || true
  170. # link developer binaries
  171. ( cd $RPM_BUILD_ROOT%{l_prefix}/bin
  172. for bin in HtmlConverter appletviewer extcheck idlj jar jarsigner \
  173. java javac javadoc javah javap jdb keytool native2ascii orbd \
  174. policytool rmic rmid rmiregistry serialver servertool tnameserv; do
  175. ln -s ../libexec/j2se14/bin/$bin .
  176. done
  177. ) || exit $?
  178. ( cd $RPM_BUILD_ROOT%{l_prefix}/cgi
  179. ln -s ../libexec/j2se14/bin/java-rmi.cgi java-rmi.cgi
  180. ) || exit $?
  181. # install run-command script
  182. %{l_shtool} install -c -m 755 %{l_value -s -a} \
  183. %{SOURCE rc.j2se14} $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/
  184. %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
  185. %files -f files
  186. %clean
  187. rm -rf $RPM_BUILD_ROOT