123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243 |
- %{!?python_sitearch: %define python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
- %{!?ruby_sitearch: %global ruby_sitearch %(ruby -rrbconfig -e 'puts Config::CONFIG["sitearchdir"] ')}
- %global ruby_arch %(ruby -rrbconfig -e 'puts Config::CONFIG["archdir"]')
- Name: libdmtx
- Summary: Library for working with Data Matrix 2D bar-codes
- Version: 0.7.2
- Release: 9%{?_dist_release}
- Group: System Environment/Libraries
- License: LGPLv2+
- URL: http://www.libdmtx.org/
- Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.bz2
- Patch0: %{name}-0.7.2-php54.patch
- Patch1: %{name}-0.7.2-ruby19.patch
- BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
- BuildRequires: ImageMagick-devel
- # required for tests
- BuildRequires: SDL_image-devel
- BuildRequires: libGLU-devel
- BuildRequires: libpng-devel
- # language bindings
- BuildRequires: php5-devel
- BuildRequires: python-devel
- BuildRequires: ruby
- BuildRequires: ruby-devel
- #BuildRequires: java-1.6.0-devel
- %description
- libdmtx is open source software for reading and writing Data Matrix 2D
- bar-codes on Linux, Unix, OS X, Windows, and mobile devices. At its core
- libdmtx is a shared library, allowing C/C++ programs to use its capabilities
- without restrictions or overhead.
- The included utility programs, dmtxread and dmtxwrite, provide the official
- interface to libdmtx from the command line, and also serve as a good reference
- for programmers who wish to write their own programs that interact with
- libdmtx. All of the software in the libdmtx package is distributed under
- the LGPLv2 and can be used freely under these terms.
- %package devel
- Summary: Development files for %{name}
- Group: Development/Libraries
- Requires: %{name} = %{version}-%{release}
- %description devel
- The %{name}-devel package contains libraries and header files for
- developing applications that use %{name}.
- %package utils
- Summary: Utilities for %{name}
- Group: Applications/System
- Requires: %{name} = %{version}-%{release}
- %description utils
- The %{name}-utils package contains utilities that use %{name}.
- # language bindings
- %package -n php-libdmtx
- Summary: PHP bindings for %{name}
- Group: System Environment/Libraries
- License: GPLv2+
- Requires: %{name} = %{version}-%{release}
- Requires: php5
- %description -n php-libdmtx
- The php-%{name} package contains bindings for using %{name} from PHP.
- %package -n python-libdmtx
- Summary: Python bindings for %{name}
- Group: System Environment/Libraries
- Requires: %{name} = %{version}-%{release}
- %description -n python-libdmtx
- The python-%{name} package contains bindings for using %{name} from Python.
- %package -n ruby-libdmtx
- Summary: Ruby bindings for %{name}
- Group: System Environment/Libraries
- Requires: %{name} = %{version}-%{release}
- Provides: ruby(%{name}) = %{version}
- %description -n ruby-libdmtx
- The ruby-%{name} package contains bindings for using %{name} from Ruby.
- %prep
- %setup -q
- %patch0 -p1 -b .php54
- %patch1 -p1 -b .ruby19
- # fix permissions
- chmod a-x wrapper/{php,python}/README
- %build
- %configure --disable-static
- make %{?_smp_mflags}
- # temporary installation required by the language wrappers
- make install DESTDIR=/tmp
- # language wrappers must be built separately
- pushd wrapper
- pushd php
- phpize
- %configure --disable-static
- # Don't use rpath!
- sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
- sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
- make EXTRA_CFLAGS="-I/tmp%{_includedir}" DMTX_SHARED_LIBADD="-L/tmp%{_libdir} -ldmtx"
- popd
- pushd python
- # fix paths
- sed -i.orig -e "s|/usr/local/include|/tmp%{_includedir}|" -e "s|/usr/local/lib|/tmp%{_libdir}|" setup.py
- python setup.py build
- chmod 0755 build/lib.*/*.so
- popd
- pushd ruby
- ruby extconf.rb
- make CPPFLAGS="-I/tmp%{_includedir}" LIBPATH="-L/tmp%{_libdir} -ldmtx"
- popd
- #pushd java
- #make LIBDMTX_LA="/tmp%{_libdir}/libdmtx.so"
- #popd
- popd
- %install
- rm -rf $RPM_BUILD_ROOT
- make install DESTDIR=$RPM_BUILD_ROOT
- find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'
- pushd wrapper
- pushd php
- make install INSTALL_ROOT=$RPM_BUILD_ROOT
- popd
- pushd python
- python setup.py install -O1 --skip-build --root $RPM_BUILD_ROOT
- popd
- pushd ruby
- make install RUBYARCHDIR=$RPM_BUILD_ROOT%{ruby_arch}
- popd
- #pushd java
- #popd
- popd
- %check
- make check
- pushd test
- for t in simple unit
- do
- ./${t}_test/${t}_test
- done
- popd
- %clean
- rm -rf $RPM_BUILD_ROOT
- %post -p /sbin/ldconfig
- %postun -p /sbin/ldconfig
- %files
- %defattr(-,root,root,-)
- %doc AUTHORS COPYING.LESSER ChangeLog KNOWNBUG NEWS README README.linux TODO
- %{_libdir}/%{name}.so.*
- %files devel
- %defattr(-,root,root,-)
- %doc
- %{_includedir}/*
- %{_libdir}/%{name}.so
- %{_libdir}/pkgconfig/%{name}.pc
- %{_mandir}/man3/%{name}.3*
- %files utils
- %defattr(-,root,root,-)
- %{_bindir}/dmtx*
- %{_mandir}/man1/dmtx*.1*
- %files -n php-libdmtx
- %defattr(-,root,root,-)
- %doc COPYING wrapper/php/README
- %{_libdir}/php5/*.so
- %files -n python-libdmtx
- %defattr(-,root,root,-)
- %doc wrapper/python/README
- %{python_sitearch}/*
- %files -n ruby-libdmtx
- %defattr(-,root,root,-)
- %doc wrapper/ruby/README
- %{ruby_arch}/*.so
- %changelog
- * Wed Jul 02 2014 Yoji TOYODA <bsyamato@sea.plala.or.jp> 0.7.2-9
- - rebuild with ImageMagick-6.8.9.5
- * Wed Aug 14 2013 Yoji TOYODA <bsyamato@sea.plala.or.jp> 0.7.2-8
- - rebuild with ImageMagick-6.8.6.8
- - add Patch0 (%%{name}-0.7.2-php54.patch) from fedora
- - add Patch1 (%%{name}-0.7.2-ruby19.patch) from fedora
- * Sun Mar 11 2012 Yoji TOYODA <bsyamato@sea.plala.or.jp> 0.7.2-7
- - rebuild with ImageMagick-6.7.5.10
- * Sun Feb 19 2012 Yoji TOYODA <bsyamato@sea.plala.or.jp> 0.7.2-6
- - rebuild with python-2.7.2
- * Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.7.2-4
- - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
- * Wed Nov 17 2010 Dan Horák <dan[at]danny.cz> 0.7.2-3
- - updated license for the php subpackage
- - run few tests
- * Sat May 29 2010 Dan Horák <dan[at]danny.cz> 0.7.2-2
- - added language bindigs
- * Wed Feb 3 2010 Dan Horák <dan[at]danny.cz> 0.7.2-1
- - initial Fedora version
|