Generate dependency information
[openssl.git] / Configurations / 50-cppbuilder.conf
index 7643f6b5107fb0fb5bb471959aae1f05fe38cce0..7ca972956a48a2774c00f09241f6edbd5f7d8458 100644 (file)
@@ -3,35 +3,52 @@ my %targets = (
         inherit_from     => [ "BASE_Windows" ],
         sys_id           => "WIN32",
         bn_ops           => "BN_LLONG",
-        dso_scheme       => "win32",
         thread_scheme    => "winthreads",
         cc               => "bcc32c",
+        CPP              => "cpp32 -oCON -Sc -Sr",
         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",
+        cpp_depend_flags => "-Hp",
         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 = ();
-            push @ex_libs, ("cw32mt.lib", "import32.lib", "crypt32.lib",
-                            "ws2_32.lib") unless $disabled{sock};
+            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",
+        RC               => "brcc32",
+        RCFLAGS          => '-i"$(BDS)\include\windows\sdk"',
+        rcoutflag        => "-fo",
+        shared_target    => "win-shared",
+        shared_ldflag    => "-Tpd c0d32.obj",
+        dso_lflags       => "-Tpd c0d32.obj",
+        lddefflag        => ",",
+        ldresflag        => ",",
+        ld_implib_rule   => 'implib $< $**',
+        dso_scheme       => "win32",
     }
 );