# Copyright (c) 2000-2009, JPackage Project # All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # 1. Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # 2. Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the # distribution. # 3. Neither the name of the JPackage Project nor the names of its # contributors may be used to endorse or promote products derived # from this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # # HACK: disable brp-java-repack-jars # HACK: see, %define __os_install_post \ /usr/lib/rpm/redhat/brp-compress \ %{!?__debug_package:/usr/lib/rpm/redhat/brp-strip %{__strip}} \ /usr/lib/rpm/redhat/brp-strip-static-archive %{__strip} \ /usr/lib/rpm/redhat/brp-strip-comment-note %{__strip} %{__objdump} \ /usr/lib/rpm/brp-python-bytecompile \ %{nil} %define with() %{expand:%%{?with_%{1}:1}%%{!?with_%{1}:0}} %define without() %{expand:%%{?with_%{1}:0}%%{!?with_%{1}:1}} %define bcond_with() %{expand:%%{?_with_%{1}:%%global with_%{1} 1}} %define bcond_without() %{expand:%%{!?_without_%{1}:%%global with_%{1} 1}} %bcond_without dev %bcond_with gcj_support %bcond_with native %bcond_with svn %bcond_without upstream %bcond_without zips %bcond_with bundled_jars %if %with native %bcond_without dev %endif %if %with gcj_support %define gcj_support 1 %else %define gcj_support 0 %endif %define __jar_repack %{nil} %define svnrev releases/2.0@7591M %define svnrev_filename gwt-2.0.3-svn-releases-2.0-7591M %define swtver 3235 %define section free Name: gwt Version: 2.3.0 Release: 1%{?dist} Summary: Google Web Toolkit License: ASL 2.0 Group: Development/Libraries/Java URL: http://code.google.com/webtoolkit/ Source0: http://google-web-toolkit.googlecode.com/files/%{name}-%{version}.zip # svn -q export -r 7591 http://google-web-toolkit.googlecode.com/svn/tools/ tools && tar cjf gwt-tools.tar.bz2 tools # Source1: gwt-tools.tar.bz2 Source1: http://mirrors.ibiblio.org/pub/mirrors/maven2/com/google/gwt/gwt-dev/2.3.0/gwt-dev-2.3.0.pom Source2: http://mirrors.ibiblio.org/pub/mirrors/maven2/com/google/gwt/gwt-servlet/2.3.0/gwt-servlet-2.3.0.pom Source3: http://mirrors.ibiblio.org/pub/mirrors/maven2/com/google/gwt/gwt-user/2.3.0/gwt-user-2.3.0.pom Patch0: gwt-build.patch Patch1: gwt-javadoc-link.patch Patch2: gwt-no-svninfo.patch Requires(post): jpackage-utils >= 0:1.7.3 Requires(postun): jpackage-utils >= 0:1.7.3 BuildRequires: ant BuildRequires: junit-javadoc %if %with svn BuildRequires: subversion %endif BuildRequires: tomcat6-servlet-2.5-api BuildRequires: xml-commons-jaxp-1.3-apis BuildRequires: xerces-j2 BuildRequires: zip %if %{gcj_support} BuildRequires: java-gcj-compat-devel %else BuildArch: noarch BuildRequires: java-devel >= 1.6.0 %endif BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root %if %{without bundled_jars} BuildRequires: emma BuildRequires: eclipse-eclemma BuildRequires: ant-junit BuildRequires: ant-contrib BuildRequires: checkstyle # newer than bundled version BuildRequires: jetty BuildRequires: eclipse-platform BuildRequires: nekohtml BuildRequires: selenium-java-client-driver BuildRequires: selenium-server # newer than bundled version BuildRequires: eclipse-jdt BuildRequires: ecj BuildRequires: eclipse-swt # newer than bundled version BuildRequires: protobuf-java BuildRequires: cssparser BuildRequires: sac BuildRequires: tomcat5-server-lib BuildRequires: tomcat5-common-lib BuildRequires: tomcat5-jasper BuildRequires: tomcat5-servlet-2.4-api BuildRequires: tomcat5-jsp-2.0-api BuildRequires: tomcat6-servlet-2.5-api BuildRequires: directory-naming BuildRequires: mx4j BuildRequires: regexp BuildRequires: junit BuildRequires: jcommon BuildRequires: jfreechart BuildRequires: itext BuildRequires: cglib BuildRequires: xalan-j2 BuildRequires: xerces-j2 BuildRequires: apache-commons-el BuildRequires: apache-commons-beanutils BuildRequires: apache-commons-codec BuildRequires: apache-commons-logging BuildRequires: apache-commons-io BuildRequires: apache-commons-lang BuildRequires: apache-commons-digester BuildRequires: jakarta-commons-modeler BuildRequires: jakarta-commons-httpclient # newer than bundled version BuildRequires: jakarta-commons-collections BuildRequires: flute BuildRequires: jarjar BuildRequires: objectweb-asm BuildRequires: easymock BuildRequires: htmlunit, htmlunit-core-js %endif %description Writing web apps today is a tedious and error-prone process. Developers can spend 90% of their time working around browser quirks. In addition, building, reusing, and maintaining large JavaScript code bases and AJAX components can be difficult and fragile. Google Web Toolkit (GWT) eases this burden by allowing developers to quickly build and maintain complex yet highly performant JavaScript front-end applications in the Java programming language. %package javadoc Summary: Javadoc for %{name} Group: Development/Documentation %description javadoc Javadoc for %{name}. %package demo Summary: Samples for %{name} Group: Development/Libraries/Java Requires: %{name} = %{?epoch::%{epoch}:}%{version}-%{release} %description demo Samples for %{name}. %if %with dev %package devel Summary: Support for the GWT Java to javascript compiler and the hosted mode runtime Group: Development/Libraries/Java Requires: %{name} = %{?epoch::%{epoch}:}%{version}-%{release} %description devel Support for the GWT Java to javascript compiler and the hosted mode runtime. %endif %if %with zips %package zip Summary: Container for the zipped distribution of %{name} Group: Development %description zip Container for the zipped distribution of %{name}. %package src-zip Summary: Container for the sources of %{name} Group: Development %description src-zip Container for the sources of %{name}. %endif %prep %setup -q # %patch0 -p0 #XXX - doesn't apply # Doesn't apply # %patch1 -p0 #XXX - doesn't apply %if %without svn # %patch2 -p0 #XXX - doesn't apply %endif %if %with upstream %setup -q -T -D -a 1 # XXX: (dwalluck): Google's jar also contains the .java files %{__rm} tools/lib/tomcat/servlet-api-2.5.jar %{__cp} -p $(build-classpath tomcat6-servlet-2.5-api) tools/lib/tomcat/servlet-api-2.5.jar %endif %if %without native %{__rm} \ distro-source/src/benchmarkViewer \ distro-source/src/i18nCreator \ distro-source/src/webAppCreator \ distro-source/src/benchmarkViewer.cmd \ distro-source/src/i18nCreator.cmd \ distro-source/src/webAppCreator.cmd \ jni/linux/prebuilt/libgwt-ll.so \ jni/windows/prebuilt/gwt-ll.dll \ tools/lib/eclipse/libswt-gtk-%{swtver}.so \ tools/lib/eclipse/libswt-mozilla-gcc3-gtk-%{swtver}.so \ tools/lib/eclipse/libswt-mozilla-gtk-%{swtver}.so \ tools/lib/eclipse/libswt-mozilla17-profile-gcc3-gtk-%{swtver}.so \ tools/lib/eclipse/libswt-mozilla17-profile-gtk-%{swtver}.so \ tools/lib/eclipse/libswt-pi-gtk-%{swtver}.so \ tools/lib/eclipse/swt-win32-%{swtver}.dll \ tools/sdk/mozilla-1.7.13/lib/libxpcomglue_s.a \ tools/sdk/mozilla-1.7.12/lib/libxpcomglue_s.a %endif %if %with zips %{__mkdir_p} %{name}-%{version} %{__cp} -pr branch-info.txt build-tools build.xml common.ant.xml dev dev-ext distro-source doc eclipse jni platforms.ant.xml reference samples servlet user tools %{name}-%{version}/ %{_bindir}/zip -q -9 -r %{name}-%{version}-src.zip %{name}-%{version}/ %{__rm} -r %{name}-%{version}/ %endif # Replace bundled JAR files with symlinks to system JAR files %if %{without bundled_jars} # ./tools/antlib/ant-junit-1.6.5.jar ln -sf %{_javadir}/ant/ant-junit.jar tools/antlib/ant-junit-1.6.5.jar # ./tools/antlib/ant-junit-1.7.1.jar ln -sf %{_javadir}/ant/ant-junit.jar tools/antlib/ant-junit-1.7.1.jar # ./tools/antlib/ant-contrib-1.0b3.jar ln -sf %{_javadir}/ant/ant-contrib.jar tools/antlib/ant-contrib-1.0b3.jar # ./tools/antlib/checkstyle-all-4.2.jar ln -sf %{_javadir}/checkstyle.jar tools/antlib/checkstyle-all-4.2.jar # ./tools/api-checker/reference/gwt-user-modified.jar # This is provided by and for gwt -- safe to include # ./tools/api-checker/reference/gwt-dev-modified.jar # This is provided by and for gwt -- safe to include # ./tools/redist/emma/emma_ant-2.0.5312.jar ln -sf %{_javadir}/emma_ant.jar tools/redist/emma/emma_ant-2.0.5312.jar # ./tools/redist/emma/eclemma-core.jar ln -sf %{_datadir}/eclipse/dropins/eclemma/eclipse/plugins/com.mountainminds.eclemma.core*/eclemma-core.jar tools/redist/emma/com.mountainminds.eclemma.core_1.3.2.jar # ./tools/redist/emma/emma-2.0.5312-patched.jar ln -sf %{_javadir}/emma.jar tools/redist/emma/emma-2.0.5312-patched.jar # ./tools/redist/emma/emma.jar ln -sf %{_javadir}/emma.jar tools/redist/emma/emma.jar # ./tools/lib/htmlunit/htmlunit-core-js-r5070.jar ln -sf %{_javadir}/htmlunit-core-js.jar tools/lib/htmlunit/htmlunit-core-js-r5070.jar # ./tools/lib/htmlunit/htmlunit-core-js-2.5.jar ln -sf %{_javadir}/htmlunit-core-js.jar tools/lib/htmlunit/htmlunit-core-js-2.5.jar # ./tools/lib/htmlunit/htmlunit-core-js-r5070-sources.jar rm -f tools/lib/htmlunit/htmlunit-core-js-r5070-sources.jar # ./tools/lib/htmlunit/htmlunit-2.5.jar ln -sf %{_javadir}/htmlunit.jar tools/lib/htmlunit/htmlunit-2.5.jar # ./tools/lib/htmlunit/htmlunit-r5070.jar ln -sf %{_javadir}/htmlunit.jar tools/lib/htmlunit/htmlunit-r5070.jar # ./tools/lib/htmlunit/htmlunit-2.5-sources.jar rm -f tools/lib/htmlunit/htmlunit-2.5-sources.jar # ./tools/lib/htmlunit/htmlunit-r5070-sources.jar rm -f tools/lib/htmlunit/htmlunit-r5070-sources.jar # ./tools/lib/htmlunit/htmlunit-core-js-2.5-sources.jar rm -f tools/lib/htmlunit/htmlunit-core-js-2.5-sources.jar # FIXME - Fedora includes jetty-6.1.24 (which isn't compatible with jetty-6.1.11) # ./tools/lib/jetty/jetty-6.1.11.jar #ln -sf %{_javadir}/jetty/jetty.jar tools/lib/jetty/jetty-6.1.11.jar # ./tools/lib/nekohtml/nekohtml-1.9.12.jar ln -sf %{_javadir}/nekohtml.jar tools/lib/nekohtml/nekohtml-1.9.12.jar # ./tools/lib/nekohtml/nekohtml-1.9.13.jar ln -sf %{_javadir}/nekohtml.jar tools/lib/nekohtml/nekohtml-1.9.13.jar # ./tools/lib/selenium/selenium-java-client-driver-sources.jar rm -f tools/lib/selenium/selenium-java-client-driver-sources.jar # ./tools/lib/selenium/1.0.1/selenium-java-client-driver-sources.jar rm -f tools/lib/selenium/1.0.1/selenium-java-client-driver-sources.jar # ./tools/lib/selenium/1.0.1/selenium-java-client-driver.jar ln -sf %{_javadir}/selenium-java-client-driver.jar tools/lib/selenium/1.0.1/selenium-java-client-driver.jar # ./tools/lib/selenium/1.0.1/selenium-server-sources.jar rm -f tools/lib/selenium/1.0.1/selenium-server-sources.jar # ./tools/lib/selenium/1.0.1/selenium-server.jar rm -f tools/lib/selenium/1.0.1/selenium-server.jar # ./tools/lib/selenium/selenium-java-client-driver.jar ln -sf %{_javadir}/selenium-java-client-driver.jar tools/lib/selenium/selenium-java-client-driver.jar # ./tools/lib/selenium/selenium-server-sources.jar rm -f tools/lib/selenium/selenium-server-sources.jar # ./tools/lib/selenium/selenium-server.jar ln -sf %{_javadir}/selenium-server-coreless.jar tools/lib/selenium/selenium-server.jar # FIXME - the protobuf provided by gwt is a customized version specific to gwt and not for use with any other package # ./tools/lib/protobuf/protobuf-2.2.0/protobuf-java-2.2.0.jar #ln -sf %{_javadir}/protobuf-2.3.0.jar tools/lib/protobuf/protobuf-2.2.0/protobuf-java-2.2.0.jar # ./tools/lib/protobuf/protobuf-2.2.0/protobuf-java-rebased-2.2.0.jar #rm -f tools/lib/protobuf/protobuf-2.2.0/protobuf-java-rebased-2.2.0.jar # ./tools/lib/eclipse/org.eclipse.swt.win32-win32-3.2.1.jar rm -f tools/lib/eclipse/org.eclipse.swt.win32-win32-3.2.1.jar # ./tools/lib/eclipse/org.eclipse.swt.carbon-macosx-3.2.1.jar rm -f tools/lib/eclipse/org.eclipse.swt.carbon-macosx-3.2.1.jar # ./tools/lib/eclipse/org.eclipse.swt.gtk-linux-3.2.1.jar ln -sf %{_libdir}/eclipse/swt.jar tools/lib/eclipse/org.eclipse.swt.gtk-linux-3.2.1.jar # FIXME - the jdt provided by gwt is a customized version specific to gwt and not for use with any other package # ./tools/lib/eclipse/jdt-3.1.1.jar #ln -sf %{_libdir}/eclipse/dropins/jdt/plugins/org.eclipse.jdt.core_3.6.0.v_A58.jar tools/lib/eclipse/jdt-3.1.1.jar # ./tools/lib/eclipse/jdt-3.3.1.jar #ln -sf %{_libdir}/eclipse/dropins/jdt/plugins/org.eclipse.jdt.core_3.6.0.v_A58.jar tools/lib/eclipse/jdt-3.3.1.jar # ./tools/lib/eclipse/jdt-3.4.2.jar #ln -sf %{_libdir}/eclipse/dropins/jdt/plugins/org.eclipse.jdt.core_3.6.0.v_A58.jar tools/lib/eclipse/jdt-3.4.2.jar # ./tools/lib/cssparser/cssparser-0.9.5.jar ln -sf %{_javadir}/cssparser.jar tools/lib/cssparser/cssparser-0.9.5.jar # ./tools/lib/tomcat/commons-logging-1.0.jar ln -sf %{_javadir}/commons-logging.jar tools/lib/tomcat/commons-logging-1.0.jar # ./tools/lib/tomcat/tomcat-util-5.1.jar ln -sf %{_javadir}/tomcat5/tomcat-util.jar tools/lib/tomcat/tomcat-util-5.1.jar # ./tools/lib/tomcat/jasper-compiler-1.0.jar ln -sf %{_javadir}/jasper5-compiler.jar tools/lib/tomcat/jasper-compiler-1.0.jar # ./tools/lib/tomcat/catalina-1.0.jar ln -sf %{_javadir}/tomcat5/catalina.jar tools/lib/tomcat/catalina-1.0.jar # ./tools/lib/tomcat/ant-launcher-1.7.1.jar ln -sf %{_javadir}/ant-launcher.jar tools/lib/tomcat/ant-launcher-1.7.1.jar # ./tools/lib/tomcat/ant-launcher-1.6.5.jar ln -sf %{_javadir}/ant-launcher.jar tools/lib/tomcat/ant-launcher-1.6.5.jar # ./tools/lib/tomcat/naming-resources-1.0.jar ln -sf %{_javadir}/tomcat5/naming-resources.jar tools/lib/tomcat/naming-resources-1.0.jar # ./tools/lib/tomcat/tomcat-jk2-2.1.jar rm -f tools/lib/tomcat/tomcat-jk2-2.1.jar # FIXME - can't find this anywhere ln -sf %{_javadir}/tomcat5/tomcat-coyote.jar tools/lib/tomcat/tomcat-coyote-1.0.jar # ./tools/lib/tomcat/naming-java-1.0.jar ln -sf %{_javadir}/directory-naming/naming-java.jar tools/lib/tomcat/naming-java-1.0.jar # ./tools/lib/tomcat/servlet-api-2.4.jar ln -sf %{_javadir}/tomcat5-servlet-2.4-api.jar tools/lib/tomcat/servlet-api-2.4.jar # ./tools/lib/tomcat/mx4j-jmx-1.1.jar ln -sf %{_javadir}/mx4j/mx4j-jmx.jar tools/lib/tomcat/mx4j-jmx-1.1.jar # ./tools/lib/tomcat/commons-el-1.0.jar ln -sf %{_javadir}/commons-el.jar tools/lib/tomcat/commons-el-1.0.jar # ./tools/lib/tomcat/tomcat-http11-1.0.jar rm -f tools/lib/tomcat/tomcat-http11-1.0.jar # FIXME - I believe this is provided by tomcat5-server-lib # ./tools/lib/tomcat/servlets-common-1.0.jar rm -f ./tools/lib/tomcat/servlets-common-1.0.jar # FIXME - I believe this is provided by tomcat5-server-lib # ./tools/lib/tomcat/jsp-api-2.0.jar ln -sf %{_javadir}/jspapi.jar tools/lib/tomcat/jsp-api-2.0.jar # ./tools/lib/tomcat/jsp-api-2.1.jar ln -sf %{_javadir}/jspapi.jar tools/lib/tomcat/jsp-api-2.1.jar # ./tools/lib/tomcat/commons-modeler-1.1.jar ln -sf %{_javadir}/commons-modeler.jar tools/lib/tomcat/commons-modeler-1.1.jar # ./tools/lib/tomcat/commons-beanutils-1.6.jar ln -sf %{_javadir}/apache-commons-beanutils.jar tools/lib/tomcat/commons-beanutils-1.6.jar # ./tools/lib/tomcat/commons-collections-3.1.jar ln -sf %{_javadir}/jakarta-commons-collections.jar tools/lib/tomcat/commons-collections-3.1.jar # ./tools/lib/tomcat/servlets-invoker-1.0.jar ln -sf %{_javadir}/tomcat5/servlets-invoker.jar tools/lib/tomcat/servlets-invoker-1.0.jar # ./tools/lib/tomcat/servlets-default-1.0.jar ln -sf %{_javadir}/tomcat5/servlets-default.jar tools/lib/tomcat/servlets-default-1.0.jar # ./tools/lib/tomcat/catalina-optional-1.0.jar ln -sf %{_javadir}/tomcat5/catalina-optional.jar tools/lib/tomcat/catalina-optional-1.0.jar # ./tools/lib/tomcat/jakarta-regexp-1.3.jar ln -sf %{_javadir}/regexp.jar tools/lib/tomcat/jakarta-regexp-1.3.jar # ./tools/lib/tomcat/servlet-api-2.5.jar ln -sf %{_javadir}/tomcat6-servlet-2.5-api.jar tools/lib/tomcat/servlet-api-2.5.jar # ./tools/lib/tomcat/naming-common-1.0.jar rm -f tools/lib/tomcat/naming-common-1.0.jar # NOTE - I can't find this anywhere # ./tools/lib/tomcat/jasper-runtime-1.0.jar ln -sf %{_javadir}/jasper5-runtime.jar tools/lib/tomcat/jasper-runtime-1.0.jar # ./tools/lib/tomcat/commons-digester-1.5.jar ln -sf %{_javadir}/commons-digester.jar tools/lib/tomcat/commons-digester-1.5.jar # ./tools/lib/tomcat/naming-factory-1.0.jar ln -sf %{_javadir}/tomcat5/naming-factory.jar tools/lib/tomcat/naming-factory-1.0.jar # ./tools/lib/junit/junit-3.8.1.jar ln -sf %{_javadir}/junit.jar tools/lib/junit/junit-3.8.1.jar # ./tools/lib/jfreechart/jcommon-1.0.6.jar ln -sf %{_javadir}/jcommon.jar tools/lib/jfreechart/jcommon-1.0.6.jar # ./tools/lib/jfreechart/jfreechart-1.0.3.jar ln -sf %{_javadir}/jfreechart/jfreechart.jar tools/lib/jfreechart/jfreechart-1.0.3.jar # ./tools/lib/jfreechart/itext-1.4.6.jar ln -sf %{_javadir}/itext.jar tools/lib/jfreechart/itext-1.4.6.jar # FIXME - As of Java 1.6, swing-worker is included in the JRE # ./tools/lib/sun/swingworker/swing-worker-1.1.jar #ln -sf %{_datadir}/netbeans/java3/modules/ext/swing-worker-1.1.jar tools/lib/sun/swingworker/swing-worker-1.1.jar rm -f tools/lib/sun/swingworker/swing-worker-1.1.jar # ./tools/lib/javaswf/javaswf-20050404.jar rm -f tools/lib/javaswf/javaswf-20050404.jar # NOTE - can't find this anywhere # ./tools/lib/cglib/cglib-2.2.jar ln -sf %{_javadir}/cglib.jar tools/lib/cglib/cglib-2.2.jar # ./tools/lib/cglib/cglib-src-2.2.jar rm -f tools/lib/cglib/cglib-src-2.2.jar # ./tools/lib/xerces/xerces-2_9_1/xml-apis.jar rm -f ./tools/lib/xerces/xerces-2_9_1/xml-apis.jar # NOTE - possibly xml-commons-apis? # ./tools/lib/xerces/xerces-2_9_1/xercesImpl-NoMetaInf.jar rm -f tools/lib/xerces/xerces-2_9_1/xercesImpl-NoMetaInf.jar # ./tools/lib/xerces/xerces-2_9_1/serializer.jar ln -sf %{_javadir}/xalan-j2-serializer.jar tools/lib/xerces/xerces-2_9_1/serializer.jar # ./tools/lib/xerces/xerces-2_9_1/xercesImpl.jar rm -f tools/lib/xerces/xerces-2_9_1/xercesImpl.jar # ./tools/lib/xerces/xerces-2.0.2.jar ln -sf %{_javadir}/xerces-j2.jar tools/lib/xerces/xerces-2.0.2.jar # ./tools/lib/xerces/xml-apis-2.0.2.jar rm -f ./tools/lib/xerces/xml-apis-2.0.2.jar # NOTE - possibly xml-commons-apis? # ./tools/lib/xalan/xalan-2.7.1.jar ln -sf %{_javadir}/xalan-j2.jar tools/lib/xalan/xalan-2.7.1.jar # ./tools/lib/apache/tapestry-util-text-4.0.2.jar rm -f ./tools/lib/apache/tapestry-util-text-4.0.2.jar # FIXME - need to package tapestry # ./tools/lib/apache/commons/commons-codec-1.3.jar ln -sf %{_javadir}/commons-codec.jar tools/lib/apache/commons/commons-codec-1.3.jar # ./tools/lib/apache/commons/commons-logging-1.1.1.jar ln -sf %{_javadir}/commons-logging.jar tools/lib/apache/commons/commons-logging-1.1.1.jar # ./tools/lib/apache/commons/commons-io-1.4.jar ln -sf %{_javadir}/commons-io.jar tools/lib/apache/commons/commons-io-1.4.jar # ./tools/lib/apache/commons/commons-httpclient-3.1.jar ln -sf %{_javadir}/commons-httpclient.jar tools/lib/apache/commons/commons-httpclient-3.1.jar # ./tools/lib/apache/commons/commons-collections-3.2.1.jar ln -sf %{_javadir}/jakarta-commons-collections.jar tools/lib/apache/commons/commons-collections-3.2.1.jar # ./tools/lib/apache/commons/commons-lang-2.4.jar ln -sf %{_javadir}/commons-lang.jar tools/lib/apache/commons/commons-lang-2.4.jar # ./tools/lib/apache/ant-1.6.5.jar ln -sf %{_javadir}/ant.jar tools/lib/apache/ant-1.6.5.jar # ./tools/lib/apache/ant-1.6.1.jar ln -sf %{_javadir}/ant.jar tools/lib/apache/ant-1.6.1.jar # ./tools/lib/apache/ant-1.7.1.jar ln -sf %{_javadir}/ant.jar tools/lib/apache/ant-1.7.1.jar # ./tools/lib/w3c/sac/sac-1.3.jar ln -sf %{_javadir}/sac.jar tools/lib/w3c/sac/sac-1.3.jar # ./tools/lib/w3c/sac/sac-1.3-src.jar rm -f tools/lib/w3c/sac/sac-1.3-src.jar # ./tools/lib/w3c/flute/flute-1.3.jar ln -sf %{_javadir}/flute.jar tools/lib/w3c/flute/flute-1.3.jar # ./tools/lib/w3c/flute/flute-1.3-gg1.jar rm -f ./tools/lib/w3c/flute/flute-1.3-gg1.jar # ./tools/lib/w3c/flute/flute-1.3-gg1-src.jar rm -f ./tools/lib/w3c/flute/flute-1.3-gg1-src.jar # ./tools/lib/w3c/flute/flute-1.3-src.jar rm -f ./tools/lib/w3c/flute/flute-1.3-src.jar # ./tools/lib/tonicsystems/jarjar-1.0rc8.jar ln -sf %{_javadir}/jarjar.jar tools/lib/tonicsystems/jarjar-1.0rc8.jar # ./tools/lib/objectweb/asm-util-3.1.jar ln -sf %{_javadir}/objectweb-asm/asm-util.jar tools/lib/objectweb/asm-util-3.1.jar # ./tools/lib/objectweb/asm-tree-3.1.jar ln -sf %{_javadir}/objectweb-asm/asm-tree.jar tools/lib/objectweb/asm-tree-3.1.jar # ./tools/lib/objectweb/asm-commons-3.1.jar ln -sf %{_javadir}/objectweb-asm/asm-commons.jar tools/lib/objectweb/asm-commons-3.1.jar # ./tools/lib/objectweb/asm-xml-3.1.jar ln -sf %{_javadir}/objectweb-asm/asm-xml.jar tools/lib/objectweb/asm-xml-3.1.jar # ./tools/lib/objectweb/asm-analysis-3.1.jar ln -sf %{_javadir}/objectweb-asm/asm-analysis.jar tools/lib/objectweb/asm-analysis-3.1.jar # ./tools/lib/objectweb/asm-3.1.jar ln -sf %{_javadir}/objectweb-asm/asm.jar tools/lib/objectweb/asm-3.1.jar # ./tools/lib/easymock/easymock.jar ln -sf %{_javadir}/easymock.jar tools/lib/easymock/easymock.jar # ./tools/lib/easymock/easymockclassextension.jar rm -f ./tools/lib/easymock/easymockclassextension.jar # ./dev/core/test/com/google/gwt/dev/resource/impl/testdata/cpe2.jar # NOTE - safe to include ... for testing only # ./dev/core/test/com/google/gwt/dev/resource/impl/testdata/cpe1.jar # NOTE - safe to include ... for testing only # ./eclipse/settings/code-style/gwt-customchecks.jar # NOTE - safe to include ... for testing only %endif # Ensure we aren't bundling JAR files %if %{without bundled_jars} JARS="" BROKEN_LINKS="" for j in $(find . -name '*.jar'); do case $(basename $j) in # Some JAR files are for testing only, and safe to ignore gwt*.jar|cpe[12].jar) continue ;; # FIXME - newer (incompatible) versions are available in Fedora jdt-*.jar|jetty-*.jar|protobuf-*.jar) continue ;; # Any remaining JAR files should all be symlinks to system versions *) # Report any JAR files with broken symlinks test -e "$j" || BROKEN_LINKS="$BROKEN_LINKS\n$j" # Report any JAR files that are not symlinked test -L "$j" || JARS="$JARS\n$j" ;; esac done if [ ! -z "$JARS" ] ; then echo "The following JAR files should be deleted and symlinked to system JAR files:" echo -e "$JARS" exit 1 fi if [ ! -z "$BROKEN_LINKS" ] ; then echo "The following JAR files are not properly linked to system copies:" echo -e "$BROKEN_LINKS" exit 1 fi %else echo "Skipping bundled JAR file test" %endif %build export CLASSPATH="" export OPT_JAR_LIST="antlr apache-commons-beanutils htmlunit htmlunit-core-js tomcat6-servlet-2.5-api": export GWT_TOOLS=`pwd`/tools export GWT_VERSION=%{version} export ANT_OPTS="-Xms512m -Xmx1024m" %{ant} -Dbuild.sysclasspath=first \ %if %without svn -Dgwt.svnrev=%{svnrev} -Dgwt.svnrev.filename=%{svnrev_filename} %endif %install %{__rm} -rf %{buildroot} %{__rm} -rf gwt-%{version} %{__unzip} -qq build/dist/gwt-%{version}.zip %if %without dev %{__rm} gwt-%{version}/gwt-dev.jar \ build/staging/gwt-%{version}/gwt-dev.jar \ build/lib/gwt-dev.jar %endif %if %with zips %{_bindir}/zip -q -9 -r %{name}-%{version}.zip gwt-%{version}/ %endif pushd gwt-%{version}/ %{__mkdir_p} %{buildroot}%{_datadir}/%{name}/ %{__cp} -pr * %{buildroot}%{_datadir}/%{name}/ %if %with native %{__rm} %{buildroot}%{_datadir}/%{name}/benchmarkViewer.cmd %{__rm} %{buildroot}%{_datadir}/%{name}/gwt-ll.dll %{__rm} %{buildroot}%{_datadir}/%{name}/i18nCreator.cmd %{__rm} %{buildroot}%{_datadir}/%{name}/webAppCreator.cmd %endif # jar %{__mkdir_p} %{buildroot}%{_javadir}/%{name}/ pushd %{buildroot}%{_datadir}/%{name}/ for jar in *.jar; do newjar=`echo $(basename ${jar} .jar) | sed 's/gwt-//'` %{__mv} ${jar} %{buildroot}%{_javadir}/%{name}/${newjar}-%{version}.jar %{__ln_s} %{_javadir}/%{name}/${newjar}-%{version}.jar ${jar} %{__ln_s} %{name}/${newjar}-%{version}.jar %{buildroot}%{_javadir}/%{name}-${newjar}-%{version}.jar done popd (cd %{buildroot}%{_javadir} && for jar in *-%{version}*; do %{__ln_s} ${jar} `echo $jar| sed "s|-%{version}||g"`; done) (cd %{buildroot}%{_javadir}/%{name} && for jar in *-%{version}*; do %{__ln_s} ${jar} `echo $jar| sed "s|-%{version}||g"`; done) # javadoc %{__mkdir_p} %{buildroot}%{_javadocdir}/%{name}-%{version} %{__cp} -pr doc/javadoc/* %{buildroot}%{_javadocdir}/%{name}-%{version} %{__ln_s} %{name}-%{version} %{buildroot}%{_javadocdir}/%{name} pushd %{buildroot}%{_datadir}/%{name}/ %{__rm} -r doc/javadoc %{__ln_s} %{_javadocdir}/%{name} doc/javadoc popd # documentation install -dm 755 %{buildroot}%{_docdir}/%{name}-%{version} %{__cp} -pr ../branch-info.txt %{buildroot}%{_docdir}/%{name}-%{version} %{__cp} -pr doc/helpInfo %{buildroot}%{_docdir}/%{name}-%{version} pushd %{buildroot}%{_datadir}/%{name} rm -Rf doc/helpInfo %{__ln_s} %{_docdir}/%{name}-%{version}/helpInfo doc/helpInfo popd ## %if %with native # scripts %{__mkdir_p} %{buildroot}%{_bindir}/ pushd %{buildroot}%{_datadir}/%{name}/ for script in benchmarkViewer i18nCreator webAppCreator; do %{__mv} ${script} %{buildroot}%{_bindir}/${script} %{__perl} -pi \ -e 's|^APPDIR=.*$|APPDIR=%{_datadir}/%{name}|;' \ -e 's|^HOMEDIR=.*$|HOMEDIR=%{_datadir}/%{name}|;' \ %{buildroot}%{_bindir}/${script} %{__ln_s} %{_bindir}/${script} ${script} done popd %endif popd # maven %{__mkdir_p} %{buildroot}%{_datadir}/maven2/poms %if %with dev %{__cp} -p %{SOURCE1} %{buildroot}%{_datadir}/maven2/poms/JPP.%{name}-dev.pom %add_to_maven_depmap com.google.gwt gwt-dev %{version} JPP/%{name} dev %endif %{__cp} -p %{SOURCE2} %{buildroot}%{_datadir}/maven2/poms/JPP.%{name}-servlet.pom %add_to_maven_depmap com.google.gwt gwt-servlet %{version} JPP/%{name} servlet %{__cp} -p %{SOURCE3} %{buildroot}%{_datadir}/maven2/poms/JPP.%{name}-user.pom %add_to_maven_depmap com.google.gwt gwt-user %{version} JPP/%{name} user %if %with zips %{__mkdir_p} %{buildroot}%{_javadir}/jbossas-fordev %{__install} -p -m 0644 %{name}-%{version}.zip %{buildroot}%{_javadir}/jbossas-fordev/%{name}-%{version}.zip %{__install} -p -m 0644 %{name}-%{version}-src.zip %{buildroot}%{_javadir}/jbossas-fordev/%{name}-%{version}-src.zip %endif %if %{gcj_support} %{_bindir}/aot-compile-rpm %endif %clean %{__rm} -rf %{buildroot} %post %update_maven_depmap %if %{gcj_support} if [ -x %{_bindir}/rebuild-gcj-db ] then %{_bindir}/rebuild-gcj-db fi %endif %postun %update_maven_depmap %if %{gcj_support} if [ -x %{_bindir}/rebuild-gcj-db ] then %{_bindir}/rebuild-gcj-db fi %endif %files %defattr(0644,root,root,0755) #%%doc branch-info.txt Already copied to docdir %dir %{_datadir}/%{name} %{_datadir}/%{name}/COPYING %{_datadir}/%{name}/COPYING.html %{_datadir}/%{name}/about.html %{_datadir}/%{name}/about.txt %doc %{_docdir}/%{name}-%{version} %{_datadir}/%{name}/doc/javadoc %{_datadir}/%{name}/doc/helpInfo %{_datadir}/%{name}/gwt-api-checker.jar %{_datadir}/%{name}/gwt-benchmark-viewer.war %{_datadir}/%{name}/gwt-module.dtd %{_datadir}/%{name}/gwt-servlet.jar %{_datadir}/%{name}/gwt-soyc-vis.jar %{_datadir}/%{name}/gwt-user.jar %{_datadir}/%{name}/release_notes.html %{_datadir}/maven2/poms/JPP.%{name}-servlet.pom %{_datadir}/maven2/poms/JPP.%{name}-user.pom %exclude %{_datadir}/%{name}/samples %dir %{_javadir}/%{name} %{_javadir}/%{name}/api-checker-%{version}.jar %{_javadir}/%{name}/api-checker.jar %{_javadir}/%{name}/servlet-%{version}.jar %{_javadir}/%{name}/servlet.jar %{_javadir}/%{name}/soyc-vis-%{version}.jar %{_javadir}/%{name}/soyc-vis.jar %{_javadir}/%{name}/user-%{version}.jar %{_javadir}/%{name}/user.jar %{_javadir}/gwt-api-checker-%{version}.jar %{_javadir}/gwt-api-checker.jar %{_javadir}/gwt-servlet-%{version}.jar %{_javadir}/gwt-servlet.jar %{_javadir}/gwt-soyc-vis-%{version}.jar %{_javadir}/gwt-soyc-vis.jar %{_javadir}/gwt-user-%{version}.jar %{_javadir}/gwt-user.jar %{_mavendepmapfragdir}/%{name} %if %{gcj_support} %dir %{_libdir}/gcj/%{name} %attr(-,root,root) %{_libdir}/gcj/%{name}/* %endif %files javadoc %defattr(0644,root,root,0755) %{_javadocdir}/%{name}-%{version} %{_javadocdir}/%{name} %files demo %defattr(0644,root,root,0755) %{_datadir}/%{name}/samples %if %with dev %files devel %defattr(0644,root,root,0755) %{_datadir}/%{name}/gwt-dev.jar %{_datadir}/maven2/poms/JPP.%{name}-dev.pom %{_javadir}/gwt-dev-%{version}.jar %{_javadir}/gwt-dev.jar %{_javadir}/%{name}/dev-%{version}.jar %{_javadir}/%{name}/dev.jar %if %with native %attr(0755,root,root) %{_bindir}/benchmarkViewer %attr(0755,root,root) %{_bindir}/i18nCreator %attr(0755,root,root) %{_bindir}/webAppCreator %{_datadir}/%{name}/benchmarkViewer %{_datadir}/%{name}/i18nCreator %{_datadir}/%{name}/webAppCreator %endif %endif %if %with zips %files zip %defattr(0644,jboss,jboss,0755) %dir %{_javadir}/jbossas-fordev %{_javadir}/jbossas-fordev/gwt-%{version}.zip %files src-zip %defattr(0644,jboss,jboss,0755) %dir %{_javadir}/jbossas-fordev %{_javadir}/jbossas-fordev/%{name}-%{version}-src.zip %endif %changelog * Tue Nov 16 2010 James Laska 0:2.0.3-3 - Conditionally use epoch * Wed Jul 21 2010 James Laska 0:2.0.3-2 - Remove all bundled JARs * Tue Mar 02 2010 David Walluck 0:2.0.3-0.1 - 2.0.3 (SVN r7591) * Fri Dec 11 2009 David Walluck 0:2.0.0-0.2 - GWT 2.0 (SVN r7261) * Wed Dec 09 2009 David Walluck 0:2.0.0-0.1 - 2.0.0 (SVN r7278) * Mon Dec 07 2009 David Walluck 0:1.7.1-0.1 - 1.7.1 * Wed Jun 03 2009 David Walluck 0:1.6.4-0.10 - make jars in %%{_datadir}/%%{name} symlinks * Tue May 05 2009 Martha Benitez 0:1.6.4-0.9 - Change location of manual files. * Mon May 04 2009 Martha Benitez 0:1.6.4-0.8 - Install manual files directly to docdir instead of temporary directory. * Mon May 04 2009 David Walluck 0:1.6.4-0.7 - add devel package * Mon May 04 2009 David Walluck 0:1.6.4-0.6 - use built tomcat6-servlet-2.5-api * Fri May 01 2009 Martha Benitez 0:1.6.4-0.5 - Move documentation to docdir - Add BR java-devel - Create symlink to documentation in datadir * Fri Apr 17 2009 David Walluck 0:1.6.4-0.4 - remove windows versions of scripts * Fri Apr 17 2009 David Walluck 0:1.6.4-0.3 - add options to remove gwt-dev and native bits * Tue Apr 14 2009 David Walluck 0:1.6.4-0.2 - 1.6.4 (1.6) SVN@5229M * Thu Apr 09 2009 David Walluck 0:1.6.4-0.1 - 1.6.4 (1.6) - use mozilla 1.7.13 for build instead of 1.7.12 * Tue Mar 31 2009 David Walluck 0:1.6.3-0.2 - include some documentation - fix copying of src zip - add zips for all platforms * Tue Mar 31 2009 David Walluck 0:1.6.3-0.1 - 1.6.3 (1.6 RC2) * Fri Mar 27 2009 David Walluck 0:1.6.0-0.RC.0.2 - add bin and src zips * Thu Mar 26 2009 David Walluck 0:1.6.0-0.RC.0.1 - a noarch package must not reference %%{_libdir} * Thu Mar 26 2009 David Walluck 0:1.6.0-0.RC.0.0.1 - 1.6 RC * Mon Mar 23 2009 David Walluck 0:1.6.0-0.M2.0.1 - release