Package init
This commit is contained in:
commit
0f2bd05c68
BIN
libwebp-1.0.0.tar.gz
Normal file
BIN
libwebp-1.0.0.tar.gz
Normal file
Binary file not shown.
116
libwebp.spec
Normal file
116
libwebp.spec
Normal file
@ -0,0 +1,116 @@
|
||||
Name: libwebp
|
||||
Version: 1.0.0
|
||||
Release: 3
|
||||
URL: https://webmproject.org/
|
||||
Summary: Library and tools for the WebP graphics format
|
||||
License: BSD
|
||||
Source0: https://downloads.webmproject.org/releases/webp/%{name}-%{version}.tar.gz
|
||||
Source1: libwebp_jni_example.java
|
||||
|
||||
BuildRequires: libjpeg-devel libpng-devel giflib-devel libtiff-devel
|
||||
BuildRequires: java-devel jpackage-utils swig freeglut-devel
|
||||
BuildRequires: autoconf automake libtool
|
||||
|
||||
%description
|
||||
This is an image format that does lossy compression of digital
|
||||
photographic images. WebP consists of a codec based on VP8, and a
|
||||
container based on RIFF. Webmasters, web developers and browser
|
||||
developers can use WebP to compress, archive and distribute digital
|
||||
images more efficiently.
|
||||
|
||||
%package tools
|
||||
Summary: The WebP command line tools
|
||||
|
||||
%description tools
|
||||
WebP is an image format that does lossy compression of digital
|
||||
photographic images. WebP consists of a codec based on VP8, and a
|
||||
container based on RIFF. Webmasters, web developers and browser
|
||||
developers can use WebP to compress, archive and distribute digital
|
||||
images more efficiently.
|
||||
|
||||
%package devel
|
||||
Summary: Development files for libwebp
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
|
||||
%description devel
|
||||
Development files for libwebp, a library for the WebP format
|
||||
|
||||
%package java
|
||||
Summary: Java bindings for libwebp, a library for the WebP format
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
Requires: java-headless jpackage-utils
|
||||
|
||||
%description java
|
||||
Java bindings for libwebp.
|
||||
|
||||
%package_help
|
||||
|
||||
%prep
|
||||
%autosetup -n %{name}-%{version} -p1
|
||||
%build
|
||||
autoreconf -vif
|
||||
%ifarch aarch64
|
||||
export CFLAGS="%{optflags} -frename-registers"
|
||||
%endif
|
||||
%configure --enable-libwebpmux --enable-libwebpdemux \
|
||||
--enable-libwebpdecoder --disable-neon
|
||||
%make_build
|
||||
|
||||
cp %{SOURCE1} .
|
||||
cd swig
|
||||
rm -rf libwebp.jar libwebp_java_wrap.c
|
||||
install -d java/com/google/webp
|
||||
swig -ignoremissing -I../src -java \
|
||||
-package com.google.webp \
|
||||
-outdir java/com/google/webp \
|
||||
-o libwebp_java_wrap.c libwebp.swig
|
||||
|
||||
gcc %{__global_ldflags} %{optflags} -shared \
|
||||
-I/usr/lib/jvm/java/include \
|
||||
-I/usr/lib/jvm/java/include/linux \
|
||||
-I../src \
|
||||
-L../src/.libs -lwebp libwebp_java_wrap.c \
|
||||
-o libwebp_jni.so
|
||||
|
||||
cd java
|
||||
javac com/google/webp/libwebp.java
|
||||
jar cvf ../libwebp.jar com/google/webp/*.class
|
||||
|
||||
%install
|
||||
%make_install
|
||||
install -d %{buildroot}/%{_libdir}/%{name}-java
|
||||
cp swig/*.jar swig/*.so %{buildroot}/%{_libdir}/%{name}-java/
|
||||
%delete_la
|
||||
%ldconfig_scriptlets
|
||||
|
||||
%files tools
|
||||
%defattr(-,root,root)
|
||||
%{_bindir}/*
|
||||
|
||||
%files -n %{name}
|
||||
%defattr(-,root,root)
|
||||
%doc README AUTHORS
|
||||
%license COPYING
|
||||
%{_libdir}/*.so.*
|
||||
|
||||
%files devel
|
||||
%defattr(-,root,root)
|
||||
%{_libdir}/%{name}*.so
|
||||
%{_includedir}/*
|
||||
%{_libdir}/*.a
|
||||
%{_libdir}/pkgconfig/*
|
||||
|
||||
%files java
|
||||
%defattr(-,root,root)
|
||||
%doc *.java
|
||||
%{_libdir}/%{name}-java/
|
||||
|
||||
%files help
|
||||
%defattr(-,root,root)
|
||||
%doc NEWS PATENTS
|
||||
%{_mandir}/man*/*
|
||||
|
||||
%changelog
|
||||
* Wed Sep 11 2019 openEuler Buildteam <buildteam@openeuler.org> - 1.0.0-3
|
||||
- Package init
|
||||
|
||||
27
libwebp_jni_example.java
Normal file
27
libwebp_jni_example.java
Normal file
@ -0,0 +1,27 @@
|
||||
import com.google.webp.libwebp;
|
||||
|
||||
import java.lang.reflect.Method;
|
||||
|
||||
public class libwebp_jni_example {
|
||||
static {
|
||||
try {
|
||||
System.load("/usr/lib64/libwebp-java/libwebp_jni.so");
|
||||
} catch (UnsatisfiedLinkError e) {
|
||||
System.load("/usr/lib/libwebp-java/libwebp_jni.so");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* usage: java -cp libwebp.jar:. libwebp_jni_example
|
||||
*/
|
||||
public static void main(String argv[]) {
|
||||
final int version = libwebp.WebPGetDecoderVersion();
|
||||
System.out.println("libwebp version: " + Integer.toHexString(version));
|
||||
|
||||
System.out.println("libwebp methods:");
|
||||
final Method[] libwebpMethods = libwebp.class.getDeclaredMethods();
|
||||
for (int i = 0; i < libwebpMethods.length; i++) {
|
||||
System.out.println(libwebpMethods[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user