Fridrich Strba 2020-03-26 10:08:44 +00:00 committed by Git OBS Bridge
parent d36345772c
commit 5aecca4a0f
2 changed files with 24 additions and 50 deletions

View File

@ -1,3 +1,15 @@
-------------------------------------------------------------------
Thu Mar 26 10:02:18 UTC 2020 - Fridrich Strba <fstrba@suse.com>
- Do not distribute the sources.
- Do not distribute the headers since the shared libraries are not
meant to be linked with, but they are dlopened from the Java
code
- Do not distribute javadoc as a zip file but as directory in order
to be usable directly
- Install the java jars into a platform dependent location, since
they are having JNI calls
-------------------------------------------------------------------
Tue Mar 24 07:29:04 UTC 2020 - Fridrich Strba <fstrba@suse.com>

View File

@ -44,6 +44,7 @@ BuildRequires: unzip
BuildRequires: zip
BuildRequires: pkgconfig(lockdev)
Requires: librxtx%{libversion}
Obsoletes: %{name}-src
%if 0%{?sle_version} > 150100 || 0%{?suse_version} >= 1550 || %{force_aqute_bnd}
BuildRequires: aqute-bnd
BuildRequires: javapackages-local
@ -63,40 +64,23 @@ the specification for Sun's Java Communications API.
%package javadoc
Summary: Javadocs for rxtx-java
Group: Documentation/HTML
Requires(pre): coreutils
BuildArch: noarch
%description javadoc
RxTx is a Java library, using a native implementation (via JNI), providing serial
and parallel communication for the Java Development Toolkit (JDK). It is based on
the specification for Sun's Java Communications API.
%package src
Summary: Java Sources for rxtx-java
Group: Development/Sources
%description src
RxTx is a Java library, using a native implementation (via JNI), providing serial
and parallel communication for the Java Development Toolkit (JDK). It is based on
the specification for Sun's Java Communications API.
%package -n librxtx%{libversion}
Summary: Full Java CommAPI implementation native library
Group: Development/Libraries/C and C++
Obsoletes: librxtx%{libversion}-devel
%description -n librxtx%{libversion}
RxTx is a Java library, using a native implementation (via JNI), providing serial
and parallel communication for the Java Development Toolkit (JDK). It is based on
the specification for Sun's Java Communications API.
%package -n librxtx%{libversion}-devel
Summary: Full Java CommAPI implementation native library include
Group: Development/Sources
%description -n librxtx%{libversion}-devel
RxTx is a Java library, using a native implementation (via JNI), providing serial
and parallel communication for the Java Development Toolkit (JDK). It is based on
the specification for Sun's Java Communications API.
%prep
%setup -q -n %{src_name}-%{upver}%{prever}
%patch0 -p1
@ -133,13 +117,11 @@ mv RXTXcomm-bnd.jar RXTXcomm.jar
# build javadoc
mkdir -p javadoc
javadoc -d javadoc src/gnu/io/*.java
cd javadoc
zip -r ../%{name}-%{version}-javadoc.zip .
cd ..
%install
mkdir -p %{buildroot}%{_javadir} %{buildroot}%{_libdir}
make RXTX_PATH=%{buildroot}%{_libdir} JHOME=%{buildroot}%{_javadir} install
install -dm 0755 %{buildroot}%{_jnidir} %{buildroot}%{_libdir}
make RXTX_PATH=%{buildroot}%{_libdir} JHOME=%{buildroot}%{_jnidir} install
find %{buildroot} -name '*.la' -print -delete
find %{buildroot}%{_prefix} -xtype f -print | \
sed "s@^$RPM_BUILD_ROOT@@g" > INSTALLED_FILES
@ -150,41 +132,21 @@ if [ "$(cat INSTALLED_FILES)X" = "X" ] ; then
fi
# install javadoc
mkdir -p %{buildroot}%{_javadocdir}
cp %{name}-%{version}-javadoc.zip %{buildroot}%{_javadocdir}
pushd %{buildroot}%{_javadocdir}
ln -s %{name}-%{version}-javadoc.zip %{name}-javadoc.zip
popd
# install src files
cd src
zip -r ../%{name}-%{version}-src.zip gnu/io/
cd ..
cp %{name}-%{version}-src.zip %{buildroot}%{_javadir}
# install lib devel files
mkdir -p %{buildroot}%{_includedir}/rxtx
cp src/*.h %{buildroot}%{_includedir}/rxtx
install -dm 0755 %{buildroot}%{_javadocdir}
cp -r javadoc %{buildroot}%{_javadocdir}/%{name}/
%files
%doc AUTHORS ChangeLog README RMISecurityManager.html INSTALL PORTING TODO
%license COPYING
%{_datadir}/java/RXTXcomm.jar
%{_jnidir}/RXTXcomm.jar
%files javadoc
%dir %{_javadocdir}
%doc %{_javadocdir}/%{name}-%{version}-javadoc.zip
%doc %{_javadocdir}/%{name}-javadoc.zip
%files src
%{_javadir}/%{name}-%{version}-src.zip
%{_javadocdir}
%license COPYING
%files -n librxtx%{libversion}
%defattr(755,root,root)
%{_libdir}/*.so
%files -n librxtx%{libversion}-devel
%{_includedir}/rxtx
%{_libdir}/*.la
%license COPYING
%changelog