Re: static or dynamic libpgport

Поиск
Список
Период
Сортировка
От Andrew Dunstan
Тема Re: static or dynamic libpgport
Дата
Msg-id 4EE396C6.50102@dunslane.net
обсуждение исходный текст
Ответ на Re: static or dynamic libpgport  (Bruce Momjian <bruce@momjian.us>)
Ответы Re: static or dynamic libpgport  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers

On 12/09/2011 06:27 PM, Bruce Momjian wrote:
>> In the Fedora world, a static lib would go in postgresql-devel, but a
>> dynamic lib would go in postgresql-libs, which is also where libpq is
>> shipped.
> I am not against shipping a dynamic libpgport, but I will just point out
> that this was never intended or anticipated.  Are there any symbols in
> there that might conflict with other software?




Possibly. Below is a list of symbols from a recent build. The other 
thing is we'd need to turn on flags that make the object suitable for a 
dynamic library (e.g. -fpic). I'm not sure if that has any significant 
impact - probably not or else people would avoid using them far more.

I think we should deal with this. Just Peter's and Steve's responses 
upthread indicate a demand, and I came into this because a customer 
encountered enormous difficulty in doing an out of tree build of a well 
known piece of support software, so this is clearly a pain point. If 
we're not going to do it, we should probably think about adjusting 
people's expectations.
   [andrew@diego port]$ nm libpgport.a | grep ' T '   00000000 T strlcat   00000000 T strlcpy   00000000 T getpeereid
00000000T pg_get_encoding_from_locale   00000000 T pgfnames   000001a0 T pgfnames_cleanup   000001e0 T rmtree
00000240T find_my_exec   000005f0 T find_other_exec   00000500 T pclose_check   00000760 T set_pglocale_pgservice
00000000T inet_net_ntop   00000030 T pg_set_block   00000000 T pg_set_noblock   00000280 T canonicalize_path   00000110
Tfirst_dir_separator   00000140 T first_path_var_separator   00000800 T get_doc_path   00000720 T get_etc_path
00000860T get_home_path   00000820 T get_html_path   00000740 T get_include_path   00000780 T get_includeserver_path
000007a0T get_lib_path   000007e0 T get_locale_path   00000840 T get_man_path   000008e0 T get_parent_directory
00000760T get_pkginclude_path   000007c0 T get_pkglib_path   00000690 T get_progname   00000700 T get_share_path
000001b0T join_path_components   00000170 T last_dir_separator   000001a0 T make_native_path   00000560 T
path_contains_parent_reference  00000630 T path_is_prefix_of_path   00000610 T path_is_relative_and_below_cwd
00000000T pg_check_dir   00000000 T pg_mkdir_p   00000000 T pg_usleep   00000330 T pg_ascii_tolower   00000310 T
pg_ascii_toupper  00000000 T pg_strcasecmp   00000100 T pg_strncasecmp   00000290 T pg_tolower   00000210 T pg_toupper
000000d0 T pg_qsort   000000f0 T qsort_arg   00000000 T simple_prompt   00000010 T pqGetpwuid   00000000 T pqStrerror
 


cheers

andrew


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Peter Eisentraut
Дата:
Сообщение: Re: plpython SPI cursors
Следующее
От: Greg Smith
Дата:
Сообщение: Re: pg_cancel_backend by non-superuser