Home | History | Annotate | Line # | Download | only in Configurations
50-cppbuilder.conf revision 1.1.1.1
      1 my %targets = (
      2     "BC-32" => {
      3         inherit_from     => [ "BASE_Windows" ],
      4         sys_id           => "WIN32",
      5         bn_ops           => "BN_LLONG",
      6         thread_scheme    => "winthreads",
      7         cc               => "bcc32c",
      8         CPP              => "cpp32 -oCON -Sc -Sr",
      9         defines          => add("WIN32_LEAN_AND_MEAN", "OPENSSL_SYS_WIN32",
     10                                 "L_ENDIAN", "DSO_WIN32", "_stricmp=stricmp",
     11                                 "_strnicmp=strnicmp", "_malloca=malloc",
     12                                 "_freea=free", "_setmode=setmode"),
     13         cflags           => picker(default => add("-q -c",
     14                                                   threads("-tM"),
     15                                                   shared("-tR")),
     16                                    debug   => "-Od -v -vi- -D_DEBUG",
     17                                    release => "-O2"),
     18         bin_cflags       => "-tWC",
     19         lib_cflags       => shared("-tWD -D_WINDLL -D_DLL"),
     20         coutflag         => "-o",
     21 
     22         # -Sx isn't documented, but 'cpp32 -H -S' explains it:
     23         #
     24         # -Sx     Omit preprocessed text in output
     25         makedepcmd       => "cpp32 -oCON -Sx -Hp",
     26         makedep_scheme   => "embarcadero",
     27 
     28         LD               => "ilink32",
     29         LDFLAGS          => picker(default => "-x -Gn -q -w-dup",
     30                                    debug   => '-j"$(BDS)\lib\win32c\debug" ' .
     31                                               '-L"$(BDS)\lib\win32c\debug" -v',
     32                                    release => '-j"$(BDS)\lib\win32c\release" ' .
     33                                               '-L"$(BDS)\lib\win32c\release"'),
     34         bin_lflags       => "-ap -Tpe c0x32.obj wildargs.obj",
     35         ldoutflag        => ",",
     36         ldpostoutflag    => ",,",
     37         ld_resp_delim    => " +\n",
     38         ex_libs          => add(sub {
     39             my @ex_libs = ("import32.lib",
     40                            ($disabled{shared}
     41                             ? ($disabled{threads} ? "cw32.lib" : "cw32mt.lib")
     42                             : ($disabled{threads} ? "cw32i.lib" : "cw32mti.lib")));
     43             push @ex_libs, "ws2_32.lib" unless $disabled{sock};
     44             return join(" ", @ex_libs);
     45         }),
     46         AR               => "tlib",
     47         ARFLAGS          => "/P256 /N /u",
     48         ar_resp_delim    => " &\n",
     49         RC               => "brcc32",
     50         RCFLAGS          => '-i"$(BDS)\include\windows\sdk"',
     51         rcoutflag        => "-fo",
     52         shared_target    => "win-shared",
     53         shared_ldflag    => "-aa -Tpd c0d32.obj",
     54         lddefflag        => ",",
     55         ldresflag        => ",",
     56         ld_implib_rule   => 'implib -a $< $**',
     57         dso_scheme       => "win32",
     58         shared_defflag   => '',
     59         perl_platform    => 'Windows::cppbuilder',
     60         uplink_arch      => 'common',
     61     },
     62     "BC-64" => {
     63         inherit_from     => [ "BASE_Windows" ],
     64         sys_id           => "WIN64",
     65         bn_ops           => "BN_LLONG",
     66         thread_scheme    => "winthreads",
     67         cc               => "bcc64",
     68         CPP              => "cpp64 -oCON -Sc -Sr",
     69         defines          => add("WIN32_LEAN_AND_MEAN", "OPENSSL_SYS_WIN64",
     70                                 "L_ENDIAN", "DSO_WIN32", "_stricmp=stricmp",
     71                                 "_strnicmp=strnicmp", "_setmode=setmode"),
     72         cflags           => picker(default => add("-q -c",
     73                                                   threads("-tM"),
     74                                                   shared("-tR")),
     75                                    debug   => "-Od -v -vi- -D_DEBUG",
     76                                    release => "-O2"),
     77         bin_cflags       => "-tWC",
     78         lib_cflags       => shared("-tWD -D_WINDLL -D_DLL"),
     79         coutflag         => "-o",
     80 
     81         # -Sx isn't documented, but 'cpp64 -H -S' explains it:
     82         #
     83         # -Sx     Omit preprocessed text in output
     84         makedepcmd       => "cpp64 -oCON -Sx -Hp",
     85         makedep_scheme   => "embarcadero",
     86 
     87         LD               => "ilink64",
     88         LDFLAGS          => picker(default => "-x -Gn -q -w-dup",
     89                                    debug   => '-j"$(BDS)\lib\win64\debug" ' .
     90                                               '-L"$(BDS)\lib\win64\debug" -v',
     91                                    release => '-j"$(BDS)\lib\win64\release" ' .
     92                                               '-L"$(BDS)\lib\win64\release"'),
     93         bin_lflags       => "-ap -Tpe c0x64.o wildargs.o",
     94         ldoutflag        => ",",
     95         ldpostoutflag    => ",,",
     96         ld_resp_delim    => " +\n",
     97         ex_libs          => add(sub {
     98             my @ex_libs = ("import64.a",
     99                            ($disabled{shared}
    100                             ? ($disabled{threads} ? "cw64.a" : "cw64mt.a")
    101                             : ($disabled{threads} ? "cw64i.a" : "cw64mti.a")));
    102             push @ex_libs, "ws2_32.a" unless $disabled{sock};
    103             return join(" ", @ex_libs);
    104         }),
    105         AR               => "tlib",
    106         ARFLAGS          => "/P256 /N /u",
    107         ar_resp_delim    => " &\n",
    108         RC               => "brcc32",
    109         RCFLAGS          => '-i"$(BDS)\include\windows\sdk"',
    110         rcoutflag        => "-fo",
    111         shared_target    => "win-shared",
    112         shared_ldflag    => "-aa -Tpd c0d64.o",
    113         lddefflag        => ",",
    114         ldresflag        => ",",
    115         ld_implib_rule   => 'implib -a $< $**',
    116         dso_scheme       => "win64",
    117         shared_defflag   => '',
    118         perl_platform    => 'Windows::cppbuilder',
    119         uplink_arch      => 'common',
    120     }
    121 );
    122