Gentoo Archives: gentoo-commits

From: Michael Haubenwallner <haubi@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-db/oracle-instantclient-basic/files/, dev-db/oracle-instantclient-basic/
Date: Mon, 09 Jul 2018 14:58:16
Message-Id: 1531148253.5719cacb8b4d4f2b0d40e92e667a7c940de1b319.haubi@gentoo
1 commit: 5719cacb8b4d4f2b0d40e92e667a7c940de1b319
2 Author: Michael Haubenwallner <haubi <AT> gentoo <DOT> org>
3 AuthorDate: Mon Jul 9 14:52:29 2018 +0000
4 Commit: Michael Haubenwallner <haubi <AT> gentoo <DOT> org>
5 CommitDate: Mon Jul 9 14:57:33 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5719cacb
7
8 dev-db/oracle-instantclient-basic: cleanup old
9
10 Bug: https://bugs.gentoo.org/589146
11 Package-Manager: Portage-2.3.24, Repoman-2.3.6
12
13 dev-db/oracle-instantclient-basic/Manifest | 8 -
14 .../files/11.2.0.3-makefile.patch | 57 ------
15 .../files/tnsnames.ora.sample | 93 ----------
16 .../oracle-instantclient-basic-11.2.0.3.ebuild | 197 --------------------
17 .../oracle-instantclient-basic-11.2.0.4.ebuild | 199 ---------------------
18 5 files changed, 554 deletions(-)
19
20 diff --git a/dev-db/oracle-instantclient-basic/Manifest b/dev-db/oracle-instantclient-basic/Manifest
21 deleted file mode 100644
22 index 48135bfba5b..00000000000
23 --- a/dev-db/oracle-instantclient-basic/Manifest
24 +++ /dev/null
25 @@ -1,8 +0,0 @@
26 -DIST instantclient-basic-linux-11.2.0.3.0.zip 58502865 BLAKE2B da0f428447a4300dc64b9845d6f55c3dbeff38af06b1cb38b083f661a575a5c1749737ab389b7222f7be2a05ccdf367830642b1656505b078c0c3ca523159ae8 SHA512 c790f593e67bcc7c114a6287e1f064c03f292472e0a1a5e617a9f19017f06442f31502f66af8e6cfdf2235a18546104dc9aac164a3aa641db5728b66685c9302
27 -DIST instantclient-basic-linux-11.2.0.4.0.zip 58793148 BLAKE2B e0f92f119a5e8890a4507160179cd49af15ed14bd7c48480d3f685a3e4918a96e6444e75c6ea11d34681a6c66ff0e8011f44840de5f080e2dc3c03079361e4a1 SHA512 b333c9334e960617ac7cc68ad1c7b45f990d5c24c7a5bc8e51b3bc8ff6476acfb6a032521f75ba39327c71ee9676d1163b252066d52e97c1dfe9c092a92a62a0
28 -DIST instantclient-basic-linux.x64-11.2.0.3.0.zip 60331694 BLAKE2B 8d3e4946c04edd515f0d2495e8ce25b152ded0d903d58244d0d2a2b8bbaf263b0de67829a932f637193c08e96f4a532c131f50b6594009ca4ee1dc228d6a06d1 SHA512 708940b5ca5bc4e0617da2c4da61d0a85834e3e0731ac328a201954558a624162f71d342d674b08ec2cf076e8f639c230f88a73f6d9bfe8908b0e76805e617b7
29 -DIST instantclient-basic-linux.x64-11.2.0.4.0.zip 60704657 BLAKE2B 77735e81a0acf88221fefff38447536a81a32a6f5cb09dcd4526d43315be1fabb6882bb9e7a5703a4188ac9e112fba611f3e2c064a128eb66512935a1af62b33 SHA512 01ed32f1771bfa2f8ef1b81314843fb2b7b81582f33c07d86670c959bbb08355dc7cc8da586852bb353a3a914658d1e7828d6b5df884215de8d76881c956a989
30 -DIST instantclient-sdk-linux-11.2.0.3.0.zip 639306 BLAKE2B 80d0cac2061156fd4cfe0792a7bebcaca77ce855335c651472d0ee74cf87350ae4925d92ecd12407b285605fb0d533dcf2a6dfc46d8a0eaa6172461e9c96dc2f SHA512 fa0f98d4b2002982fab4438f734904e0ebfab777d601321423b454f9188c3b863e853fc5486c9958771f7ff8c9a544ce73e80750d745c3142872927ed1777ee1
31 -DIST instantclient-sdk-linux-11.2.0.4.0.zip 643080 BLAKE2B 9ea15b227d260f7e24b572be1238074dc3a3033a2ab6313d95b750ae48468bda018c52ac604664caa128396024c0ff4bcbc0d401b7900ae27f5f3877a4b44123 SHA512 09e14a0ed88182b685a00b6370da4379710c4179fcf2d5ebdb43684b7099484122f7f5181a80352464f03ae9d0150f5c2ee5f20ede98faa9073294324b9faec8
32 -DIST instantclient-sdk-linux.x64-11.2.0.3.0.zip 641586 BLAKE2B b3a3fa4c362031aa9d9e926f852e2bccc41dd12c8dac0a18b707f22130a8bfc1b04e12c13b7f94a845439d922884d9f83c149ac0d59af498a73f4c74730be715 SHA512 08b3fdc68e09f262549e2505867943aff5c3927d158569ea7e0bca4f958af725a46143d325dcf80a6d48d09f9240f147470439ac55ea848a27df3eeedd28f732
33 -DIST instantclient-sdk-linux.x64-11.2.0.4.0.zip 643089 BLAKE2B 710f0a2a81dde6cabdfb2e1472f40cb715d1e060377bec1d05d8b1c794ec05b023f4feca30603202487b52527723ed9d60f73371443ce76ad2781da9c1ed5412 SHA512 7198ddc7d8804353900e45b36de79659d75dee0197c4dd58bd4d69408e7131c95025223bbd1f39ef208269bff379daa6e05f4371af83a82b83997cafadc1d642
34
35 diff --git a/dev-db/oracle-instantclient-basic/files/11.2.0.3-makefile.patch b/dev-db/oracle-instantclient-basic/files/11.2.0.3-makefile.patch
36 deleted file mode 100644
37 index efcc2c6fac7..00000000000
38 --- a/dev-db/oracle-instantclient-basic/files/11.2.0.3-makefile.patch
39 +++ /dev/null
40 @@ -1,57 +0,0 @@
41 -Fake demo_xe.mk found in Oracle eXpress Edition,
42 -known by CPAN DBD::Oracle (bug#165834).
43 -This provides absolute paths for headers and libraries.
44 -
45 -Paranoia drops those REMOVE lines.
46 ---- sdk/demo/demo.mk.orig 2012-03-06 17:11:57.636990449 +0100
47 -+++ sdk/demo/demo.mk 2012-03-06 17:19:37.985324293 +0100
48 -@@ -28,8 +28,9 @@
49 - CC=/opt/SunProd/SUNWspro6.1/bin/CC
50 - cc=/opt/SunProd/SUNWspro6.1/bin/cc
51 -
52 --ICINCHOME=../
53 --ICLIBHOME=../../
54 -+LIBDIR=lib
55 -+ICINCHOME=$(ORACLE_HOME)/
56 -+ICLIBHOME=$(ORACLE_HOME)/$(LIBDIR)
57 - ICLIBPATH=-L$(ICLIBHOME)
58 - THREADLIBS=-lthread
59 - CCLIB=$(ICLIBPATH) -locci -lclntsh $(THREADLIBS)
60 -@@ -64,18 +64,18 @@
61 - all: clean buildoci $(OCCIDEMO) $(OCCIOBJDEMO)
62 -
63 - buildoci: $(CLNCACHE) $(LIBCLNT) $(CDEMOOBJS)
64 -- $(MKLINK) $(ICLIBHOME)libclntsh$(SO_EXT).11.1 $(ICLIBHOME)libclntsh$(SO_EXT)
65 -- $(MKLINK) $(ICLIBHOME)libocci$(SO_EXT).11.1 $(ICLIBHOME)libocci$(SO_EXT)
66 -+# $(MKLINK) $(ICLIBHOME)libclntsh$(SO_EXT).11.1 $(ICLIBHOME)libclntsh$(SO_EXT)
67 -+# $(MKLINK) $(ICLIBHOME)libocci$(SO_EXT).11.1 $(ICLIBHOME)libocci$(SO_EXT)
68 - $(CC) -o $(CDEMOEXE) $(LDFLAGS) $(CDEMOOBJS) $(CCLIB)
69 -- $(REMOVE) $(ICLIBHOME)libclntsh$(SO_EXT)
70 -- $(REMOVE) $(ICLIBHOME)libocci$(SO_EXT)
71 -+# $(REMOVE) $(ICLIBHOME)libclntsh$(SO_EXT)
72 -+# $(REMOVE) $(ICLIBHOME)libocci$(SO_EXT)
73 -
74 - buildocci: $(CLNCACHE) $(LIBCLNT) $(OBJS)
75 -- $(MKLINK) $(ICLIBHOME)libclntsh$(SO_EXT).11.1 $(ICLIBHOME)libclntsh$(SO_EXT)
76 -- $(MKLINK) $(ICLIBHOME)libocci$(SO_EXT).11.1 $(ICLIBHOME)libocci$(SO_EXT)
77 -+# $(MKLINK) $(ICLIBHOME)libclntsh$(SO_EXT).11.1 $(ICLIBHOME)libclntsh$(SO_EXT)
78 -+# $(MKLINK) $(ICLIBHOME)libocci$(SO_EXT).11.1 $(ICLIBHOME)libocci$(SO_EXT)
79 - $(CC) -o $(EXE) $(LDFLAGS) $(OBJS) $(CCLIB)
80 -- $(REMOVE) $(ICLIBHOME)libclntsh$(SO_EXT)
81 -- $(REMOVE) $(ICLIBHOME)libocci$(SO_EXT)
82 -+# $(REMOVE) $(ICLIBHOME)libclntsh$(SO_EXT)
83 -+# $(REMOVE) $(ICLIBHOME)libocci$(SO_EXT)
84 -
85 - $(OCCIDEMO):
86 - $(MAKE) -f $(MAKEFILE) buildocci OBJS=$@.o EXE=$@
87 -@@ -93,8 +93,8 @@
88 -
89 - cleancache:
90 - $(REMOVE) $(CACHEDIR)
91 -- $(REMOVE) $(ICLIBHOME)libclntsh$(SO_EXT)
92 -- $(REMOVE) $(ICLIBHOME)libocci$(SO_EXT)
93 -+# $(REMOVE) $(ICLIBHOME)libclntsh$(SO_EXT)
94 -+# $(REMOVE) $(ICLIBHOME)libocci$(SO_EXT)
95 -
96 - clean: $(CLNCACHE)
97 - $(REMOVE) cdemo81 cdemo81.o occidml occidml.o occiobj occiobj.o occiobjo* occiobjm* occiobj.h occiobjout.type
98
99 diff --git a/dev-db/oracle-instantclient-basic/files/tnsnames.ora.sample b/dev-db/oracle-instantclient-basic/files/tnsnames.ora.sample
100 deleted file mode 100644
101 index f0524f5993c..00000000000
102 --- a/dev-db/oracle-instantclient-basic/files/tnsnames.ora.sample
103 +++ /dev/null
104 @@ -1,93 +0,0 @@
105 -# This file contains the syntax information for
106 -# the entries to be put in any tnsnames.ora file
107 -# The entries in this file are need based.
108 -# There are no defaults for entries in this file
109 -# that Sqlnet/Net3 use that need to be overridden
110 -#
111 -# Typically you could have two tnsnames.ora files
112 -# in the system, one that is set for the entire system
113 -# and is called the system tnsnames.ora file, and a
114 -# second file that is used by each user locally so that
115 -# he can override the definitions dictated by the system
116 -# tnsnames.ora file.
117 -
118 -# The entries in tnsnames.ora are an alternative to using
119 -# the names server with the onames adapter.
120 -# They are a collection of aliases for the addresses that
121 -# the listener(s) is(are) listening for a database or
122 -# several databases.
123 -
124 -# The following is the general syntax for any entry in
125 -# a tnsnames.ora file. There could be several such entries
126 -# tailored to the user's needs.
127 -
128 -<alias>= [ (DESCRIPTION_LIST = # Optional depending on whether u have
129 - # one or more descriptions
130 - # If there is just one description, unnecessary ]
131 - (DESCRIPTION=
132 - [ (SDU=2048) ] # Optional, defaults to 2048
133 - # Can take values between 512 and 32K
134 - [ (ADDRESS_LIST= # Optional depending on whether u have
135 - # one or more addresses
136 - # If there is just one address, unnecessary ]
137 - (ADDRESS=
138 - [ (COMMUNITY=<community_name>) ]
139 - (PROTOCOL=tcp)
140 - (HOST=<hostname>)
141 - (PORT=<portnumber (1521 is a standard port used)>)
142 - )
143 - [ (ADDRESS=
144 - (PROTOCOL=ipc)
145 - (KEY=<ipckey (PNPKEY is a standard key used)>)
146 - )
147 - ]
148 - [ (ADDRESS=
149 - [ (COMMUNITY=<community_name>) ]
150 - (PROTOCOL=decnet)
151 - (NODE=<nodename>)
152 - (OBJECT=<objectname>)
153 - )
154 - ]
155 - ... # More addresses
156 - [ ) ] # Optional depending on whether ADDRESS_LIST is used or not
157 - [ (CONNECT_DATA=
158 - (SID=<oracle_sid>)
159 - [ (GLOBAL_NAME=<global_database_name>) ]
160 - )
161 - ]
162 - [ (SOURCE_ROUTE=yes) ]
163 - )
164 - (DESCRIPTION=
165 - [ (SDU=2048) ] # Optional, defaults to 2048
166 - # Can take values between 512 and 32K
167 - [ (ADDRESS_LIST= ] # Optional depending on whether u have more
168 - # than one address or not
169 - # If there is just one address, unnecessary
170 - (ADDRESS
171 - [ (COMMUNITY=<community_name>) ]
172 - (PROTOCOL=tcp)
173 - (HOST=<hostname>)
174 - (PORT=<portnumber (1521 is a standard port used)>)
175 - )
176 - [ (ADDRESS=
177 - (PROTOCOL=ipc)
178 - (KEY=<ipckey (PNPKEY is a standard key used)>)
179 - )
180 - ]
181 - ... # More addresses
182 - [ ) ] # Optional depending on whether ADDRESS_LIST
183 - # is being used
184 - [ (CONNECT_DATA=
185 - (SID=<oracle_sid>)
186 - [ (GLOBAL_NAME=<global_database_name>) ]
187 - )
188 - ]
189 - [ (SOURCE_ROUTE=yes) ]
190 - )
191 - [ (CONNECT_DATA=
192 - (SID=<oracle_sid>)
193 - [ (GLOBAL_NAME=<global_database_name>) ]
194 - )
195 - ]
196 - ... # More descriptions
197 - [ ) ] # Optional depending on whether DESCRIPTION_LIST is used or not
198
199 diff --git a/dev-db/oracle-instantclient-basic/oracle-instantclient-basic-11.2.0.3.ebuild b/dev-db/oracle-instantclient-basic/oracle-instantclient-basic-11.2.0.3.ebuild
200 deleted file mode 100644
201 index a63d14bc52b..00000000000
202 --- a/dev-db/oracle-instantclient-basic/oracle-instantclient-basic-11.2.0.3.ebuild
203 +++ /dev/null
204 @@ -1,197 +0,0 @@
205 -# Copyright 1999-2013 Gentoo Foundation
206 -# Distributed under the terms of the GNU General Public License v2
207 -
208 -EAPI="4"
209 -
210 -inherit eutils multilib
211 -
212 -MY_PLAT_x86="Linux x86"
213 -MY_BITS_x86=32
214 -MY_A_x86="${PN/oracle-/}-linux-${PV}.0.zip"
215 -MY_ASDK_x86="${MY_A_x86/basic/sdk}"
216 -
217 -MY_PLAT_amd64="Linux x86-64"
218 -MY_BITS_amd64=64
219 -MY_A_amd64="${PN/oracle-}-linux.x64-${PV}.0.zip"
220 -MY_ASDK_amd64="${MY_A_amd64/basic/sdk}"
221 -
222 -DESCRIPTION="Oracle 11g Instant Client with SDK"
223 -HOMEPAGE="http://www.oracle.com/technetwork/database/features/instant-client/index.html"
224 -SRC_URI="
225 - x86? ( ${MY_A_x86} ${MY_ASDK_x86} )
226 - amd64? ( ${MY_A_amd64} ${MY_ASDK_amd64} multilib? ( ${MY_A_x86} ) )
227 -"
228 -
229 -LICENSE="OTN"
230 -SLOT="0"
231 -KEYWORDS="amd64 x86"
232 -RESTRICT="fetch"
233 -IUSE="multilib"
234 -
235 -EMULTILIB_PKG="true"
236 -
237 -DEPEND="app-arch/unzip"
238 -RDEPEND="
239 - dev-libs/libaio
240 - multilib? ( >=dev-libs/libaio-0.3.109-r3 )
241 -"
242 -
243 -S="${WORKDIR}"
244 -
245 -QA_PREBUILT="usr/lib*/oracle/${PV}/client/lib*/lib*"
246 -
247 -set_my_abivars() {
248 - S="${WORKDIR}/${ABI}/instantclient_11_2"
249 -
250 - local abi=${ABI}
251 - [[ ${abi} == 'default' ]] && abi=${ARCH}
252 - MY_PLAT=MY_PLAT_${abi}; MY_PLAT=${!MY_PLAT} # platform name
253 - MY_BITS=MY_BITS_${abi}; MY_BITS=${!MY_BITS} # platform bitwidth
254 - MY_A=MY_A_${abi} ; MY_A=${!MY_A} # runtime distfile
255 - MY_ASDK=MY_ASDK_${abi}; MY_ASDK=${!MY_ASDK} # sdk distfile
256 -
257 - [[ -n ${MY_PLAT} ]]
258 -}
259 -
260 -oic_distfile_status() {
261 - if [[ -r ${DISTDIR}/${1} ]]; then
262 - echo "already here"
263 - else
264 - echo "still absent"
265 - fi
266 -}
267 -
268 -pkg_nofetch() {
269 - eerror "Please go to"
270 - eerror " ${HOMEPAGE%/*}/index-097480.html"
271 - eerror " and download"
272 - for ABI in $(get_install_abis)
273 - do
274 - set_my_abivars || continue
275 - eerror "Instant Client for ${MY_PLAT}"
276 - eerror " Basic: ($(oic_distfile_status ${MY_A})) ${MY_A}"
277 - if is_final_abi; then
278 - eerror " SDK: ($(oic_distfile_status ${MY_ASDK})) ${MY_ASDK}"
279 - fi
280 - done
281 - eerror "After downloading these files (for *all* shown architectures), put them in:"
282 - eerror " ${DISTDIR}/"
283 -}
284 -
285 -src_unpack() {
286 - for ABI in $(get_install_abis)
287 - do
288 - set_my_abivars || continue
289 - mkdir "${WORKDIR}"/${ABI} || die
290 - cd "${WORKDIR}"/${ABI} || die
291 - unpack ${MY_A}
292 - if is_final_abi; then
293 - unpack ${MY_ASDK}
294 - fi
295 - done
296 -}
297 -
298 -src_prepare() {
299 - # need to patch for the final ABI only
300 - set_my_abivars || die "${ABI} ABI not supported!"
301 - cd "${S}" || die
302 - epatch "${FILESDIR}"/11.2.0.3-makefile.patch
303 -}
304 -
305 -src_install() {
306 - # all binaries go here
307 - local oracle_home=/usr/$(get_libdir)/oracle/${PV}/client
308 - into "${oracle_home}"
309 -
310 - local ldpath=
311 - for ABI in $(get_install_abis) # last iteration is final ABI
312 - do
313 - if ! set_my_abivars; then
314 - elog "Skipping unsupported ABI ${ABI}."
315 - continue
316 - fi
317 - einfo "Installing runtime for ${MY_PLAT} ..."
318 -
319 - cd "${S}" || die
320 -
321 - # shared libraries
322 - dolib.so lib*$(get_libname)*
323 -
324 - # ensure to be linkable
325 - [[ -e libocci$(get_libname) ]] ||
326 - dosym libocci$(get_libname 11.1) \
327 - "${oracle_home}"/$(get_libdir)/libocci$(get_libname)
328 - [[ -e libclntsh$(get_libname) ]] ||
329 - dosym libclntsh$(get_libname 11.1) \
330 - "${oracle_home}"/$(get_libdir)/libclntsh$(get_libname)
331 -
332 - # java archives
333 - insinto "${oracle_home}"/$(get_libdir)
334 - doins *.jar
335 -
336 - # runtime library path
337 - ldpath+=${ldpath:+:}${oracle_home}/$(get_libdir)
338 -
339 - eend $?
340 - done
341 -
342 - # ensure ORACLE_HOME/lib exists
343 - [[ -e ${ED}${oracle_home}/lib ]] ||
344 - dosym $(get_libdir) "${oracle_home}"/lib
345 -
346 - einfo "Installing SDK ..."
347 - cd "${S}"/sdk || die
348 -
349 - # SDK makefile, for #165834
350 - # As we change the relative filesystem layout compared
351 - # to vanilla instantclient.zip content, it feels easier
352 - # to fake the layout found in Oracle eXpress Edition.
353 - # Both layouts are known to DBD::Oracle (cpan).
354 - insinto "${oracle_home}"/rdbms/demo
355 - newins demo/demo.mk demo_xe.mk
356 -
357 - # Remove ldap.h, #299562
358 - rm include/ldap.h || die
359 - # DBD::Oracle needs rdbms/public as real directory
360 - insinto "${oracle_home}"/rdbms/public
361 - doins include/*.h
362 - dosym rdbms/public "${oracle_home}"/include
363 - # ruby-oci8 expects the headers here
364 - dosym "${oracle_home}"/rdbms/public /usr/include/oracle/${PV}/client
365 -
366 - dodoc demo/*
367 -
368 - eend $?
369 -
370 - # create path for tnsnames.ora
371 - insinto /etc/oracle
372 - doins "${FILESDIR}"/tnsnames.ora.sample
373 -
374 - # Add OCI libs to library path
375 - {
376 - echo "ORACLE_HOME=${EPREFIX}${oracle_home}"
377 - echo "LDPATH=${ldpath}"
378 -# who does need this?
379 -# echo "C_INCLUDE_PATH=${oracle_home}/include"
380 - echo "TNS_ADMIN=/etc/oracle/"
381 - } > "${T}"/50oracle-instantclient-basic
382 - doenvd "${T}"/50oracle-instantclient-basic
383 -}
384 -
385 -pkg_postinst() {
386 - elog "${P} does not provide an sqlnet.ora"
387 - elog "configuration file, redirecting oracle diagnostics for database-"
388 - elog "and network-issues into ~USER/oradiag_USER/ instead."
389 - elog "It should be safe to ignore this message in sqlnet.log there:"
390 - elog " Directory does not exist for read/write [ORACLE_HOME/client/log] []"
391 - elog "See https://bugs.gentoo.org/show_bug.cgi?id=465252 for reference."
392 - elog "If you want to directly analyse low-level debug info or don't want"
393 - elog "to see it at all, so you really need an sqlnet.ora file, please"
394 - elog "consult http://search.oracle.com/search/search?q=sqlnet.ora"
395 - elog ""
396 - elog "TNS_ADMIN has been set to ${EROOT}etc/oracle by default,"
397 - elog "put your tnsnames.ora there or configure TNS_ADMIN"
398 - elog "to point to your user specific configuration."
399 - ewarn "Please re-source your shell settings for ORACLE_HOME"
400 - ewarn " changes, such as: source /etc/profile"
401 -}
402
403 diff --git a/dev-db/oracle-instantclient-basic/oracle-instantclient-basic-11.2.0.4.ebuild b/dev-db/oracle-instantclient-basic/oracle-instantclient-basic-11.2.0.4.ebuild
404 deleted file mode 100644
405 index 0dfbc639543..00000000000
406 --- a/dev-db/oracle-instantclient-basic/oracle-instantclient-basic-11.2.0.4.ebuild
407 +++ /dev/null
408 @@ -1,199 +0,0 @@
409 -# Copyright 1999-2015 Gentoo Foundation
410 -# Distributed under the terms of the GNU General Public License v2
411 -
412 -EAPI="4"
413 -
414 -inherit eutils multilib-minimal
415 -
416 -MY_PLAT_x86="Linux x86"
417 -MY_BITS_x86=32
418 -MY_A_x86="${PN/oracle-/}-linux-${PV}.0.zip"
419 -MY_ASDK_x86="${MY_A_x86/basic/sdk}"
420 -
421 -MY_PLAT_amd64="Linux x86-64"
422 -MY_BITS_amd64=64
423 -MY_A_amd64="${PN/oracle-}-linux.x64-${PV}.0.zip"
424 -MY_ASDK_amd64="${MY_A_amd64/basic/sdk}"
425 -
426 -DESCRIPTION="Oracle 11g Instant Client with SDK"
427 -HOMEPAGE="http://www.oracle.com/technetwork/database/features/instant-client/index.html"
428 -SRC_URI="
429 - abi_x86_32? ( ${MY_A_x86} !abi_x86_64? ( ${MY_ASDK_x86} ) )
430 - abi_x86_64? ( ${MY_A_amd64} ${MY_ASDK_amd64} )
431 -"
432 -
433 -LICENSE="OTN"
434 -SLOT="0"
435 -KEYWORDS="amd64 x86"
436 -RESTRICT="fetch splitdebug"
437 -IUSE=""
438 -
439 -DEPEND="app-arch/unzip"
440 -RDEPEND=">=dev-libs/libaio-0.3.109-r5[${MULTILIB_USEDEP}]"
441 -
442 -S="${WORKDIR}"
443 -
444 -QA_PREBUILT="usr/lib*/oracle/${PV}/client/lib*/lib*"
445 -
446 -set_my_abivars() {
447 - S="${WORKDIR}/${ABI}/instantclient_11_2"
448 -
449 - local abi=${ABI}
450 - [[ ${abi} == 'default' ]] && abi=${ARCH}
451 - MY_PLAT=MY_PLAT_${abi}; MY_PLAT=${!MY_PLAT} # platform name
452 - MY_BITS=MY_BITS_${abi}; MY_BITS=${!MY_BITS} # platform bitwidth
453 - MY_A=MY_A_${abi} ; MY_A=${!MY_A} # runtime distfile
454 - MY_ASDK=MY_ASDK_${abi}; MY_ASDK=${!MY_ASDK} # sdk distfile
455 -
456 - [[ -n ${MY_PLAT} ]]
457 -}
458 -
459 -oic_distfile_status() {
460 - if [[ -r ${DISTDIR}/${1} ]]; then
461 - echo "already here"
462 - else
463 - echo "still absent"
464 - fi
465 -}
466 -
467 -pkg_nofetch() {
468 - eerror "Please go to"
469 - eerror " ${HOMEPAGE%/*}/index-097480.html"
470 - eerror " and download"
471 - local ABI
472 - for ABI in $(multilib_get_enabled_abis)
473 - do
474 - set_my_abivars || continue
475 - eerror "Instant Client for ${MY_PLAT}"
476 - eerror " Basic: ($(oic_distfile_status ${MY_A})) ${MY_A}"
477 - multilib_is_native_abi &&
478 - eerror " SDK: ($(oic_distfile_status ${MY_ASDK})) ${MY_ASDK}"
479 - done
480 - eerror "After downloading these files (for *all* shown architectures), put them in:"
481 - eerror " ${DISTDIR}/"
482 -}
483 -
484 -src_unpack() {
485 - local ABI
486 - for ABI in $(multilib_get_enabled_abis)
487 - do
488 - set_my_abivars || continue
489 - mkdir "${WORKDIR}"/${ABI} || die
490 - cd "${WORKDIR}"/${ABI} || die
491 - unpack ${MY_A}
492 - multilib_is_native_abi &&
493 - unpack ${MY_ASDK}
494 - done
495 -}
496 -
497 -src_prepare() {
498 - local ABI
499 - for ABI in $(multilib_get_enabled_abis)
500 - do : # need to patch for the final ABI only
501 - done
502 - set_my_abivars || die "${ABI} ABI not supported!"
503 - cd "${S}" || die
504 - epatch "${FILESDIR}"/11.2.0.3-makefile.patch
505 -}
506 -
507 -# suppress configure&compile messages from multilib-minimal
508 -src_configure() { :; }
509 -src_compile() { :; }
510 -
511 -src_install() {
512 - # all binaries go here
513 - local oracle_home=/usr/$(get_libdir)/oracle/${PV}/client
514 - into "${oracle_home}"
515 -
516 - local ldpath= ABI
517 - for ABI in $(multilib_get_enabled_abis) # last iteration is final ABI
518 - do
519 - if ! set_my_abivars; then
520 - elog "Skipping unsupported ABI ${ABI}."
521 - continue
522 - fi
523 - einfo "Installing runtime for ${MY_PLAT} ..."
524 -
525 - cd "${S}" || die
526 -
527 - # shared libraries
528 - dolib.so lib*$(get_libname)*
529 -
530 - # ensure to be linkable
531 - [[ -e libocci$(get_libname) ]] ||
532 - dosym libocci$(get_libname 11.1) \
533 - "${oracle_home}"/$(get_libdir)/libocci$(get_libname)
534 - [[ -e libclntsh$(get_libname) ]] ||
535 - dosym libclntsh$(get_libname 11.1) \
536 - "${oracle_home}"/$(get_libdir)/libclntsh$(get_libname)
537 -
538 - # java archives
539 - insinto "${oracle_home}"/$(get_libdir)
540 - doins *.jar
541 -
542 - # runtime library path
543 - ldpath+=${ldpath:+:}${oracle_home}/$(get_libdir)
544 -
545 - eend $?
546 - done
547 -
548 - # ensure ORACLE_HOME/lib exists
549 - [[ -e ${ED}${oracle_home}/lib ]] ||
550 - dosym $(get_libdir) "${oracle_home}"/lib
551 -
552 - einfo "Installing SDK ..."
553 - cd "${S}"/sdk || die
554 -
555 - # SDK makefile, for #165834
556 - # As we change the relative filesystem layout compared
557 - # to vanilla instantclient.zip content, it feels easier
558 - # to fake the layout found in Oracle eXpress Edition.
559 - # Both layouts are known to DBD::Oracle (cpan).
560 - insinto "${oracle_home}"/rdbms/demo
561 - newins demo/demo.mk demo_xe.mk
562 -
563 - # Remove ldap.h, #299562
564 - rm include/ldap.h || die
565 - # DBD::Oracle needs rdbms/public as real directory
566 - insinto "${oracle_home}"/rdbms/public
567 - doins include/*.h
568 - dosym rdbms/public "${oracle_home}"/include
569 - # ruby-oci8 expects the headers here
570 - dosym "${oracle_home}"/rdbms/public /usr/include/oracle/${PV}/client
571 -
572 - dodoc demo/*
573 -
574 - eend $?
575 -
576 - # create path for tnsnames.ora
577 - insinto /etc/oracle
578 - doins "${FILESDIR}"/tnsnames.ora.sample
579 -
580 - # Add OCI libs to library path
581 - {
582 - echo "ORACLE_HOME=${EPREFIX}${oracle_home}"
583 - echo "LDPATH=${ldpath}"
584 -# who does need this?
585 -# echo "C_INCLUDE_PATH=${oracle_home}/include"
586 - echo "TNS_ADMIN=/etc/oracle/"
587 - } > "${T}"/50oracle-instantclient-basic
588 - doenvd "${T}"/50oracle-instantclient-basic
589 -}
590 -
591 -pkg_postinst() {
592 - elog "${P} does not provide an sqlnet.ora"
593 - elog "configuration file, redirecting oracle diagnostics for database-"
594 - elog "and network-issues into ~USER/oradiag_USER/ instead."
595 - elog "It should be safe to ignore this message in sqlnet.log there:"
596 - elog " Directory does not exist for read/write [ORACLE_HOME/client/log] []"
597 - elog "See https://bugs.gentoo.org/show_bug.cgi?id=465252 for reference."
598 - elog "If you want to directly analyse low-level debug info or don't want"
599 - elog "to see it at all, so you really need an sqlnet.ora file, please"
600 - elog "consult http://search.oracle.com/search/search?q=sqlnet.ora"
601 - elog ""
602 - elog "TNS_ADMIN has been set to ${EROOT}etc/oracle by default,"
603 - elog "put your tnsnames.ora there or configure TNS_ADMIN"
604 - elog "to point to your user specific configuration."
605 - ewarn "Please re-source your shell settings for ORACLE_HOME"
606 - ewarn " changes, such as: source /etc/profile"
607 -}