diff options
Diffstat (limited to 'system/wine/configure_asm.patch')
-rw-r--r-- | system/wine/configure_asm.patch | 191 |
1 files changed, 191 insertions, 0 deletions
diff --git a/system/wine/configure_asm.patch b/system/wine/configure_asm.patch new file mode 100644 index 000000000000..e054add6dec6 --- /dev/null +++ b/system/wine/configure_asm.patch @@ -0,0 +1,191 @@ +diff --git a/configure b/configure +index e3253ee..d0b7777 100755 +--- a/configure ++++ b/configure +@@ -732,6 +732,8 @@ FLEX + TOOLSDIR + WOW64_DISABLE + TARGETFLAGS ++ac_ct_CCAS ++CCAS + CPPBIN + ac_ct_CXX + CXXFLAGS +@@ -861,6 +863,7 @@ CPPFLAGS + CXX + CXXFLAGS + CCC ++CCAS + CPP + XMKMF' + +@@ -1549,6 +1552,7 @@ Some influential environment variables: + you have headers in a nonstandard directory <include dir> + CXX C++ compiler command + CXXFLAGS C++ compiler flags ++ CCAS Assembler command + CPP C preprocessor + XMKMF Path to xmkmf, Makefile generator for X Window System + +@@ -4075,6 +4079,108 @@ cat >>confdefs.h <<_ACEOF + _ACEOF + + ++ ++if test -n "$ac_tool_prefix"; then ++ for ac_prog in clang gas as ++ do ++ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. ++set dummy $ac_tool_prefix$ac_prog; ac_word=$2 ++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 ++$as_echo_n "checking for $ac_word... " >&6; } ++if ${ac_cv_prog_CCAS+:} false; then : ++ $as_echo_n "(cached) " >&6 ++else ++ if test -n "$CCAS"; then ++ ac_cv_prog_CCAS="$CCAS" # Let the user override the test. ++else ++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR ++for as_dir in $PATH ++do ++ IFS=$as_save_IFS ++ test -z "$as_dir" && as_dir=. ++ for ac_exec_ext in '' $ac_executable_extensions; do ++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ++ ac_cv_prog_CCAS="$ac_tool_prefix$ac_prog" ++ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ break 2 ++ fi ++done ++ done ++IFS=$as_save_IFS ++ ++fi ++fi ++CCAS=$ac_cv_prog_CCAS ++if test -n "$CCAS"; then ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CCAS" >&5 ++$as_echo "$CCAS" >&6; } ++else ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++$as_echo "no" >&6; } ++fi ++ ++ ++ test -n "$CCAS" && break ++ done ++fi ++if test -z "$CCAS"; then ++ ac_ct_CCAS=$CCAS ++ for ac_prog in clang gas as ++do ++ # Extract the first word of "$ac_prog", so it can be a program name with args. ++set dummy $ac_prog; ac_word=$2 ++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 ++$as_echo_n "checking for $ac_word... " >&6; } ++if ${ac_cv_prog_ac_ct_CCAS+:} false; then : ++ $as_echo_n "(cached) " >&6 ++else ++ if test -n "$ac_ct_CCAS"; then ++ ac_cv_prog_ac_ct_CCAS="$ac_ct_CCAS" # Let the user override the test. ++else ++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR ++for as_dir in $PATH ++do ++ IFS=$as_save_IFS ++ test -z "$as_dir" && as_dir=. ++ for ac_exec_ext in '' $ac_executable_extensions; do ++ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ++ ac_cv_prog_ac_ct_CCAS="$ac_prog" ++ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 ++ break 2 ++ fi ++done ++ done ++IFS=$as_save_IFS ++ ++fi ++fi ++ac_ct_CCAS=$ac_cv_prog_ac_ct_CCAS ++if test -n "$ac_ct_CCAS"; then ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CCAS" >&5 ++$as_echo "$ac_ct_CCAS" >&6; } ++else ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++$as_echo "no" >&6; } ++fi ++ ++ ++ test -n "$ac_ct_CCAS" && break ++done ++ ++ if test "x$ac_ct_CCAS" = x; then ++ CCAS=""$CC"" ++ else ++ case $cross_compiling:$ac_tool_warned in ++yes:) ++{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 ++$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ++ac_tool_warned=yes ;; ++esac ++ CCAS=$ac_ct_CCAS ++ fi ++fi ++ ++ + case $host in + *-darwin*) + if test "x$enable_win64" = "xyes" +diff --git a/configure.ac b/configure.ac +index c93cd08..760f325 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -126,6 +126,10 @@ dnl We can't use AC_PROG_CPP for winegcc, it uses by default $(CC) -E + AC_CHECK_TOOL(CPPBIN,cpp,cpp) + AC_DEFINE_UNQUOTED(EXEEXT,["$ac_exeext"],[Define to the file extension for executables.]) + ++dnl Analogous to AM_PROG_AS ++AC_ARG_VAR([CCAS],[Assembler command]) ++AC_CHECK_TOOLS(CCAS,[clang gas as],["$CC"]) ++ + case $host in + *-darwin*) + if test "x$enable_win64" = "xyes" +diff --git a/tools/winebuild/Makefile.in b/tools/winebuild/Makefile.in +index 2017129..3fe47a3 100644 +--- a/tools/winebuild/Makefile.in ++++ b/tools/winebuild/Makefile.in +@@ -1,4 +1,7 @@ +-DEFS = -D__WINESRC__ $(EXTRADEFS) ++DEFS = \ ++ -DCCAS="\"@CCAS@\"" \ ++ -D__WINESRC__ \ ++ $(EXTRADEFS) + + PROGRAMS = winebuild$(EXEEXT) + MANPAGE = winebuild.man +diff --git a/tools/winebuild/utils.c b/tools/winebuild/utils.c +index 262ff3a..1c5f918 100644 +--- a/tools/winebuild/utils.c ++++ b/tools/winebuild/utils.c +@@ -352,6 +352,18 @@ struct strarray *get_as_command(void) + static int as_is_clang = 0; + struct strarray *args = strarray_init(); + ++ if (!as_command && strlen( CCAS )) ++ { ++ struct stat st; ++ ++ if (!stat( CCAS, &st )) ++ as_command = CCAS; ++ else ++ as_command = find_tool( CCAS, NULL ); ++ ++ if (as_command && strstr( as_command, "clang" )) as_is_clang = 1; ++ } ++ + if (!as_command) + { + as_command = find_tool( "clang", NULL ); +-- +1.8.1.2 |