[bluecove/f15] Initial import (#480607).
François Kooman
fkooman at fedoraproject.org
Sat Jun 4 14:42:54 UTC 2011
commit c428e2ce980ea97562f83f7606e4e2448bd2c418
Author: F. Kooman <fkooman at tuxed.net>
Date: Sat Jun 4 16:42:18 2011 +0200
Initial import (#480607).
.gitignore | 4 +
README.dist | 64 +++++++++++++++++
bluecove.spec | 210 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
sources | 4 +
4 files changed, 282 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..a473d9c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1,4 @@
+/bluecove-2.1.1-SNAPSHOT-sources.tar.gz
+/bluecove-bluez-2.1.1-SNAPSHOT-sources.tar.gz
+/bluecove-emu-2.1.1-SNAPSHOT-sources.tar.gz
+/bluecove-gpl-2.1.1-SNAPSHOT-sources.tar.gz
diff --git a/README.dist b/README.dist
new file mode 100644
index 0000000..6119ca0
--- /dev/null
+++ b/README.dist
@@ -0,0 +1,64 @@
+Usage
+=====
+BlueCove on Linux consists of three parts, a main "bluecove.jar" file (Apache
+Software License 2.0 that implements JSR-82, a "bluecove-gpl.jar" file (GPLv3+)
+that implements a BlueCove backend for interfacing with the Linux BlueZ stack
+and a "bluecove-bluez.jar" that uses DBUS to communicate
+
+For your applications to work you should thus include two JAR files in your
+classpath:
+
+ /usr/share/java/bluecove.jar
+
+ AND
+
+ (
+ /usr/lib/bluecove/bluecove-gpl.jar # on i386 or ppc
+ /usr/lib64/bluecove/bluecove-gpl.jar # on x86_64 or ppc64
+
+ OR
+
+ /usr/lib/bluecove/bluecove-bluez.jar # on i386 or ppc
+ /usr/lib64/bluecove/bluecove-bluez.jar # on x86_64 or ppc64
+
+ OR
+
+ /usr/share/java/bluecove-emu.jar # for the emulator
+
+ )
+
+The bluecove-gpl.jar and bluecove-bluez.jar load a system library that is also
+located in the library directory.
+
+In case you use bluecove-bluez (device discovery using DBUS) you also need to
+have "libmatthew-java" and "dbus-java >=2.5.1" installed and added to the
+classpath of your application.
+
+In case you want to use the emulator you need "microemulator"
+(http://www.microemu.org) installed. See http://www.bluecove.org/bluecove-emu/
+
+You can use the "build-classpath" script to generate the classpath for the
+bluecove and bluecove-emu JARs:
+
+ java -cp `build-classpath bluecove bluecove-emu` package.className
+
+This unfortunately doesn't work for bluecove-gpl and bluecove-bluez because
+they are located in a architecture dependent directory, /usr/lib or /usr/lib64
+(see above).
+
+In case you use "bluecove-bluez" you also need to add "dbus-java" and
+"libmatthew-java" to your classpath:
+
+ java -cp `build-classpath bluecove dbus-java`:\
+ /usr/lib64/libmatthew-java/unix.jar:\
+ /usr/lib64/libmatthew-java/hexdump.jar:\
+ /usr/lib64/bluecove/bluecove-bluez.jar \
+ package.className
+
+(remove the 64 from lib64 on 32 bit machines)
+
+Javadoc
+=======
+This library implements JSR-82. The "official" API documentation can be found on
+http://jcp.org/en/jsr/detail?id=82. As a programmer you should only rely on
+this API.
diff --git a/bluecove.spec b/bluecove.spec
new file mode 100644
index 0000000..315081e
--- /dev/null
+++ b/bluecove.spec
@@ -0,0 +1,210 @@
+%define svndate 20101024
+%define snapshot 63
+
+Name: bluecove
+Version: 2.1.1
+Release: 0.2.%{svndate}snap%{snapshot}%{?dist}
+Summary: Implementation of JSR-82 Java Bluetooth API
+
+Group: System Environment/Libraries
+License: ASL 2.0 and LGPLv2+ and GPLv3+
+URL: http://code.google.com/p/bluecove/
+
+# Snapshot release sources
+Source0: http://snapshot.bluecove.org/distribution/download/%{version}-SNAPSHOT/%{version}-SNAPSHOT.%{snapshot}/bluecove-%{version}-SNAPSHOT-sources.tar.gz
+Source1: http://snapshot.bluecove.org/distribution/download/%{version}-SNAPSHOT/%{version}-SNAPSHOT.%{snapshot}/bluecove-gpl-%{version}-SNAPSHOT-sources.tar.gz
+Source2: http://snapshot.bluecove.org/distribution/download/%{version}-SNAPSHOT/%{version}-SNAPSHOT.%{snapshot}/bluecove-bluez-%{version}-SNAPSHOT-sources.tar.gz
+Source3: http://snapshot.bluecove.org/distribution/download/%{version}-SNAPSHOT/%{version}-SNAPSHOT.%{snapshot}/bluecove-emu-%{version}-SNAPSHOT-sources.tar.gz
+
+# Official release sources
+#Source0: http://bluecove.googlecode.com/files/bluecove-%{version}-sources.tar.gz
+#Source1: http://bluecove.googlecode.com/files/bluecove-gpl-%{version}-sources.tar.gz
+#Source2: http://bluecove.googlecode.com/files/bluecove-bluez-%{version}-sources.tar.gz
+#Source3: http://bluecove.googlecode.com/files/bluecove-emu-%{version}-sources.tar.gz
+
+Source4: README.dist
+
+BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+
+BuildRequires: jpackage-utils
+BuildRequires: java-devel >= 1:1.6.0
+BuildRequires: ant
+BuildRequires: bluez-libs-devel
+BuildRequires: ant-nodeps
+BuildRequires: libmatthew-java
+BuildRequires: dbus-java >= 2.5.1
+Requires: jpackage-utils
+Requires: java >= 1:1.6.0
+Requires: libmatthew-java
+Requires: dbus-java >= 2.5.1
+
+%description
+BlueCove is a JSR-82 implementation on Java Standard Edition (J2SE) that
+currently interfaces with the Mac OS X, WIDCOMM, BlueSoleil and Microsoft
+Bluetooth stack. Originally developed by Intel Research and currently
+maintained by volunteers.
+
+This package adds additional support for:
+- Linux with BlueZ (bluecove-gpl)
+- Linux with BlueZ using DBUS for device discovery (bluecove-bluez)
+- Emulator for use with MicroEmulator (bluecove-emu)
+
+%prep
+%setup -q -n bluecove-%{version}-SNAPSHOT
+# unpack bluecove-gpl
+tar zxf %{SOURCE1}
+# unpack bluecove-bluez
+tar zxf %{SOURCE2}
+# unpack bluecove-emu
+tar zxf %{SOURCE3}
+
+find -name '*.class' -exec rm -f '{}' \;
+find -name '*.jar' -exec rm -f '{}' \;
+
+cp -p bluecove-gpl-%{version}-SNAPSHOT/AUTHORS.txt AUTHORS-gpl.txt
+cp -p bluecove-gpl-%{version}-SNAPSHOT/LICENSE.txt LICENSE-gpl.txt
+
+# add README.dist
+cp -p %{SOURCE4} .
+
+%build
+# build main bluecove
+ant jar -Dproduct_version=%{version}
+
+# build bluecove-gpl
+cd bluecove-gpl-%{version}-SNAPSHOT
+ant jar -Dproduct_version=%{version} \
+ -Dbluecove_main_dist_dir=../target \
+ -Dbluecove.native.resources.skip=true \
+ -Dbluecove.native.linker.options="" \
+ -DCC_compiler_options="${RPM_OPT_FLAGS} -fPIC -fno-stack-protector"
+
+# build bluecove-bluez
+cd ../bluecove-bluez-%{version}-SNAPSHOT
+ant jar -Dproduct_version=%{version} \
+ -Dbluecove_main_dist_dir=../target \
+ -Ddbus_java_jar=%{_javadir}/dbus-java/dbus.jar \
+ -Dlibmatthew_java_debug_jar=%{_libdir}/libmatthew-java/unix.jar \
+ -Dbluecove.native.resources.skip=true \
+ -Dbluecove.native.linker.options="" \
+ -DCC_compiler_options="${RPM_OPT_FLAGS} -fPIC -fno-stack-protector"
+
+# build bluecove-emu
+cd ../bluecove-emu-%{version}-SNAPSHOT
+ant jar -Dproduct_version=%{version} \
+ -Dbluecove_main_dist_dir=../target
+
+%install
+rm -rf $RPM_BUILD_ROOT
+
+mkdir -p $RPM_BUILD_ROOT%{_javadir}
+mkdir -p $RPM_BUILD_ROOT%{_libdir}/%{name}/%{version}-SNAPSHOT
+
+############
+# BlueCove #
+############
+cp -p target/bluecove-%{version}.jar \
+ $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar
+# create symlink without version
+(cd $RPM_BUILD_ROOT%{_javadir}/ && ln -sf %{name}-%{version}.jar %{name}.jar)
+
+################
+# BlueCove GPL #
+################
+cp -p bluecove-gpl-%{version}-SNAPSHOT/target/bluecove-gpl-%{version}.jar \
+ $RPM_BUILD_ROOT%{_libdir}/%{name}/%{name}-gpl-%{version}.jar
+# create symlink without version
+(cd $RPM_BUILD_ROOT%{_libdir}/%{name} && ln -sf %{name}-gpl-%{version}.jar %{name}-gpl.jar)
+
+# copy the GPL JNI library to library directory
+cp -p bluecove-gpl-%{version}-SNAPSHOT/target/*.so $RPM_BUILD_ROOT%{_libdir}/%{name}/%{version}-SNAPSHOT
+
+#######################
+# BlueCove BlueZ DBUS #
+#######################
+cp -p bluecove-bluez-%{version}-SNAPSHOT/target/bluecove-bluez-%{version}.jar \
+ $RPM_BUILD_ROOT%{_libdir}/%{name}/%{name}-bluez-%{version}.jar
+# create symlink without version
+(cd $RPM_BUILD_ROOT%{_libdir}/%{name} && ln -sf %{name}-bluez-%{version}.jar %{name}-bluez.jar)
+
+# copy the BlueZ JNI library to library directory
+cp -p bluecove-bluez-%{version}-SNAPSHOT/target/*.so $RPM_BUILD_ROOT%{_libdir}/%{name}/%{version}-SNAPSHOT
+
+################
+# BlueCove Emu #
+################
+cp -p bluecove-emu-%{version}-SNAPSHOT/target/bluecove-emu-%{version}.jar \
+ $RPM_BUILD_ROOT%{_javadir}/%{name}-emu-%{version}.jar
+# create symlink without version
+(cd $RPM_BUILD_ROOT%{_javadir}/ && ln -sf %{name}-emu-%{version}.jar %{name}-emu.jar)
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%files
+%defattr(-,root,root,-)
+%{_javadir}/*
+%{_libdir}/%{name}
+%doc AUTHORS.txt README.txt LICENSE.txt stacks.txt todo.txt AUTHORS-gpl.txt LICENSE-gpl.txt README.dist
+
+%changelog
+* Sat Jun 04 2011 F. Kooman - 2.1.1-0.2.20101024snap63
+- rebuilt
+
+* Wed Nov 3 2010 François Kooman <fkooman at tuxed.net> - 2.1.1-0.1.20101024snap63
+- update to new snapshot (20101024, r63)
+
+* Mon Apr 12 2010 François Kooman <fkooman at tuxed.net> - 2.1.1-0.1.20100401snap62
+- update to new snapshot
+- make use of RPM_OPT_FLAGS for compiling JNI libs
+- add license LGPLv2+ to license tag as bluecove-gpl uses it
+
+* Mon Feb 7 2010 François Kooman <fkooman at tuxed.net> - 2.1.1-0.1.20090914snap60
+- rework versio number
+
+* Mon Jan 11 2010 François Kooman <fkooman at tuxed.net> - 2.1.1-0.20090914.1
+- remove GCJ support again as it breaks bluecove-bluez
+- fix files section redundancy
+
+* Sun Jan 10 2010 François Kooman <fkooman at tuxed.net> - 2.1.1-0.20090914
+- update snapshot to 20090914
+- fix source links to snapshot version
+- add GCJ support
+
+* Sat Jul 25 2009 François Kooman <fkooman at tuxed.net> - 2.1.1-0.20090624
+- update snapshot to 20090624
+
+* Sat May 16 2009 François Kooman <fkooman at tuxed.net> - 2.1.1-0.20090505
+- update snapshot to 20090505
+
+* Wed Mar 18 2009 François Kooman <fkooman at tuxed.net> - 2.1.1-0.20090317
+- update snapshot to 20090317
+- classpath not in manifest anymore (bluecove-bluez)
+- upstream fixed character encoding problem (bluecove)
+- renabled bluecove-bluez
+- dependency on dbus-java >= 2.5.1 (in updates testing fc10)
+- update README.dist to include more on how to use bluecove-bluez + fix typos
+
+* Sat Mar 14 2009 François Kooman <fkooman at tuxed.net> - 2.1.1-0.20090314
+- prepare for release 2.1.1, update to snapshot 20090314
+- remove upstreamed patches
+- add bluecove-bluez (uses dbus for device discovery) disabled for now as we
+ need dbus-java >= 2.5.1 (BZ #490101)
+- add bluecove-emu
+- move libraries to versioned directory in libdir/bluecove per upstream request
+- remove ldconfig post and postun as other apps don't link to this
+- update README.dist
+- update package description
+
+* Sun Jan 25 2009 François Kooman <fkooman at tuxed.net> - 2.1.0-2
+- remove javadoc sub package, there isn't any real documentation, only
+ references to JSR-82 API docs at jcp.org
+- create symlinks without version numbers
+- remove gpl sub package, bluecove without gpl subpackage is useless
+- include the interesting docs from gpl subpackage in the package instead of
+ the subpackage
+- include README.dist
+
+* Wed Jan 14 2009 François Kooman <fkooman at tuxed.net> - 2.1.0-1
+- Initial Fedora package
+
diff --git a/sources b/sources
index e69de29..e2fa318 100644
--- a/sources
+++ b/sources
@@ -0,0 +1,4 @@
+bef278b4858dacac74badb4f5bec4a4c bluecove-2.1.1-SNAPSHOT-sources.tar.gz
+afe307808b1eb30d6ed594da2bd0e144 bluecove-bluez-2.1.1-SNAPSHOT-sources.tar.gz
+0798c91ea2194a74aa45e6bca0200330 bluecove-emu-2.1.1-SNAPSHOT-sources.tar.gz
+625e18a452a74796324e8ac10f0d01d9 bluecove-gpl-2.1.1-SNAPSHOT-sources.tar.gz
More information about the scm-commits
mailing list