diff options
| author | Eugene Grosbein <eugen@FreeBSD.org> | 2017-05-18 15:56:22 +0000 |
|---|---|---|
| committer | Eugene Grosbein <eugen@FreeBSD.org> | 2017-05-18 15:56:22 +0000 |
| commit | cf5ea85f4825e4655df8a5ab24416ee56df4a347 (patch) | |
| tree | 5ae949d5669b7e7b894d768593dd9017530d33c2 /databases/oracle8-client/files | |
| parent | textproc/rubygem-cld3: Update to version 3.1.2 (diff) | |
Re-add databases/oracle8-client removed with r435735 as there is user demand for it.
The only way for native FreeBSD binaries to connect to modern Oracle databases is
usage of OCI8 libraries supplied by the port. Additional changes:
- integrate patch supplied with PR 211107;
- assign maintainership to the submitter;
- supply additional MASTER_SITE;
- dead WWW link replaced with working copy of old one;
- bump PORTREVISION.
PR: 211107
Approved by: vsevolod (mentor)
Diffstat (limited to 'databases/oracle8-client/files')
3 files changed, 70 insertions, 0 deletions
diff --git a/databases/oracle8-client/files/patch-freebsd-Makefile b/databases/oracle8-client/files/patch-freebsd-Makefile new file mode 100644 index 000000000000..a93a550c53d9 --- /dev/null +++ b/databases/oracle8-client/files/patch-freebsd-Makefile @@ -0,0 +1,10 @@ +--- freebsd/Makefile.orig 2007-11-15 10:50:25.000000000 +0600 ++++ freebsd/Makefile 2007-11-15 10:50:10.000000000 +0600 +@@ -5,6 +5,7 @@ + NO_PIC= yes + NO_OBJ= yes + NO_PROFILE= yes ++NO_WERROR= yes + + NOPIC= yes + NOOBJ= yes diff --git a/databases/oracle8-client/files/patch-freebsd-oci8stub.c b/databases/oracle8-client/files/patch-freebsd-oci8stub.c new file mode 100644 index 000000000000..471e4ea0b4ac --- /dev/null +++ b/databases/oracle8-client/files/patch-freebsd-oci8stub.c @@ -0,0 +1,53 @@ +--- freebsd/oci8stub.c.orig 2007-11-11 12:25:01.000000000 +0600 ++++ freebsd/oci8stub.c 2007-11-28 05:03:13.000000000 +0600 +@@ -2,6 +2,7 @@ + #include <sys/param.h> + #include <sys/stat.h> + #include <sys/resource.h> ++#include <sys/socket.h> + #include <assert.h> + #include <errno.h> + #include <dlfcn.h> +@@ -119,6 +120,14 @@ + + int __l_sigprocmask(int how, const sigset_t *set, sigset_t *oldset); + ++struct l_sockaddr { ++ u_int16_t sa_family; ++ char sa_data[14]; ++}; ++ ++int __l_connect(int s, const struct l_sockaddr *l_sa, socklen_t addrlen); ++int __l_sigaction(int signum, const struct sigaction *l_act, struct sigaction *oldact); ++ + #ifdef stdin + #undef stdin + #undef stdout +@@ -528,3 +537,27 @@ __l_sigprocmask(int l_how, const sigset_ + + return sigprocmask(how, set, oldset); + } ++ ++int ++__l_connect(int s, const struct l_sockaddr *l_sa, socklen_t addrlen) ++{ ++ struct sockaddr sa; ++ ++ memcpy(sa.sa_data, l_sa->sa_data, sizeof(sa.sa_data)); ++ sa.sa_len = addrlen; ++ sa.sa_family = l_sa->sa_family; ++ return connect(s, &sa, addrlen); ++} ++ ++int ++__l_sigaction(int signum, const struct sigaction *l_act, struct sigaction *oldact) ++{ ++ struct sigaction act; ++ ++ act.sa_handler = l_act->sa_handler; ++ act.sa_flags = l_act->sa_flags & (SA_ONSTACK | SA_RESTART | SA_RESETHAND | ++ SA_NOCLDSTOP | SA_NODEFER | SA_NOCLDWAIT | SA_SIGINFO); ++ act.sa_mask = l_act->sa_mask; ++ return sigaction(signum, &act, oldact); ++} ++ diff --git a/databases/oracle8-client/files/patch-freebsd-redefine-syms.lst b/databases/oracle8-client/files/patch-freebsd-redefine-syms.lst new file mode 100644 index 000000000000..434bea21ebbd --- /dev/null +++ b/databases/oracle8-client/files/patch-freebsd-redefine-syms.lst @@ -0,0 +1,7 @@ +--- freebsd/redefine-syms.lst.orig 2005-06-20 23:23:35.000000000 +0700 ++++ freebsd/redefine-syms.lst 2007-11-28 04:48:03.000000000 +0600 +@@ -1,2 +1,4 @@ ++connect __l_connect + lseek __l_lseek + sigprocmask __l_sigprocmask ++sigaction __l_sigaction |
