}
mkdir('B');
chdir('B');
+
+my $cmake_common_args = ""
+ . ( defined($cmake_gen) ? qq# -G "$cmake_gen" # : "" )
+ . (
+ defined( $ENV{CMAKE_MAKE_PROGRAM} )
+ ? " -DCMAKE_MAKE_PROGRAM=$ENV{CMAKE_MAKE_PROGRAM} "
+ : ""
+ ) . ( $IS_WIN ? " -DCMAKE_BUILD_TYPE=Debug " : "" );
+
if ( !$ENV{SKIP_RINUTILS_INSTALL} )
{
do_system(
{
cmd => [
qq#cd rinutils && mkdir B && cd B && cmake #
+ . $cmake_common_args
. " -DWITH_TEST_SUITE=OFF "
- . ( defined($cmake_gen) ? qq# -G "$cmake_gen" # : "" )
- . (
- defined( $ENV{CMAKE_MAKE_PROGRAM} )
- ? " -DCMAKE_MAKE_PROGRAM=$ENV{CMAKE_MAKE_PROGRAM} "
- : ""
- )
. ( $IS_WIN ? " -DCMAKE_INSTALL_PREFIX=C:/foo " : '' )
. qq# .. && $SUDO $MAKE install#
]
( $ENV{PKG_CONFIG_PATH} //= '' ) .=
";/foo/lib/pkgconfig/;/c/foo/lib/pkgconfig/";
$ENV{RINUTILS_INCLUDE_DIR} = "C:/foo/include";
+
+ # for warning flags.
+ $ENV{FCS_GCC} = 1;
}
chdir($cwd);
$cwd->child('B')->remove_tree( { safe => 0, } );
+my $WIN32_TARGET_ARCH = "-DTARGET_ARCH=x86_64-w64-mingw32"; # -G Ninja ..
my $WIN32__DOUBLE_AMPERSAND__PROPER_HANDLING__NEEDED_PREFIX = "cd . &&";
+print "PATH = <<$ENV{PATH}>>\n";
do_system(
{
cmd => [
: ''
)
. " "
- . ( defined($cmake_gen) ? qq#-G "$cmake_gen"# : "" )
- . " ../fortune-mod && $MAKE && $MAKE check"
+ . (
+ $IS_WIN
+ ? ( $cmake_common_args
+ . " $WIN32_TARGET_ARCH -DCMAKE_INSTALL_PREFIX=c:/foo "
+ . "-DUSE_WIN32_REGEX_LIBS=TRUE "
+ . "../fortune-mod && $MAKE && $MAKE install && $MAKE check"
+ )
+ : ( $cmake_common_args
+ . " ../fortune-mod && $MAKE && $MAKE check" )
+ )
]
}
);
+if ($IS_WIN)
+{
+ my $gdb_cmds_fn = "cmds.gdb";
+ path($gdb_cmds_fn)->spew_utf8("r\nbt\nq\n");
+ my $gdb_prefix = "gdb --command=$gdb_cmds_fn";
+ $gdb_prefix = '';
+ do_system(
+ {
+ cmd => [
+"$WIN32__DOUBLE_AMPERSAND__PROPER_HANDLING__NEEDED_PREFIX $gdb_prefix c:/foo/games/fortune.exe"
+ ]
+ }
+ );
+}