Mercurial > mxe-octave
diff src/build-msvctools/gcc.diff @ 3061:f8299bb6c872
Initial support for native MSVC compilation.
* add MSVC support files: compiler wrappers and support libraries
* adapt libiconv to work with MSVC
* adapt gettext to work with MSVC
author | Michael Goffioul <michael.goffioul@gmail.com> |
---|---|
date | Mon, 17 Jun 2013 22:43:11 -0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/build-msvctools/gcc.diff Mon Jun 17 22:43:11 2013 -0400 @@ -0,0 +1,115 @@ +diff -ur gcc-4.7.0-orig/libgfortran/intrinsics/c99_functions.c gcc-4.7.0-new/libgfortran/intrinsics/c99_functions.c +--- gcc-4.7.0-orig/libgfortran/intrinsics/c99_functions.c 2011-11-08 10:31:04 +0000 ++++ gcc-4.7.0-new/libgfortran/intrinsics/c99_functions.c 2012-07-06 17:29:18 +0100 +@@ -1026,6 +1026,7 @@ + } + #endif + ++#if 0 + #if !defined(HAVE_CLOG10L) && defined(HAVE_LOG10L) && defined(HAVE_CABSL) && defined(HAVE_CARGL) + #define HAVE_CLOG10L 1 + long double complex clog10l (long double complex z); +@@ -1039,6 +1040,7 @@ + return v; + } + #endif ++#endif + + + /* pow(base, power) = cexp (power * clog (base)) */ +diff -ur gcc-4.7.0-orig/libgfortran/mk-kinds-h.sh gcc-4.7.0-new/libgfortran/mk-kinds-h.sh +--- gcc-4.7.0-orig/libgfortran/mk-kinds-h.sh 2010-11-16 21:23:19 +0000 ++++ gcc-4.7.0-new/libgfortran/mk-kinds-h.sh 2012-07-06 17:29:18 +0100 +@@ -6,7 +6,7 @@ + + # Possible types must be listed in ascending order + possible_integer_kinds="1 2 4 8 16" +-possible_real_kinds="4 8 10 16" ++possible_real_kinds="4 8" + + + largest="" +diff -ur gcc-4.7.0-orig/libgfortran/mk-srk-inc.sh gcc-4.7.0-new/libgfortran/mk-srk-inc.sh +--- gcc-4.7.0-orig/libgfortran/mk-srk-inc.sh 2010-06-25 20:40:37 +0100 ++++ gcc-4.7.0-new/libgfortran/mk-srk-inc.sh 2012-07-06 17:29:18 +0100 +@@ -2,7 +2,7 @@ + + compile="$1" + kinds="" +-possible_kinds="4 8 10 16" ++possible_kinds="4 8" + c=0 + + for k in $possible_kinds; do +diff -ur gcc-4.7.0-orig/libgfortran/runtime/backtrace.c gcc-4.7.0-new/libgfortran/runtime/backtrace.c +--- gcc-4.7.0-orig/libgfortran/runtime/backtrace.c 2012-01-12 10:30:45 +0000 ++++ gcc-4.7.0-new/libgfortran/runtime/backtrace.c 2012-07-06 19:24:45 +0100 +@@ -109,6 +109,7 @@ + } + bt_state; + ++#if 0 + static _Unwind_Reason_Code + trace_function (struct _Unwind_Context *context, void *state_ptr) + { +@@ -185,6 +186,7 @@ + + return _URC_NO_REASON; + } ++#endif + + + /* Display the backtrace. */ +@@ -192,6 +194,7 @@ + void + show_backtrace (void) + { ++#if 0 + bt_state state; + state.frame_number = 0; + state.error = 0; +@@ -276,4 +279,5 @@ + /* Fallback to the simple backtrace without addr2line. */ + state.direct_output = 1; + _Unwind_Backtrace (trace_function, &state); ++#endif + } +diff -ur gcc-4.7.0-orig/libgfortran/runtime/main.c gcc-4.7.0-new/libgfortran/runtime/main.c +--- gcc-4.7.0-orig/libgfortran/runtime/main.c 2012-01-12 09:58:34 +0000 ++++ gcc-4.7.0-new/libgfortran/runtime/main.c 2012-07-06 23:25:20 +0100 +@@ -154,13 +154,14 @@ + } + + +-char *addr2line_path; ++char *addr2line_path = NULL; + + /* Find addr2line and store the path. */ + + void + find_addr2line (void) + { ++#if 0 + #ifdef HAVE_ACCESS + #define A2L_LEN 10 + char *path = getenv ("PATH"); +@@ -187,6 +188,9 @@ + } + } + #endif ++#else ++ addr2line_path = NULL; ++#endif + } + + +@@ -255,3 +259,9 @@ + + free (addr2line_path); + } ++ ++void __msvc_free_exe_path (void) ++{ ++ if (please_free_exe_path_when_done) ++ free ((char *) exe_path); ++}