diff options
author | Saleem Abdulrasool <compnerd@gentoo.org> | 2005-05-17 16:29:43 +0000 |
---|---|---|
committer | Saleem Abdulrasool <compnerd@gentoo.org> | 2005-05-17 16:29:43 +0000 |
commit | 121fd2a1398ca3f1b324f05193638031f5a18be8 (patch) | |
tree | d60d3dd331c338fb1166e532a5cd518a5bfafac0 | |
parent | Improved DESC, see bug #90705. (diff) | |
download | historical-121fd2a1398ca3f1b324f05193638031f5a18be8.tar.gz historical-121fd2a1398ca3f1b324f05193638031f5a18be8.tar.bz2 historical-121fd2a1398ca3f1b324f05193638031f5a18be8.zip |
Adding Netbeans 4.0 Resolves Bug #68734
Package-Manager: portage-2.0.51.22
-rw-r--r-- | dev-util/netbeans/ChangeLog | 9 | ||||
-rw-r--r-- | dev-util/netbeans/Manifest | 16 | ||||
-rw-r--r-- | dev-util/netbeans/files/digest-netbeans-4.0 | 2 | ||||
-rw-r--r-- | dev-util/netbeans/netbeans-4.0.ebuild | 340 |
4 files changed, 359 insertions, 8 deletions
diff --git a/dev-util/netbeans/ChangeLog b/dev-util/netbeans/ChangeLog index 43811e236982..e1631d1595c8 100644 --- a/dev-util/netbeans/ChangeLog +++ b/dev-util/netbeans/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for dev-util/netbeans # Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-util/netbeans/ChangeLog,v 1.25 2005/04/21 19:10:41 hansmi Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-util/netbeans/ChangeLog,v 1.26 2005/05/17 16:29:43 compnerd Exp $ + +*netbeans-4.0 (17 May 2005) + + 17 May 2005; Saleem Abdulrasool <compnerd@gentoo.org> + +netbeans-4.0.ebuild: + Adding Netbeans 4.0 to tree. Resolves Bug #68734. Modified ebuild from + Betelgeuse. 21 Apr 2005; Michael Hanselmann <hansmi@gentoo.org> netbeans-3.5.1.ebuild: Stable on ppc. diff --git a/dev-util/netbeans/Manifest b/dev-util/netbeans/Manifest index 717a207a5a51..17217abab6e4 100644 --- a/dev-util/netbeans/Manifest +++ b/dev-util/netbeans/Manifest @@ -1,12 +1,14 @@ -MD5 2cd31b2ab2e5a971fc708bda62116434 metadata.xml 162 -MD5 d4d6bd7774014c083a6c4487327579fa netbeans-3.6-r1.ebuild 3161 -MD5 b3bb04e1628fdb40018e40e0fbb482cc ChangeLog 4054 MD5 3f66738f4468a3c502bb199b4d3b6d5c netbeans-3.4.1.ebuild 3197 MD5 8232cefa61ab77a0779af0ebea56a3ed netbeans-3.5.1.ebuild 3159 -MD5 e04a4eefe6510679e7cf06d0377e9e18 files/netbeans.desktop 103 -MD5 eba3a44af2a04cab3a7bf00ce982130e files/digest-netbeans-3.4.1 77 -MD5 21a78956bac04c98135ba5707b98da66 files/netbeans.png 2163 +MD5 d4d6bd7774014c083a6c4487327579fa netbeans-3.6-r1.ebuild 3161 +MD5 a6479440f471747853523219c0e7675b ChangeLog 4255 +MD5 b41a8a50a9f2671adbe2744f43e6348f netbeans-4.0.ebuild 10610 +MD5 2cd31b2ab2e5a971fc708bda62116434 metadata.xml 162 MD5 9c6f59bb154bdcd7242f4544b8feae6b files/netbeans-KDE.desktop 139 +MD5 21a78956bac04c98135ba5707b98da66 files/netbeans.png 2163 MD5 a31cf39b9b70944a298e8fa97275d122 files/digest-netbeans-3.6-r1 67 -MD5 9db67cc7c38cdd884ec192a4c642e144 files/digest-netbeans-3.5.1 77 +MD5 628cbd47ea7d573ab47cc6b96c1b4d65 files/digest-netbeans-4.0 163 MD5 86a2e857f2e16af4becaa6e0e733c215 files/netbeans 786 +MD5 e04a4eefe6510679e7cf06d0377e9e18 files/netbeans.desktop 103 +MD5 eba3a44af2a04cab3a7bf00ce982130e files/digest-netbeans-3.4.1 77 +MD5 9db67cc7c38cdd884ec192a4c642e144 files/digest-netbeans-3.5.1 77 diff --git a/dev-util/netbeans/files/digest-netbeans-4.0 b/dev-util/netbeans/files/digest-netbeans-4.0 new file mode 100644 index 000000000000..b44ef1705c28 --- /dev/null +++ b/dev-util/netbeans/files/digest-netbeans-4.0 @@ -0,0 +1,2 @@ +MD5 a5488c563b93b3181cfeccbb67ee761c netbeans-4_0-src-ide_sources.tar.bz2 53877180 +MD5 c851459f64b3e8586b616463a1ad75e8 netbeans-4_0-docs-javadoc.tar.bz2 12728428 diff --git a/dev-util/netbeans/netbeans-4.0.ebuild b/dev-util/netbeans/netbeans-4.0.ebuild new file mode 100644 index 000000000000..fa3caa5ca028 --- /dev/null +++ b/dev-util/netbeans/netbeans-4.0.ebuild @@ -0,0 +1,340 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-util/netbeans/netbeans-4.0.ebuild,v 1.1 2005/05/17 16:29:43 compnerd Exp $ + +inherit eutils java-pkg + +# Server Tarball layout structure +# 4.0 200412081800/d5a0f13566068cb86e33a46ea130b207 +# 4.1 200505031930/66083d474e5fdfc80a1443fb851bd9d5 + +# ant-mis is stuff we never use put instead of pactching we let the build process use this file +# so adding the license just to be sure +# The list of files in here is not complete but just some I listed. +# Apache-1.1: webserver.jar +# Apache-2.0: ant-misc-1.6.2.zip +# as-is: docbook-xsl-1.65.1.zip, pmd-netbeans35-bin-0.91.zip + +# There are many other scrambled files in Netbeans but the +# default module configuration doesn't use all of them. +# +# If you want to find out useless java-pkg_jar-from calls and all scrambled files, which don't have +# symlinks to the installed files, you can use a ruby script I wrote. It is in the experimental tree: +# https://gentooexperimental.org/svn/java/gentoo-java-experimental/dev-util/netbeans/files +# +# This command should be run after ebuild <pkg> unpack in the source root +# 'ebuild netbeans-4.0.ebuild compile | grep Unscrambling | grep "\.jar"' +# Check which jars are actually being used to compile Netbeans +# +# This command should be run after ebuild <pkg> install in the image root +# 'find . -name "*.jar" -type f | less' +# Check the list to see that no packed jars get copied to the image +# +# Remove the unset DISPLAY line from src_compile to get graphical license dialogs and pause before +# unscramble + +MY_PV=${PV/./_} + +BASELOCATION="http://www.netbeans.org/download/${MY_PV}/fcs/200412081800/d5a0f13566068cb86e33a46ea130b207" +MAINTARBALL="netbeans-${MY_PV}-src-ide_sources.tar.bz2" +JAVADOCTARBALL="netbeans-${MY_PV}-docs-javadoc.tar.bz2" + +DESCRIPTION="NetBeans IDE for Java" +HOMEPAGE="http://www.netbeans.org" +SRC_URI="${BASELOCATION}/${MAINTARBALL} + doc? ( ${BASELOCATION}/${JAVADOCTARBALL} )" + +LICENSE="Apache-1.1 Apache-2.0 SPL W3C sun-bcla-j2eeeditor sun-bcla-javac sun-javac as-is docbook sun-resolver" +SLOT="4.0" +KEYWORDS="~x86" +IUSE="debug doc" + +# dev-java/xml-commons-resolver for future versions +RDEPEND=">=virtual/jre-1.4.2 + =dev-java/commons-logging-1.0* + dev-java/commons-el + =dev-java/junit-3.8* + =dev-java/servletapi-2.2* + =dev-java/servletapi-2.3* + =dev-java/servletapi-2.4* + =dev-java/xerces-2.6.2* + dev-java/sac + dev-java/flute + dev-java/jmi-interface + >=dev-java/javahelp-bin-2.0.02-r1 + ~www-servers/tomcat-5.0.28 + dev-java/sun-j2ee-deployment-bin + dev-java/xml-commons + dev-java/jakarta-jstl" +DEPEND="${RDEPEND} + >=virtual/jdk-1.4.2 + >=dev-java/ant-1.6.1 + =dev-java/jakarta-regexp-1.3* + =dev-java/xalan-2* + dev-java/jtidy + =dev-java/jaxen-1.1* + dev-java/saxpath + dev-java/javamake-bin + dev-util/pmd" + +TOMCATSLOT="5" + +# Replacement JARs for Netbeans +COMMONS_LOGGING="commons-logging commons-logging.jar commons-logging-1.0.4.jar" +JASPERCOMPILER="tomcat-${TOMCATSLOT} jasper-compiler.jar jasper-compiler-5.0.28.jar" +JASPERRUNTIME="tomcat-${TOMCATSLOT} jasper-runtime.jar jasper-runtime-5.0.28.jar" +JH="javahelp-bin jh.jar jh-2.0_01.jar" +JMI="jmi-interface jmi.jar jmi.jar" +JSPAPI="servletapi-2.4 jsp-api.jar jsp-api-2.0.jar" +JSR="sun-j2ee-deployment-bin sun-j2ee-deployment-bin.jar jsr88javax.jar" +JSTL="jakarta-jstl jstl.jar jstl-1.1.2.jar" +JUNIT="junit junit.jar junit-3.8.1.jar" +MOF="jmi-interface mof.jar mof.jar" +PMD="pmd pmd.jar pmd-1.3.jar" +REGEXP="jakarta-regexp-1.3 jakarta-regexp.jar regexp-1.2.jar" +SERVLET22="servletapi-2.2 servletapi-2.2.jar servlet-2.2.jar" +SERVLET23="servletapi-2.3 servletapi-2.3.jar servlet-2.3.jar" +SERVLET24="servletapi-2.4 servlet-api.jar servlet-api-2.4.jar" +STANDARD="jakarta-jstl standard.jar standard-1.1.2.jar" +XERCES="xerces-2 xercesImpl.jar xerces-2.6.2.jar" +XMLCOMMONS="xml-commons xml-apis.jar xml-commons-dom-ranges-1.0.b2.jar" + +S=${WORKDIR}/netbeans-src +BUILDDESTINATION="${S}/nbbuild/netbeans" + +src_unpack () { + unpack ${MAINTARBALL} + + if use doc; then + mkdir javadoc && cd javadoc + unpack ${JAVADOCTARBALL} || die "Unable to extract javadoc" + rm -f *.zip + fi + + cd ${S}/nbbuild + # Disable the bundled Tomcat in favor of Portage installed version + sed -i -e "s%tomcatint/tomcat5/bundled,%%g" *.properties + + cd ${S}/ant/external/ + touch ant-api-1.6.2.zip + touch ant-docs-1.6.2.zip + + # We have ant libs here so using the system libs + epatch ${FILESDIR}/antbuild.xml.patch + mkdir lib && cd lib + java-pkg_jar-from ant-tasks + java-pkg_jar-from ant-core + + cd ${S}/core/external + java-pkg_jar-from ${JH} + + cd ${S}/mdr/external/ + java-pkg_jar-from ${JMI} + java-pkg_jar-from ${MOF} + + cd ${S}/nbbuild/external + java-pkg_jar-from javahelp-bin jhall.jar jhall-2.0_01.jar + + cd ${S}/libs/external/ + java-pkg_jar-from ${XERCES} + java-pkg_jar-from ${COMMONS_LOGGING} + java-pkg_jar-from xalan xalan.jar xalan-2.5.2.jar + java-pkg_jar-from ${XMLCOMMONS} + java-pkg_jar-from ${PMD} + java-pkg_jar-from ${REGEXP} + # j2eeeditor-1.0.jar is only used in Netbeans but licensed under + # Sun's bcla + supplemental terms + + cd ${S}/xml/external/ + java-pkg_jar-from sac + java-pkg_jar-from xerces-2 xercesImpl.jar xerces2.jar + java-pkg_jar-from flute + # There's also resolver-1_1_nb.jar in this directory. + # The implementation is from Sun and I haven't found it. + # In later Netbeans versions xml-commons is used so we will use it + # then. + + cd ${S}/httpserver/external/ + java-pkg_jar-from ${SERVLET22} + # The webserver.jar in here is a stripped down version of Tomcat 3.3. + # We will use the included jar because we don't want to have Tomcat 3.X + # in the tree and because maintaining it would probably be a pain. + + cd ${S}/j2eeserver/external + java-pkg_jar-from ${JSR} + + cd ${S}/java/external/ + java-pkg_jar-from javamake-bin javamake.jar javamake-1.2.12.jar + # gjast.jar is a mix of Netbeans stuff with sun javac stuff + # It is not available elsewhere. + + cd ${S}/junit/external/ + java-pkg_jar-from ${JUNIT} + touch junit-3.8.1-api.zip + + cd ${S}/tasklist/external/ + java-pkg_jar-from jtidy Tidy.jar Tidy-r7.jar + + cd ${S}/web/external + java-pkg_jar-from ${SERVLET23} + java-pkg_jar-from ${SERVLET24} + java-pkg_jar-from commons-el + java-pkg_jar-from jaxen-1.1 jaxen-1.1_beta2.jar jaxen-full.jar + java-pkg_jar-from saxpath + java-pkg_jar-from ${JASPERCOMPILER} + java-pkg_jar-from ${JASPERRUNTIME} + java-pkg_jar-from ${JSPAPI} + java-pkg_jar-from ${JSTL} + java-pkg_jar-from ${STANDARD} + touch jsp20-docs.zip + touch jstl-1.1.2-javadoc.zip + touch servlet24-docs.zip +} + +src_compile() { + local antflags="" + + if use debug; then + antflags="${antflags} -Dbuild.compiler.debug=true" + antflags="${antflags} -Dbuild.compiler.deprecation=true" + else + antflags="${antflags} -Dbuild.compiler.deprecation=false" + fi + + antflags="${antflags} -Dnetbeans.no.pre.unscramble=true" + antflags="${antflags} -Dstop.when.broken.modules=true" + + # The build will attempt to display graphical + # dialogs for the licence agreements if this is set. + unset DISPLAY + + # The location of the main build.xml file + cd ${S}/nbbuild + + # Specify the build-nozip target otherwise it will build + # a zip file of the netbeans folder, which will copy directly. + yes yes 2>/dev/null | ant ${antflags} build-nozip || die "Compiling failed!" + + # Remove non-x86 Linux binaries + find ${BUILDDESTINATION} -type f \ + -name "*.exe" -o \ + -name "*.cmd" -o \ + -name "*.bat" -o \ + -name "*.dll" \ + | xargs rm -f + + # Removing external stuff. They are api docs from external libs. + cd ${BUILDDESTINATION}/ide4/docs + rm -f *.zip + + # The next directory seems to be empty + if ! rmdir doc 2> /dev/null; then + use doc || rm -fr ./doc + fi + + # Use the system ant + cd ${BUILDDESTINATION}/ide4/ant + + rm -fr ./lib + rm -fr ./bin +} + +src_install() { + local DESTINATION="${ROOT}/usr/share/netbeans-${SLOT}" + insinto $DESTINATION + + einfo "Installing the program..." + cd ${BUILDDESTINATION} + doins -r * + + symlink_extjars ${D}/${DESTINATION} + + fperms 755 \ + ${DESTINATION}/bin/netbeans \ + ${DESTINATION}/platform4/lib/nbexec + + # The wrapper wrapper :) + newbin ${FILESDIR}/startscript.sh netbeans-${SLOT} + + # Ant installation + local ANTDIR="${DESTINATION}/ide4/ant" + cd ${D}/${ANTDIR} + + dodir /usr/share/ant-core/lib + dosym /usr/share/ant-core/lib ${ANTDIR}/lib + + dodir /usr/share/ant-core/bin + dosym /usr/share/ant-core/bin ${ANTDIR}/bin + + # Documentation + einfo "Installing Documentation..." + + cd ${D}/${DESTINATION} + + use doc && java-pkg_dohtml -r ${WORKDIR}/javadoc/* + + dodoc build_info + dohtml CREDITS.html README.html netbeans.css + + rm -f build_info CREDITS.html README.html netbeans.css + + # Icons and shortcuts + einfo "Installing icons..." + + dodir ${DESTINATION}/icons + insinto ${DESTINATION}/icons + doins ${S}/core/ide/release/bin/icons/*png + + for res in "16x16" "24x24" "32x32" "48x48" "128x128" ; do + dodir /usr/share/icons/hicolor/${res}/apps + dosym ${DESTINATION}/icons/nb${res}.png /usr/share/icons/hicolor/${res}/apps/netbeans.png + done + + make_desktop_entry netbeans-${SLOT} Netbeans netbeans Development +} + +pkg_postinst () { + einfo "Your tomcat directory might not have the right permissions." + einfo "Please make sure that normal users can read the directory: " + einfo "${ROOT}/usr/share/tomcat-${TOMCATSLOT} " + einfo " " + einfo "The integrated Tomcat is not installed, but you can easily " + einfo "use the system Tomcat. See Netbeans documentation if you " + einfo "don't know how to do that. The relevant settings are in the" + einfo "runtime window. " +} + +# Supporting functions for this ebuild + +function fix_manifest() { + sed -i "s%ext/${1}%$(java-pkg_getjar ${2} ${3})%" ${4} +} + +function symlink_extjars() { + cd ${1}/ide4/modules/ext + java-pkg_jar-from ${COMMONS_LOGGING} + java-pkg_jar-from flute + java-pkg_jar-from ${JMI} + java-pkg_jar-from ${JUNIT} + java-pkg_jar-from ${MOF} + java-pkg_jar-from sac + + cd ${1}/ide4/modules/autoload/ext + java-pkg_jar-from commons-el + java-pkg_jar-from ${SERVLET22} + java-pkg_jar-from ${SERVLET23} + java-pkg_jar-from ${SERVLET24} + java-pkg_jar-from ${XERCES} + java-pkg_jar-from ${JSR} + java-pkg_jar-from ${JASPERCOMPILER} + java-pkg_jar-from ${JASPERRUNTIME} + java-pkg_jar-from ${XMLCOMMONS} + java-pkg_jar-from ${JSPAPI} + + cd ${1}/ide4/config/TagLibraries/JSTL11 + java-pkg_jar-from jakarta-jstl jstl.jar + java-pkg_jar-from jakarta-jstl standard.jar + + cd ${1}/platform4/modules/ext + java-pkg_jar-from ${JH} +} |