Use non-deprecated APIs for dynloader/darwin.c

From: Chris Campbell <chris(at)bignerdranch(dot)com>
To: pgsql-patches(at)postgresql(dot)org
Subject: Use non-deprecated APIs for dynloader/darwin.c
Date: 2006-10-08 01:04:26
Message-ID: A9076D86-13E1-415C-8DB6-858276D55E15@bignerdranch.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-patches

Re: Darwin stuff is getting deprecated

http://archives.postgresql.org/pgsql-hackers/2006-09/msg02238.php

Mac OS X has included dlopen() and friends etc since Mac OS X 10.3.
From the dlopen(3) man page:

Mac OS X 10.3 incorporated the dlcompat package written by
Jorge Acereda
<jacereda(at)users(dot)sourceforge(dot)net> and Peter O'Gorman <ogor-
man(at)users(dot)sourceforge(dot)net>.

In Mac OS X 10.4, dlopen was rewritten to be a native part of
dyld.

The attached patch switches to using those APIs in src/backend/port/
dynloader/darwin.c (and passes "make check").

(1) This change requires Mac OS X 10.3 and later. Do we currently
support PostgreSQL on older versions of Mac OS X?

(2) The pg_* functions are such trivial wrappers for the OS's APIs --
should they be turned into macros in dynloader/darwin.h and we can
just delete the .c file?

(3) If we need to continue supporting Mac OS X 10.2 and earlier, I
guess we'll need to add a configure test for the presence of dlopen
()? Is that a check that should only be run on Darwin, or all platforms?

Thanks!

- Chris

Attachment Content-Type Size
dynloader.patch application/octet-stream 2.7 KB

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message David Fetter 2006-10-08 01:22:19 Re: pg_dump exclusion switches and functions/types
Previous Message Sergey E. Koposov 2006-10-07 23:23:16 Re: FailedAssertion() in 8.2beta1

Browse pgsql-patches by date

  From Date Subject
Next Message Tom Lane 2006-10-08 18:29:25 Re: Use non-deprecated APIs for dynloader/darwin.c
Previous Message Chris Campbell 2006-10-07 23:13:26 Use dns_sd.h for Bonjour