building java rpm

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,
I am trying to build a java rpm based on the nosrc.rpm from jpackage.org and the source from http://java.sun.com/j2se/1.5.0/download.jsp (the .bin-file).
I have never built rpms before; however I did some homework by reading the tutorial from Guru Labs on this subject.


It seems like I have to make some adjustments in the specs-file. The first 2 errors after <rpmbuild -ba specfile> I could solve myself, but the next one is too complicated for me to understand.


$ rpmbuild -ba java-1.5.0-sun.spec
Executing(%prep): /bin/sh -e /home/peter/rpmbuild/tmp/rpm-tmp.27537
+ umask 022
+ cd /home/peter/rpmbuild/BUILD
+ rm -rf /home/peter/rpmbuild/BUILD/jre1.5.0_03
+ export MORE=10000
+ MORE=10000
+ sh /home/peter/rpmbuild/SOURCES/jre-1_5_0_03-linux-i586.bin
+ cd /home/peter/rpmbuild/BUILD
+ cd jre1.5.0_03
++ /usr/bin/id -u
+ '[' 500 = 0 ']'
++ /usr/bin/id -u
+ '[' 500 = 0 ']'
+ /bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ chmod -R go=u-w bin CHANGES COPYRIGHT javaws lib LICENSE man plugin README THIRDPARTYLICENSEREADME.txt Welcome.html
+ chmod -R u+w bin CHANGES COPYRIGHT javaws lib LICENSE man plugin README THIRDPARTYLICENSEREADME.txt Welcome.html
++ echo /usr/lib/jvm/java-1.5.0-sun-1.5.0.03/jre/plugin/i386/ns7/libjavaplugin_oji.so
++ sed 's|/usr/lib/jvm/java-1.5.0-sun-1.5.0.03/jre|jre|'
+ _OJI_PLUGIN=jre/plugin/i386/ns7/libjavaplugin_oji.so
+ '[' '!' -f jre/plugin/i386/ns7/libjavaplugin_oji.so ']'
+ exit 1
error: Bad exit status from /home/peter/rpmbuild/tmp/rpm-tmp.27537 (%prep)



RPM build errors: Bad exit status from /home/peter/rpmbuild/tmp/rpm-tmp.27537 (%prep)


The /home/peter/rpmbuild/tmp/rpm-tmp.27537 is a part %prep section of the specs-file. The (first part of the) spec-file looks like this:


%define section         non-free

%define origin          sun
%define priority        1503
%define javaver         1.5.0
%define cvsver          1_5_0
%define buildver        03

%define name            java-%{javaver}-%{origin}
%define release         1jpp

# TODO: Think about using conditionals for version variants.

%define version         %{javaver}.%{buildver}
#define version         %{javaver}

%define cvsversion      %{cvsver}_%{buildver}
#define cvsversion      %{cvsver}

%define javaws_ver      %{javaver}
%define javaws_version  %{cvsversion}

%define toplevel_dir    jre%{javaver}_%{buildver}
#define toplevel_dir    jdk%{javaver}

%define sdklnk          java-%{javaver}-%{origin}
%define jrelnk          jre-%{javaver}-%{origin}
%define sdkdir          %{name}-%{version}
%define jredir          %{sdkdir}/jre
%define sdkbindir       %{_jvmdir}/%{sdklnk}/bin
%define sdklibdir       %{_jvmdir}/%{sdklnk}/lib
%define jrebindir       %{_jvmdir}/%{jrelnk}/bin
%define jvmjardir       %{_jvmjardir}/%{name}-%{version}

%define x11bindir       %{_prefix}/X11R6/bin
%define x11encdir       %{_prefix}/X11R6/lib/X11/fonts/encodings
%define fontconfigdir   %{_sysconfdir}/fonts
%define fontdir         %{_datadir}/fonts/java
%define xsldir          %{_datadir}/xml/%{name}-%{version}

%ifarch %ix86
%define target_cpu i586
%define pluginname %{_jvmdir}/%{jredir}/plugin/i386/ns7/libjavaplugin_oji.so
%endif
%ifarch x86_64%define target_cpu amd64
%endif


%define cgibindir       %{_var}/www/cgi-bin

# Avoid RPM 4.2+'s internal dep generator, it may produce bogus
# Provides/Requires here.
%define _use_internal_dependency_generator 0

# This prevents aggressive stripping.
%define debug_package %{nil}

Name: %{name}
Version: %{version}
Release: %{release}
Epoch: 0
Summary: Java Runtime Environment for %{name}
License: Sun Binary Code License
Group: Development/Interpreters
Vendor: JPackage Project
Distribution: JPackage
URL: http://java.sun.com/j2se/%{javaver}/Source1: %{name}-register-java-fonts.xsl
Source2: %{name}-unregister-java-fonts.xsl
NoSource: 0
Provides: jre-%{javaver}-%{origin} = %{epoch}:%{version}-%{release}
Provides: jre-%{origin} = %{epoch}:%{version}-%{release}
Provides: jre-%{javaver}, java-%{javaver}, jre = %{epoch}:%{javaver}
Provides: java-%{origin} = %{epoch}:%{version}-%{release}
Provides: java = %{epoch}:%{javaver}
Requires: /usr/sbin/update-alternatives
Requires: jpackage-utils >= 0:1.5.38
Conflicts: kaffe
BuildArch: i586 x86_64
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
BuildRequires: jpackage-utils >= 0:1.5.38, sed, %{_bindir}/perl
%ifnarch x86_64
Provides: javaws = %{epoch}:%{javaws_ver}
%endifProvides: jdbc-stdext = %{epoch}:3.0, jdbc-stdext = %{epoch}:%{version}
Provides: java-sasl = %{epoch}:%{version}
%ifnarch x86_64
Obsoletes: javaws-menu
%endif


%description
This package contains the Java Runtime Environment for %{name}

%package devel
Summary: Java Development Kit for %{name}
Group: Development/Compilers
Requires: /usr/sbin/update-alternatives
Provides: java-sdk-%{javaver}-%{origin} = %{epoch}:%{version}-%{release}
Provides: java-sdk-%{origin} = %{epoch}:%{version}-%{release}
Provides: java-sdk-%{javaver}, java-sdk = %{epoch}:%{javaver}
Provides: java-devel-%{origin} = %{epoch}:%{version}-%{release}
Provides: java-%{javaver}-devel, java-devel = %{epoch}:%{javaver}
Requires: %{name} = %{epoch}:%{version}-%{release}


%description    develwritten using the Java programming language.

%package        src
Summary:        Source files for %{name}
Group:          Development/Interpreters
Requires:       %{name} = %{epoch}:%{version}-%{release}

%description    src
This package contains source files for %{name}.

%package demo
Summary: Demonstration files for %{name}
Group: Development/Interpreters
Requires: %{name} = %{epoch}:%{version}-%{release}
# Without this a requirement on libjava_crw_demo_g.so is added which
# is not in the main java package. libjava_crw_demo.so is but not "_g".
AutoReq: 0
Summary: Browser plugin files for %{name}
Group: Internet/WWW/Browsers
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: %{_bindir}/find, sed
Provides: java-plugin = %{epoch}:%{javaver}, java-%{javaver}-plugin = %{epoch}:%{version}
Conflicts: java-%{javaver}-ibm-plugin, java-%{javaver}-blackdown-plugin
Conflicts: java-%{javaver}-bea-plugin
Obsoletes: java-1.3.1-plugin, java-1.4.0-plugin, java-1.4.1-plugin, java-1.4.2-plugin


%description    plugin
This package contains browser plugin files for %{name}.
Note!  This package supports browsers built with GCC 3.2 and later.
%endif

%package fonts
Summary: TrueType fonts for %{origin} JVMs
Group: Text Processing/Fonts
Requires: %{name} = %{epoch}:%{version}-%{release}, %{_bindir}/ttmkfdir
Requires: %{_sbindir}/chkfontpath, %{x11bindir}/mkfontdir, mktemp
Requires: %{_bindir}/xsltproc, %{_bindir}/perl
Provides: java-fonts = %{epoch}:%{javaver}, java-%{javaver}-fonts
Conflicts: java-%{javaver}-ibm-fonts, java-%{javaver}-blackdown-fonts
Conflicts: java-%{javaver}-bea-fonts
Obsoletes: java-1.3.1-fonts, java-1.4.0-fonts, java-1.4.1-fonts, java-1.4.2-fonts


%description    fonts
This package contains the TrueType fonts for %{origin} JVMs.

%package        alsa
Summary:        ALSA support for %{name}
Group:          Development/Libraries/Java
Requires:       %{name} = %{epoch}:%{version}-%{release}

%description    alsa
This package contains Advanced Linux Sound Architecture (ALSA) support
libraries for %{name}.

%package        jdbc
Summary:        JDBC/ODBC bridge driver for %{name}
Group:          Development/Libraries/Java
AutoReq:        0
Requires:       %{name} = %{epoch}:%{version}-%{release}%description    jdbc
This package contains the JDBC/ODBC bridge driver for %{name}.


%prep rm -rf $RPM_BUILD_DIR/%{toplevel_dir} export MORE=10000 sh %{SOURCE0} <<EOF >/dev/null yes EOF %setup -T -D -n %{toplevel_dir} chmod -R go=u-w * chmod -R u+w *

%ifnarch x86_64
# make sure the plugin exists
_OJI_PLUGIN=$(echo %pluginname | sed 's|%{_jvmdir}/%{jredir}|jre|')
if [ ! -f $_OJI_PLUGIN ]; then
 exit 1
fi
%endif


What does the error mean? Any help would be appreciated. Peter.




[Index of Archives]     [Current Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]     [Fedora Docs]

  Powered by Linux