Sisyphus repositório
Última atualização: 1 outubro 2023 | SRPMs: 18631 | Visitas: 37848923
en ru br
ALT Linux repositórios
5.0: 1.7.3.3-alt1_1jpp5

Group :: Desenvolvimento/Java
RPM: grizzly

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs e FR  Repocop 

Packager: Igor Vlasenko <viy at altlinux.ru>
BuildRequires: /proc
BuildRequires: jpackage-compat
# Copyright (c) 2000-2008, 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.
#

%define gcj_support 0

%define grizzly_jruby_version 0.1.2

Name:           grizzly
Summary:        Grizzly - Java NIO Server Framework
Url:            https://grizzly.dev.java.net/
Version:        1.7.3.3
Release:        alt1_1jpp5
Epoch:          0
License:        CDDL
Group:          Development/Java
Source0:        grizzly-1.7.3.3.tar.gz
# Steps to reproduce
# svn export https://www.dev.java.net/svn/grizzly/tags/1_7_3_3/ grizzly-1.7.3.3
# user "guest", password ""

Source1:        %{name}-settings.xml
Source2:        %{name}-jpp-depmap.xml
Patch0:         %{name}-pom.patch
Patch1:         %{name}-contribs-jruby-pom.patch
Patch2:         %{name}-http-pom.patch
Patch3:         %{name}-http-servlet-pom.patch
Patch4:         %{name}-comet-pom.patch
Patch5:         %{name}-continuation-pom.patch
Patch6:         %{name}-cometd-pom.patch
Patch7:         %{name}-grizzlet-pom.patch
Patch8:         %{name}-messages-bus-pom.patch
Patch9:         %{name}-contribs-pom.patch
Patch10:        %{name}-continuation-Continuation.patch


BuildRequires: jpackage-utils >= 0:1.7.4
BuildRequires: junit
BuildRequires: maven2
BuildRequires: maven2-plugin-antrun
BuildRequires: maven2-plugin-assembly
BuildRequires: maven2-plugin-compiler
BuildRequires: maven2-plugin-dependency
BuildRequires: maven2-plugin-install
BuildRequires: maven2-plugin-jar
BuildRequires: maven2-plugin-javadoc
BuildRequires: maven2-plugin-plugin
BuildRequires: maven2-plugin-project-info-reports
BuildRequires: maven2-plugin-release
BuildRequires: maven2-plugin-resources
BuildRequires: maven2-plugin-site
BuildRequires: maven-surefire-plugin
BuildRequires: maven2-plugin-war

BuildRequires: felix-maven2
BuildRequires: jakarta-slide-webdavclient

BuildRequires: jruby >= 0:1.1.1
BuildRequires: servlet_2_5_api


Requires(post): jpackage-utils >= 0:1.7.4
Requires(postun): jpackage-utils >= 0:1.7.4

%if %{gcj_support}
BuildRequires: gnu-crypto
BuildRequires: java-gcj-compat-devel
Requires(post): java-gcj-compat
Requires(postun): java-gcj-compat
%endif
%if ! %{gcj_support}
BuildArch:      noarch
%endif

%description
Writing scalable server applications in the Java programming
language has always been difficult. Before the advent of the
Java New I/O API (NIO), thread management issues made it
impossible for a server to scale to thousands of users. The
Grizzly framework has been designed to help developers to take
advantage of the Java NIO API. Originally developed under the
GlassFish umbrella, the framework is now available as a
standalone project. Grizzly goals is to help developers to
build scalable and robust servers using NIO.


%package javadoc
Summary:        Javadoc for %{name}
Group:          Development/Documentation

%description javadoc
%{summary}.

%prep
%setup -q -n %{name}-%{version}
chmod -R go=u-w *
for f in $(find . -name "*.jar"); do
 mv $f $f.no
done
cp %{SOURCE1} settings.xml

%patch0 -b .sav0
%patch1 -b .sav1
%patch2 -b .sav2
%patch3 -b .sav3
%patch4 -b .sav4
%patch5 -b .sav5
%patch6 -b .sav6
%patch7 -b .sav7
%patch8 -b .sav8
%patch9 -b .sav9
%patch10 -b .sav10
rm modules/continuation/src/main/java/com/sun/grizzly/GrizzlyContinuation10.java

%build
export JAVA_HOME=%{_jvmdir}/java-1.5.0

sed -i -e "s|<url>__JPP_URL_PLACEHOLDER__</url>|<url>file://`pwd`/.m2/repository</url>|g" settings.xml
sed -i -e "s|<url>__JAVADIR_PLACEHOLDER__</url>|<url>file://`pwd`/external_repo</url>|g" settings.xml
sed -i -e "s|<url>__MAVENREPO_DIR_PLACEHOLDER__</url>|<url>file://`pwd`/.m2/repository</url>|g" settings.xml
sed -i -e "s|<url>__MAVENDIR_PLUGIN_PLACEHOLDER__</url>|<url>file:///usr/share/maven2/plugins</url>|g" settings.xml

export MAVEN_REPO_LOCAL=$(pwd)/.m2/repository
mkdir -p $MAVEN_REPO_LOCAL

mkdir external_repo
ln -s %{_javadir} external_repo/JPP

export SETTINGS=$(pwd)/settings.xml
#        -Dmaven.test.failure.ignore=true \
pushd modules/grizzly
mvn-jpp -Dmaven.test.skip=true \
       -e \
       -s $SETTINGS \
       -Dmaven2.jpp.depmap.file=%{SOURCE2} \
       -Dmaven.repo.local=$MAVEN_REPO_LOCAL \
       install javadoc:javadoc
popd
pushd modules/http-utils
mvn-jpp -Dmaven.test.skip=true \
       -e \
       -s $SETTINGS \
       -Dmaven2.jpp.depmap.file=%{SOURCE2} \
       -Dmaven.repo.local=$MAVEN_REPO_LOCAL \
       install javadoc:javadoc
popd
pushd modules/rcm
mvn-jpp -Dmaven.test.skip=true \
       -e \
       -s $SETTINGS \
       -Dmaven2.jpp.depmap.file=%{SOURCE2} \
       -Dmaven.repo.local=$MAVEN_REPO_LOCAL \
       install javadoc:javadoc
popd
pushd modules/portunif
mvn-jpp -Dmaven.test.skip=true \
       -e \
       -s $SETTINGS \
       -Dmaven2.jpp.depmap.file=%{SOURCE2} \
       -Dmaven.repo.local=$MAVEN_REPO_LOCAL \
       install javadoc:javadoc
popd
pushd modules/http
mvn-jpp -Dmaven.test.skip=true \
       -e \
       -s $SETTINGS \
       -Dmaven2.jpp.depmap.file=%{SOURCE2} \
       -Dmaven.repo.local=$MAVEN_REPO_LOCAL \
       install javadoc:javadoc
popd
pushd modules/http-servlet
mvn-jpp -Dmaven.test.skip=true \
       -e \
       -s $SETTINGS \
       -Dmaven2.jpp.depmap.file=%{SOURCE2} \
       -Dmaven.repo.local=$MAVEN_REPO_LOCAL \
       install javadoc:javadoc
popd
pushd modules/comet
mvn-jpp -Dmaven.test.skip=true \
       -e \
       -s $SETTINGS \
       -Dmaven2.jpp.depmap.file=%{SOURCE2} \
       -Dmaven.repo.local=$MAVEN_REPO_LOCAL \
       install javadoc:javadoc
popd
pushd modules/compat
mvn-jpp -Dmaven.test.skip=true \
       -e \
       -s $SETTINGS \
       -Dmaven2.jpp.depmap.file=%{SOURCE2} \
       -Dmaven.repo.local=$MAVEN_REPO_LOCAL \
       install javadoc:javadoc
popd
pushd modules/cometd
mvn-jpp -Dmaven.test.skip=true \
       -e \
       -s $SETTINGS \
       -Dmaven2.jpp.depmap.file=%{SOURCE2} \
       -Dmaven.repo.local=$MAVEN_REPO_LOCAL \
       install javadoc:javadoc
popd
pushd modules/grizzlet
mvn-jpp -Dmaven.test.skip=true \
       -e \
       -s $SETTINGS \
       -Dmaven2.jpp.depmap.file=%{SOURCE2} \
       -Dmaven.repo.local=$MAVEN_REPO_LOCAL \
       install javadoc:javadoc
popd
pushd modules/messages-bus
mvn-jpp -Dmaven.test.skip=true \
       -e \
       -s $SETTINGS \
       -Dmaven2.jpp.depmap.file=%{SOURCE2} \
       -Dmaven.repo.local=$MAVEN_REPO_LOCAL \
       install javadoc:javadoc
popd
pushd contribs/jruby
mvn-jpp -Dmaven.test.skip=true \
       -e \
       -s $SETTINGS \
       -Dmaven2.jpp.depmap.file=%{SOURCE2} \
       -Dmaven.repo.local=$MAVEN_REPO_LOCAL \
       install javadoc:javadoc
popd

export MAVEN_OPTS="-Xmx512m"
mvn-jpp -Dmaven.test.skip=true \
       -e \
       -s $SETTINGS \
       -Dmaven2.jpp.depmap.file=%{SOURCE2} \
       -Dmaven.repo.local=$MAVEN_REPO_LOCAL \
       install javadoc:javadoc

%install

# jars

install -d -m 755 $RPM_BUILD_ROOT%{_javadir}/%{name}
install -d -m 755 $RPM_BUILD_ROOT%{_javadir}/%{name}/bundles
install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/maven2/poms


%add_to_maven_depmap com.sun.grizzly grizzly-project %{version} JPP/%{name} project
install -m 644 pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}-project.pom

%add_to_maven_depmap com.sun.grizzly grizzly-bundles %{version} JPP/%{name} bundles
install -m 644 modules/bundles/pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}-bundles.pom

%add_to_maven_depmap com.sun.grizzly grizzly-cometd-webserver %{version} JPP/%{name}/bundles cometd-webserver
install -m 644 modules/bundles/cometd/pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}.bundles-cometd-webserver.pom
install -m 644 modules/bundles/cometd/target/grizzly-cometd-webserver-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}/bundles/cometd-webserver-%{version}.jar

%add_to_maven_depmap com.sun.grizzly grizzly-comet-webserver %{version} JPP/%{name}/bundles comet-webserver
install -m 644 modules/bundles/comet/pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}.bundles-comet-webserver.pom
install -m 644 modules/bundles/comet/target/grizzly-comet-webserver-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}/bundles/comet-webserver-%{version}.jar

%add_to_maven_depmap com.sun.grizzly grizzly-grizzlet-webserver %{version} JPP/%{name}/bundles grizzlet-webserver
install -m 644 modules/bundles/grizzlet/pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}.bundles-grizzlet-webserver.pom
install -m 644 modules/bundles/grizzlet/target/grizzly-grizzlet-webserver-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}/bundles/grizzlet-webserver-%{version}.jar

%add_to_maven_depmap com.sun.grizzly grizzly-servlet-webserver %{version} JPP/%{name}/bundles servlet-webserver
install -m 644 modules/bundles/http-servlet/pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}.bundles-servlet-webserver.pom
install -m 644 modules/bundles/http-servlet/target/grizzly-servlet-webserver-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}/bundles/servlet-webserver-%{version}.jar

%add_to_maven_depmap com.sun.grizzly grizzly-http-webserver %{version} JPP/%{name}/bundles http-webserver
install -m 644 modules/bundles/http/pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}.bundles-http-webserver.pom
install -m 644 modules/bundles/http/target/grizzly-http-webserver-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}/bundles/http-webserver-%{version}.jar

%add_to_maven_depmap com.sun.grizzly grizzly-messagesbus-webserver %{version} JPP/%{name}/bundles messagesbus-webserver
install -m 644 modules/bundles/messagesbus/pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}.bundles-messagesbus-webserver.pom
install -m 644 modules/bundles/messagesbus/target/grizzly-messagesbus-webserver-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}/bundles/messagesbus-webserver-%{version}.jar

%add_to_maven_depmap com.sun.grizzly grizzly-cometd %{version} JPP/%{name} cometd
install -m 644 modules/cometd/pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}-cometd.pom
install -m 644 modules/cometd/target/grizzly-cometd-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}/cometd-%{version}.jar

%add_to_maven_depmap com.sun.grizzly grizzly-comet %{version} JPP/%{name} comet
install -m 644 modules/comet/pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}-comet.pom
install -m 644 modules/comet/target/grizzly-comet-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}/comet-%{version}.jar

%add_to_maven_depmap com.sun.grizzly grizzly-compat %{version} JPP/%{name} compat
install -m 644 modules/compat/pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}-compat.pom
install -m 644 modules/compat/target/grizzly-compat-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}/compat-%{version}.jar

%add_to_maven_depmap com.sun.grizzly grizzly-continuation %{version} JPP/%{name} continuation
install -m 644 modules/continuation/pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}-continuation.pom
install -m 644 modules/continuation/target/grizzly-continuation-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}/continuation-%{version}.jar

%add_to_maven_depmap com.sun.grizzly grizzly-grizzlet %{version} JPP/%{name} grizzlet
install -m 644 modules/grizzlet/pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}-grizzlet.pom
install -m 644 modules/grizzlet/target/grizzly-grizzlet-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}/grizzlet-%{version}.jar

%add_to_maven_depmap com.sun.grizzly grizzly-framework %{version} JPP/%{name} framework
install -m 644 modules/grizzly/pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}-framework.pom
install -m 644 modules/grizzly/target/grizzly-framework-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}/framework-%{version}.jar
install -m 644 modules/grizzly/target/grizzly-framework-%{version}-tests.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}/framework-tests-%{version}.jar

%add_to_maven_depmap com.sun.grizzly grizzly-http-servlet %{version} JPP/%{name} http-servlet
install -m 644 modules/http-servlet/pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}-http-servlet.pom
install -m 644 modules/http-servlet/target/grizzly-http-servlet-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}/http-servlet-%{version}.jar

%add_to_maven_depmap com.sun.grizzly grizzly-http %{version} JPP/%{name} http
install -m 644 modules/http/pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}-http.pom
install -m 644 modules/http/target/grizzly-http-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}/http-%{version}.jar

%add_to_maven_depmap com.sun.grizzly grizzly-http-utils %{version} JPP/%{name} http-utils
install -m 644 modules/http-utils/pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}-http-utils.pom
install -m 644 modules/http-utils/target/grizzly-http-utils-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}/http-utils-%{version}.jar

%add_to_maven_depmap com.sun.grizzly grizzly-messagesbus %{version} JPP/%{name} messagesbus
install -m 644 modules/messages-bus/pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}-messagesbus.pom
install -m 644 modules/messages-bus/target/grizzly-messagesbus-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}/messagesbus-%{version}.jar

%add_to_maven_depmap com.sun.grizzly grizzly-portunif %{version} JPP/%{name} portunif
install -m 644 modules/portunif/pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}-portunif.pom
install -m 644 modules/portunif/target/grizzly-portunif-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}/portunif-%{version}.jar

%add_to_maven_depmap com.sun.grizzly grizzly-rcm %{version} JPP/%{name} rcm
install -m 644 modules/rcm/pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}-rcm.pom
install -m 644 modules/rcm/target/grizzly-rcm-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}/rcm-%{version}.jar

%add_to_maven_depmap com.sun.grizzly grizzly-jruby-webserver %{version} JPP/%{name}/bundles jruby-webserver
install -m 644 contribs/bundles/jruby/pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}.bundles-jruby-webserver.pom
install -m 644 contribs/bundles/jruby/target/grizzly-jruby-webserver-%{version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}/bundles/jruby-webserver-%{version}.jar

%add_to_maven_depmap com.sun.grizzly grizzly-jruby %{grizzly_jruby_version} JPP/%{name} jruby
install -m 644 contribs/jruby/pom.xml \
  $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{name}-jruby.pom
install -m 644 contribs/jruby/target/grizzly-jruby-%{grizzly_jruby_version}.jar \
  $RPM_BUILD_ROOT%{_javadir}/%{name}/jruby-%{grizzly_jruby_version}.jar

(cd $RPM_BUILD_ROOT%{_javadir}/%{name} && for jar in *-%{version}.jar; do ln -sf ${jar} `echo $jar| sed  "s|-%{version}||g"`; done)
(cd $RPM_BUILD_ROOT%{_javadir}/%{name}/bundles && for jar in *-%{version}.jar; do ln -sf ${jar} `echo $jar| sed  "s|-%{version}||g"`; done)
(cd $RPM_BUILD_ROOT%{_javadir}/%{name} && for jar in *-%{grizzly_jruby_version}.jar; do ln -sf ${jar} `echo $jar| sed  "s|-%{grizzly_jruby_version}||g"`; done)

# javadoc

install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
cp -pr target/site/apidocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}/
ln -s %{name}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name} # ghost symlink

%if %{gcj_support}
export CLASSPATH=$(build-classpath gnu-crypto)
%{_bindir}/aot-compile-rpm
%endif

%post javadoc
rm -f %{_javadocdir}/%{name}
ln -s %{name}-%{version} %{_javadocdir}/%{name}

%postun javadoc
if [ "$1" = "0" ]; then
 rm -f %{_javadocdir}/%{name}
fi

%files
%{_javadir}/%{name}
%{_datadir}/maven2/poms
%{_mavendepmapfragdir}
%if %{gcj_support}
%dir %{_libdir}/gcj/%{name}
%{_libdir}/gcj/%{name}/*-%{version}.jar.*
%endif

%files javadoc
%doc %{_javadocdir}/%{name}-%{version}
%ghost %doc %{_javadocdir}/%{name}

%changelog

Todas as alterações você pod ver aqui

 
projeto & código: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
mantenedor atual: Michael Shigorin
mantenedor da tradução: Fernando Martini aka fmartini © 2009