Sisyphus repositório
Última atualização: 1 outubro 2023 | SRPMs: 18631 | Visitas: 37599338
en ru br
ALT Linux repositórios
S:2.3.2-alt8_9jpp8

Group :: Desenvolvimento/Outros
RPM: jogl2

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs e FR  Repocop 

%add_findreq_skiplist %_libdir/jogl2/libnativewindow_awt.so
Group: Development/Other
# BEGIN SourceDeps(oneline):
BuildRequires(pre): rpm-macros-java
BuildRequires: gcc-c++ rpm-build-java
# END SourceDeps(oneline)
BuildRequires: /proc
BuildRequires: jpackage-default
BuildRequires: java-1.8.0-openjdk-devel
# see https://bugzilla.altlinux.org/show_bug.cgi?id=10382
%define _localstatedir %{_var}
Name:    jogl2
Version: 2.3.2
Release: alt8_9jpp8
%global src_name jogl-v%{version}
Summary: Java bindings for the OpenGL API

# For a breakdown of the licensing, see LICENSE.txt

License: BSD and MIT and Apache-2.0 and Apache-1.1
URL: http://jogamp.org/
Source0: http://jogamp.org/deployment/v%{version}/archive/Sources/%{src_name}.tar.xz
Source1: %{name}-pom.xml

Patch2: %{name}-0002-deactivate-debug-printf.patch
Patch3: %{name}-0003-delete-not-supported-API.patch
Patch4: %{name}-0004-disable-some-tests.patch
Patch5: %{name}-add-secarchs.patch
Patch6: %{name}-mesa-profile-detection.patch
Patch7: jogl2-disable-build-native-broadcom.patch

BuildRequires: gcc
BuildRequires: jpackage-utils
BuildRequires: gluegen2-devel = %{version}
BuildRequires: eclipse-swt
BuildRequires: libXt-devel
BuildRequires: libXrender-devel
BuildRequires: libXxf86vm-devel
BuildRequires: libXrandr-devel
BuildRequires: libXcursor-devel
BuildRequires: maven-local

Requires: jpackage-utils
Requires: gluegen2 = %{version}
Source44: import.info

%description
The JOGL project hosts the development version of the Java Binding for
the OpenGL API (JSR-231), and is designed to provide hardware-supported 3D
graphics to applications written in Java. JOGL provides full access to the
APIs in the OpenGL 2.0 specification as well as nearly all vendor extensions,
and integrates with the AWT and Swing widget sets. It is part of a suite of
open-source technologies initiated by the Game Technology Group at
Sun Microsystems.

%package doc
Group: Development/Java
Summary:        User manual for jogl2
BuildArch:      noarch

%description doc
User manual for jogl2.

%prep
%setup -n %{src_name}

%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p2

# Remove bundled dependencies

find -name "*.jar" -type f -exec rm {} \;
find -name "*.apk" -type f -exec rm {} \;
rm -fr make/lib

# Restore the gluegen2 source code from gluegen2-devel

rm -fr ../gluegen
cp -rdf %{_datadir}/gluegen2 ../gluegen

# Fix file-not-utf8

for file in README.txt; do
   iconv -f ISO-8859-1 -t UTF-8 -o $file.new $file && \
   touch -r $file $file.new && \
   mv $file.new $file
done

# git executable should not be used, use true (to avoid checkout) instead

sed -i 's/executable="git"/executable="true"/' make/build-common.xml

# install in _javadir

%mvn_file org.jogamp.jogl:jogl %{name}
%mvn_alias org.jogamp.jogl:jogl "org.jogamp.jogl:jogl-all"

%build
# zerg's girar armh hack:
(while true; do date; sleep 7m; done) &
# end armh hack, kill it when girar will be fixed
cd make

# As we never cross-compile this package, the SDK root is always /

export TARGET_PLATFORM_ROOT=/

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
xargs -t ant <<EOF
-verbose
-Dc.compiler.debug=true
-Djavacdebug=true
-Djavac.memorymax=512m
-Dcommon.gluegen.build.done=true

-Dantlr.jar=%{_javadir}/antlr.jar
-Djunit.jar=%{_javadir}/junit.jar
-Dant.jar=%{_javadir}/ant.jar
-Dant-junit.jar=%{_javadir}/ant/ant-junit.jar
-Dgluegen.jar=%{_javadir}/gluegen2.jar
-Dgluegen-rt.jar=%{_jnidir}/gluegen2-rt.jar
-Dswt.jar=%{_jnidir}/swt.jar

-Djava.excludes.all='com/jogamp/newt/util/applet*/**/*.java com/jogamp/audio/**/*.java jogamp/opengl/gl2/fixme/**/*.java com/jogamp/opengl/test/**/*.java'

-Djavadoc.link=%{_javadocdir}/java
-Dgluegen.link=%{_javadocdir}/gluegen2

build.nativewindow build.jogl build.newt one.dir javadoc.public
EOF

cd ..
export JAVA_HOME=/usr/lib/jvm/java
%mvn_artifact %{SOURCE1} build/jar/jogl-all.jar

%install
%mvn_install
mkdir -p %{buildroot}%{_javadir}/%{name} \
   %{buildroot}%{_libdir}/%{name} \
   %{buildroot}%{_javadir}

ln -s ../../..%{_jnidir}/%{name}.jar %{buildroot}%{_libdir}/%{name}/
install -t %{buildroot}%{_libdir}/%{name}/ build/lib/*.so


# Make the doc package

mkdir -p %{buildroot}%{_docdir}/%{name}
cp -rdf doc/* %{buildroot}%{_docdir}/%{name}
cp -t %{buildroot}%{_docdir}/%{name}/ README.txt LICENSE.txt CHANGELOG.txt

%files -f .mfiles
%doc README.txt LICENSE.txt CHANGELOG.txt
%{_libdir}/%{name}

%files doc
%{_docdir}/%{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