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