Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:zhonghuaren
python-jcc
python-jcc.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File python-jcc.spec of Package python-jcc
%global debug_package %{nil} Name: python-jcc Version: 3.0 Release: 1 Summary: C++ code generator for calling Java from C++/Python Group: Development/Languages License: MIT URL: http://pypi.python.org/pypi/JCC/ Source0: http://pypi.python.org/packages/source/J/JCC/JCC-%{version}.tar.gz Requires: java-openjdk BuildRequires: gcc-c++ BuildRequires: python-devel java-devel-openjdk lua BuildRequires: python-setuptools Patch0: JCC-%{version}-aarch64.patch %description JCC is a C++ code generator for producing the glue code necessary to call into Java classes from CPython via Java's Native Invocation Interface (JNI). JCC generates C++ wrapper classes that hide all the gory details of JNI access as well Java memory and object reference management. JCC generates CPython types that make these C++ classes accessible from a Python interpreter. JCC attempts to make these Python types pythonic by detecting iterators and property accessors. Iterators and mappings may also be declared to JCC. %package devel Summary: Source code for JCC wrapper classes Group: Development/Libraries Requires: %{name} = %{version}-%{release} %description devel This package contains the source code which is needed by JCC to generate wrapper classes. %prep %setup -q -n JCC-%{version} %patch0 -p1 sed -i 's|from setuptools import Library|from setuptools.extension import Library|' setup.py %build JVM_BASEPATH="/usr/lib/jvm" # even on x86_64 the jvm is located below /usr/lib OPENJDK_JRE_BASEPATH="${JVM_BASEPATH}/jre-openjdk" OPENJDK_INCLUDE="${JVM_BASEPATH}/java-openjdk/include" LIBDIR_NAME=`echo %{_libdir} | sed -e "s/^.*\/\(lib6\?4\?\).*$/\1/"` echo "$LIBDIR_NAME" if [ "$LIBDIR_NAME" == "lib" ]; then OPENJDK_LIBDIR=${OPENJDK_JRE_BASEPATH}/lib/i386; OPENJDK_VMDIR=${OPENJDK_LIBDIR}/client else %ifarch x86_64 OPENJDK_LIBDIR=${OPENJDK_JRE_BASEPATH}/lib/amd64; %else OPENJDK_LIBDIR=${OPENJDK_JRE_BASEPATH}/lib/aarch64; %endif OPENJDK_VMDIR=${OPENJDK_LIBDIR}/server fi INCLUDE="${OPENJDK_INCLUDE}::${OPENJDK_INCLUDE}/linux" LFLAGS="-L${OPENJDK_LIBDIR}::-ljava::-Wl,-rpath=${OPENJDK_LIBDIR}:${OPENJDK_VMDIR}" # JCC/PyLucene crashed in DeleteGlobalRef with -O2, see # http://lists.osafoundation.org/pipermail/pylucene-dev/2008-August/002882.html CFLAGS="$RPM_OPT_FLAGS -O0" NUM_FILES=2 JCC_ARGSEP="::" JCC_INCLUDES=${INCLUDE} JCC_LFLAGS=${LFLAGS} CFLAGS="${CFLAGS}"\ NUM_FILES=${NUM_FILES} JCC_JDK=/usr/lib/jvm/java-openjdk\ %{__python} setup.py build %install rm -rf $RPM_BUILD_ROOT JCC_JDK=/usr/lib/jvm/java-openjdk %{__python} setup.py install -O1 --skip-build --root $RPM_BUILD_ROOT %clean rm -rf $RPM_BUILD_ROOT %files %doc CHANGES LICENSE README %{python_sitearch}/* %files devel %{python_sitearch}/jcc/sources %changelog * Fri Nov 17 2017 Huaren Zhong <huaren.zhong@gmail.com> 3.0 - Rebuild for Fedora * Mon Aug 25 2008 Felix Schwarz <felix.schwarz@oss.schwarz.eu> - 1.9-5 - use environment variables instead of patching setup.py - compile with -O0 to work around a SIGSEGV in generated code * Mon Jun 02 2008 Felix Schwarz <felix.schwarz@oss.schwarz.eu> - 1.9-4 - fixed permissions - moved header files to devel package * Tue May 27 2008 Felix Schwarz <felix.schwarz@oss.schwarz.eu> - 1.9-3 - renamed package to python-jcc - removed patch for setup (we can use environment variables) - added some scripting logic so that the package builds on i386 and x86_64 * Thu May 22 2008 Felix Schwarz <felix.schwarz@oss.schwarz.eu> - 1.9-2 - re-added sources directory as it is needed for compiling PyLucene (-> -devel?) * Thu May 22 2008 Felix Schwarz <felix.schwarz@oss.schwarz.eu> - 1.9-1 - initial packaging
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor