summaryrefslogtreecommitdiff
path: root/rtl
diff options
context:
space:
mode:
authorpierre <pierre@3ad0048d-3df7-0310-abae-a5850022a9f2>2012-03-22 09:02:07 +0000
committerpierre <pierre@3ad0048d-3df7-0310-abae-a5850022a9f2>2012-03-22 09:02:07 +0000
commit3337760c2dd73677ad22dfec9ba5ea50da186e30 (patch)
treefcdd3faf05c482bba04bfa9a8c09f8e084ffcadd /rtl
parent4a40f22913955acb4edc4050954a9a7025b44562 (diff)
downloadfpc-3337760c2dd73677ad22dfec9ba5ea50da186e30.tar.gz
* Fix wide string shared library loading by adding 'lib' prefix if needed
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@20568 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'rtl')
-rw-r--r--rtl/unix/cwstring.pp6
1 files changed, 5 insertions, 1 deletions
diff --git a/rtl/unix/cwstring.pp b/rtl/unix/cwstring.pp
index 12eeba9371..2af2428776 100644
--- a/rtl/unix/cwstring.pp
+++ b/rtl/unix/cwstring.pp
@@ -47,14 +47,18 @@ Uses
Const
{$ifndef useiconv}
libiconvname='c'; // is in libc under Linux.
+ libprefix='lib';
{$else}
{$ifdef haiku}
libiconvname='textencoding'; // is in libtextencoding under Haiku
+ libprefix='lib';
{$else}
{$ifdef darwin}
libiconvname='libiconv';
+ libprefix='';
{$else}
libiconvname='iconv';
+ libprefix='lib';
{$endif}
{$endif}
{$endif}
@@ -978,7 +982,7 @@ initialization
setlocale(LC_ALL,'');
{ load iconvctl function }
- iconvlib:=LoadLibrary(libiconvname+'.'+SharedSuffix);
+ iconvlib:=LoadLibrary(libprefix+libiconvname+'.'+SharedSuffix);
if iconvlib<>0 then
pointer(iconvctl):=GetProcAddress(iconvlib,iconvctlname);