diff options
Diffstat (limited to 'Configurations/50-cppbuilder.conf')
-rw-r--r-- | Configurations/50-cppbuilder.conf | 30 |
1 files changed, 21 insertions, 9 deletions
diff --git a/Configurations/50-cppbuilder.conf b/Configurations/50-cppbuilder.conf index 334672e1a3..cb293afcb9 100644 --- a/Configurations/50-cppbuilder.conf +++ b/Configurations/50-cppbuilder.conf @@ -3,34 +3,46 @@ my %targets = ( inherit_from => [ "BASE_Windows" ], sys_id => "WIN32", bn_ops => "BN_LLONG", - dso_scheme => "win32", thread_scheme => "winthreads", cc => "bcc32c", defines => add("WIN32_LEAN_AND_MEAN", "OPENSSL_SYS_WIN32", "L_ENDIAN", "DSO_WIN32", "_stricmp=stricmp", "_strnicmp=strnicmp", "_malloca=malloc", "_freea=free", "_setmode=setmode"), - cflags => picker(default => "-q -c -tWC -tWM", + cflags => picker(default => add("-q -c", + threads("-tM"), + shared("-tR")), debug => "-Od -v -vi- -D_DEBUG", release => "-O2"), + bin_cflags => "-tWC", + lib_cflags => shared("-tWD -D_WINDLL -D_DLL"), coutflag => "-o", LD => "ilink32", - bin_lflags => combine(picker(default => "-ap -Tpe -x -Gn -q", - debug => '-j"$(BDS)\lib\win32c\debug" ' . - '-L"$(BDS)\lib\win32c\debug"', - release => '-j"$(BDS)\lib\win32c\release" ' . - '-L"$(BDS)\lib\win32c\release"'), - "wildargs.obj"), + LDFLAGS => picker(default => "-ap -x -Gn -q", + debug => '-j"$(BDS)\lib\win32c\debug" ' . + '-L"$(BDS)\lib\win32c\debug" -v', + release => '-j"$(BDS)\lib\win32c\release" ' . + '-L"$(BDS)\lib\win32c\release"'), + bin_lflags => "-Tpe c0x32.obj wildargs.obj", ldoutflag => ",", ldpostoutflag => ",,", ld_resp_delim => " +\n", ex_libs => add(sub { - my @ex_libs = ("cw32mt.lib", "import32.lib"); + my @ex_libs = ("import32.lib", + ($disabled{shared} + ? ($disabled{threads} ? "cw32.lib" : "cw32mt.lib") + : ($disabled{threads} ? "cw32i.lib" : "cw32mti.lib"))); push @ex_libs, ("crypt32.lib", "ws2_32.lib") unless $disabled{sock}; return join(" ", @ex_libs); }), AR => "tlib", ARFLAGS => "/P256 /N /u", ar_resp_delim => " &\n", + shared_target => "win-shared", + shared_ldflag => "-Tpd c0d32.obj", + dso_lflags => "-Tpd c0d32.obj", + lddefflag => ",", + ld_implib_rule => 'implib $< $**', + dso_scheme => "win32", } ); |