Mailinglist Archive: opensuse-buildservice (366 mails)

< Previous Next >
Re: [opensuse-buildservice] Oracle InstantClient
  • From: Juergen Weigert <jw@xxxxxxx>
  • Date: Tue, 28 Aug 2007 20:50:56 +0200
  • Message-id: <20070828185056.GQ21943@xxxxxxx>
On Aug 28, 07 12:43:35 -0400, Ciro Iriarte wrote:
> 2007/8/26, Ciro Iriarte <cyruspy@xxxxxxxxx>:
> > 2007/8/26, Ciro Iriarte <cyruspy@xxxxxxxxx>:
> > > 2007/8/26, Marcus Rueckert <mrueckert@xxxxxxx>:
> > > > we might be able to handle it the same way as we handle the sun jdk
> > > > packages in the buildservice atm. that you can build against those but
> > > > not download them.
> > > >
> > > > this wasnt the first request from packagers/users for oracle bindings
> > > > (php/perl).
> > > >
> > > >     darix
> > > >
> > >
> > > That sounds great!!, can this be selective?, i mean, avoid downloading
> > > oracle-instanclient binary packages, but allowing to download nosrc
> > > files, so the end user can quickly fix dependencies.
> > >
> > > Maybe adding to packages to the BS would make it easier, a restricted
> >
> > Sorry, it should state "adding two packages"
> >
> > > "oracle-instanclient" to build and a public "oracle-instantclient_dep"
> > > providing the nosrc package.
> >
> > It would be:
> > oracle-instantclient -----> oracle-instantclient.${VERSION}.(i586|x86_64).rpm
> > oracle-instantclient_dep -----> oracle-instantclient.${VERSION}.nosrc.rpm
> >
> > >
> > > Regards,
> > > Ciro
> > >
> >
> What do we need to get this approved?

Would your oracle-instantclient come with source code?
I have an internal package here (spec file attached), which is binary only, 
and thereofore not part of opensuse.

        cheers,
                Jw.

-- 
 o \  Juergen Weigert  paint it green! __/ _=======.=======_
<V> | jw@xxxxxxx       wide open suse_/        _---|____________\/
 \  | 0911 74053-508         (tm)__/          (____/            /\
(/) | __________________________/             _/ \_ vim:set sw=2 wm=8
SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nuernberg)
"This bug is visible to non-employees. Please be respectful." (bugzilla)
#
# spec file for package oracle-instantclient (Version 10.2.0.2)
#
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#

# norootforbuild

Name:           oracle-instantclient
%define         fix_rpath 1
%if %fix_rpath
BuildRequires:  chrpath unzip
%else
BuildRequires:  unzip
%endif
Summary:        Client-libraries for Oracle Databases
Version:        10.2.0.2
Release:        40
License:        Any Noncommercial, ORACLE TECHNOLOGY NETWORK DEVELOPMENT AND DISTRIBUTION LICENSE AGREEMENT
Group:          Productivity/Databases/Clients
%ifarch %ix86
%define bin_vers linux32-%{version}-20060331
%endif
%ifarch x86_64
%define bin_vers linux-x86-64-%{version}-20060228
%endif
Source0:        instantclient-basiclite-%{bin_vers}.zip
Source1:        instantclient-sdk-%{bin_vers}.zip
Source2:        Export.txt
Source3:        OTN-License.txt
NoSource:       0
NoSource:       1
NoSource:       2
NoSource:       3
URL:            http://www.oracle.com/technology/tech/oci/instantclient/index.html
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
Requires:       compat-libstdc++
ExclusiveArch:  %ix86 x86_64

%description
Instant Client allows you to run your applications without installing
the standard Oracle client or having an ORACLE_HOME. OCI, OCCI, Pro*C,
ODBC, and JDBC applications work without modification, while using
significantly less disk space than before. Even SQL*Plus can be used
with Instant Client. No recompile, no hassle.

ISVs and Partners benefit greatly from packaging Instant Client along
with their applications, saving customers the extra step of installing
and configuring an Oracle client. Free. The same fully-featured,
high-performance applications that Oracle ISVs and partners have always
delivered will continue to work, untouched.



Authors:
--------
    oracle.com

%define prefix /opt/oracle
%prep
# empty

%build
cp %{S:2} %{S:3} .

%install
mkdir -p           $RPM_BUILD_ROOT/%{prefix}
unzip -q %{S:0} -d $RPM_BUILD_ROOT/%{prefix}
unzip -q %{S:1} -d $RPM_BUILD_ROOT/%{prefix}
# /bin/mv            $RPM_BUILD_ROOT/%{prefix}/instantclient* $RPM_BUILD_ROOT/%{prefix}/%{name}
%if %fix_rpath
test -x /usr/bin/chrpath || exit 1;
# use a subshell to suppress errors from bad exit codes.
( find $RPM_BUILD_ROOT -type f -name \*.so\* | xargs -n 1 chrpath --replace '%{prefix}/lib' )
%endif
find $RPM_BUILD_ROOT -type f | xargs chmod 644
find $RPM_BUILD_ROOT -type f -name \*.so\* | xargs chmod 755
# perl-DBD-Oracle tries to create these symlink and fails.  Argh. 
# better do it now, where it belongs.
(cd  $RPM_BUILD_ROOT/%{prefix}/instantclient* 
  ln -s libclntsh.so.10.1 libclntsh.so
  ln -s libocci.so.10.1 libocci.so
)
( cd $RPM_BUILD_ROOT/%{prefix}; mkdir lib; cd lib; ln -s ../instantclient*/*.so . )

%clean
rm -rf %buildroot

%files
%defattr(-,root,root,755)
%doc    Export.txt OTN-License.txt
%dir    %{prefix}
%{prefix}/*

%changelog
* Tue Jun 05 2007 - jw@xxxxxxx
- added rpmlinrc.
  This package *is* intended to contain both devel and runtime
* Tue Jun 13 2006 - jw@xxxxxxx
- added missing Requires: compat-libstdc++
* Fri Jun 02 2006 - jw@xxxxxxx
- added missing *.so symlinks
  lib subdir must not be a symlink to keep brp-rpath happy.
* Fri Jun 02 2006 - jw@xxxxxxx
- initial build. x86_64 and i386 only.
  Required by perl-DBD-Oracle
#
# spec file for package perl-DBD-Oracle (Version 1.19)
#
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#

# norootforbuild

Name:           perl-DBD-Oracle
URL:            http://search.cpan.org/~timb/DBD-Oracle/
BuildRequires:  oracle-instantclient perl-DBI
License:        Artistic License, GNU General Public License (GPL)
Group:          Development/Libraries/Perl
Autoreqprov:    on
Requires:       perl-DBI
Requires:       perl = %{perl_version}
Summary:        Perl DBD module for interfacing with Oracle databases
Version:        1.19
Release:        1
Source:         DBD-Oracle-%{version}.tar.gz
Source1:        oracle-instantclient.html
Patch:          Makefile.PL.diff
Patch1:         envdep.diff
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
This module is needed to access Oracle databases from within Perl. It
links against Oracle's instantclient available from
http://www.oracle.com/technology/tech/oci/instantclient/index.html



Authors:
--------
    Tim Bunce et al.

%prep
%setup -n DBD-Oracle-%{version}
%patch -p1
%patch1
cp %{S:1} .

%build
incdir=`echo /opt/oracle/instantclient*/sdk/include`
export ORACLE_HOME=/opt/oracle/lib
export LD_LIBRARY_PATH=/opt/oracle/lib
perl Makefile.PL -v -h $incdir -V `perl -ne '$$1=$2 if /#define\s+OCI_M(AJ|IN)OR_VERSION\s+(\d+)/; END { print "$AJ.$IN\n" } ' $incdir/oci.h`
make
# make test             # only 2.7% success

%install
[ "$RPM_BUILD_ROOT" != "/" ] && [ -d $RPM_BUILD_ROOT ] && rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT/%{perl_archlib}
make DESTDIR=$RPM_BUILD_ROOT install_vendor
%perl_process_packlist

%clean
[ "$RPM_BUILD_ROOT" != "/" ] && [ -d $RPM_BUILD_ROOT ] && rm -rf $RPM_BUILD_ROOT

%files
%defattr(-,root,root)
%doc Changes README MANIFEST oracle-instantclient.html
%doc %{_mandir}/man?/*
%dir %{perl_vendorarch}/DBD
%dir %{perl_vendorarch}/auto/DBD
%{perl_vendorarch}/Oraperl.pm
%{perl_vendorarch}/oraperl.ph
%{perl_vendorarch}/DBD/*
%{perl_vendorarch}/auto/DBD/*
/var/adm/perl-modules/%{name}
/usr/bin/ora_*

%changelog
* Thu May 03 2007 - jw@xxxxxxx
- added some documentation on oracle-instantclient
- updated to DBD-Oracle 1.19
  Fixed execute_array to comply with DBI standard from Martin J. Evans, Xho Jingleheimerschmidt and others
  Fixed execute_array so it will not throw a Perl warning on undef values in Tuples from John Scoles
  Fixed execute_array so it will take the ora_array_chunk_size DB handle attribute
  Fixed some typos in code and READMEs from John Scoles
  Fixed a few other little bugs dealing with  compatibility with Oracle 8
  Changes to README from Karl Auer
  Suppress warning in 26exe_array.t from Philip Garrett
  Added support for array context aware execute_for_fetch from Martin J. Evans
  Fixed Makefile.PL for an incompatibility with ExtUtils::MM_Unix v1.50 (invoked byExtUtils::MakeMaker) from Dennis McRitchie
  Updated POD to reflect that OCI after 9.2 no longer strips trialing spaces
* Wed Aug 23 2006 - ro@xxxxxxx
- change dep from /bin/env to /usr/bin/env
* Wed Jul 26 2006 - jw@xxxxxxx
- update to V1.18, minor changes only.
* Tue Jun 06 2006 - jw@xxxxxxx
- filelist check failed. auto now excluded.
* Fri Jun 02 2006 - jw@xxxxxxx
- initial build V1.17
  using oracle-instantclient-10.2
< Previous Next >
Follow Ups