lmi-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lmi-commits] [6122] Work around a MinGW defect more tidily


From: Greg Chicares
Subject: [lmi-commits] [6122] Work around a MinGW defect more tidily
Date: Sun, 08 Mar 2015 18:23:22 +0000

Revision: 6122
          http://svn.sv.gnu.org/viewvc/?view=rev&root=lmi&revision=6122
Author:   chicares
Date:     2015-03-08 18:23:21 +0000 (Sun, 08 Mar 2015)
Log Message:
-----------
Work around a MinGW defect more tidily

Modified Paths:
--------------
    lmi/trunk/ChangeLog
    lmi/trunk/install_miscellanea.make
    lmi/trunk/objects.make
    lmi/trunk/workhorse.make

Added Paths:
-----------
    lmi/trunk/boost_1_33_1.patch

Modified: lmi/trunk/ChangeLog
===================================================================
--- lmi/trunk/ChangeLog 2015-03-06 17:54:20 UTC (rev 6121)
+++ lmi/trunk/ChangeLog 2015-03-08 18:23:21 UTC (rev 6122)
@@ -35740,3 +35740,12 @@
 Don't build wx components that lmi doesn't use. See:
   http://lists.nongnu.org/archive/html/lmi/2015-03/msg00006.html
 
+20150308T1823Z <address@hidden> [516]
+
+  boost_1_33_1.patch [new file]
+  install_miscellanea.make
+  objects.make
+  workhorse.make
+Work around a MinGW defect more tidily. See:
+  http://lists.nongnu.org/archive/html/lmi/2014-12/msg00036.html
+

Added: lmi/trunk/boost_1_33_1.patch
===================================================================
--- lmi/trunk/boost_1_33_1.patch                                (rev 0)
+++ lmi/trunk/boost_1_33_1.patch        2015-03-08 18:23:21 UTC (rev 6122)
@@ -0,0 +1,64 @@
+diff --recursive '--unified=3' original/boost_1_33_1/libs/regex/src/cregex.cpp 
modified/boost_1_33_1/libs/regex/src/cregex.cpp
+--- original/boost_1_33_1/libs/regex/src/cregex.cpp    2005-03-30 
13:38:32.000000000 +0200
++++ modified/boost_1_33_1/libs/regex/src/cregex.cpp    2014-12-06 
23:53:30.273125000 +0100
+@@ -362,7 +362,7 @@
+ #if BOOST_WORKAROUND(BOOST_MSVC, >= 1400)
+          (::sprintf_s)(buf, sizeof(buf), "%s%s%s", dstart.path(), 
directory_iterator::separator(), ptr);
+ #else
+-         (std::sprintf)(buf, "%s%s%s", dstart.path(), 
directory_iterator::separator(), ptr);
++         sprintf(buf, "%s%s%s", dstart.path(), 
directory_iterator::separator(), ptr);
+ #endif
+          BuildFileList(pl, buf, recurse);
+          ++dstart;
+diff --recursive '--unified=3' 
original/boost_1_33_1/libs/regex/src/fileiter.cpp 
modified/boost_1_33_1/libs/regex/src/fileiter.cpp
+--- original/boost_1_33_1/libs/regex/src/fileiter.cpp  2005-03-30 
13:38:32.000000000 +0200
++++ modified/boost_1_33_1/libs/regex/src/fileiter.cpp  2014-12-06 
23:53:19.195000000 +0100
+@@ -30,7 +30,6 @@
+ #include <cstdio>
+ #if defined(BOOST_NO_STDC_NAMESPACE)
+ namespace std{
+-   using ::sprintf;
+    using ::fseek;
+    using ::fread;
+    using ::ftell;
+@@ -788,9 +787,9 @@
+ {
+    char buf[MAX_PATH];
+    if( ( (root[0] == *_fi_sep) || (root[0] == *_fi_sep_alt) ) && (root[1] == 
'\0') )
+-      (std::sprintf)(buf, "%s%s", root, name);
++      sprintf(buf, "%s%s", root, name);
+    else
+-      (std::sprintf)(buf, "%s%s%s", root, _fi_sep, name);
++      sprintf(buf, "%s%s%s", root, _fi_sep, name);
+    DIR* d = opendir(buf);
+    if(d)
+    {
+diff --recursive '--unified=3' 
original/boost_1_33_1/libs/regex/src/posix_api.cpp 
modified/boost_1_33_1/libs/regex/src/posix_api.cpp
+--- original/boost_1_33_1/libs/regex/src/posix_api.cpp 2005-03-30 
13:38:32.000000000 +0200
++++ modified/boost_1_33_1/libs/regex/src/posix_api.cpp 2014-12-07 
02:44:11.652125000 +0100
+@@ -24,7 +24,6 @@
+ 
+ #if defined(BOOST_NO_STDC_NAMESPACE)
+ namespace std{
+-   using ::sprintf;
+    using ::strcpy;
+    using ::strcmp;
+ }
+@@ -148,7 +147,7 @@
+ #if BOOST_WORKAROUND(BOOST_MSVC, >= 1400)
+             (::sprintf_s)(localbuf, 5, "%d", i);
+ #else
+-            (std::sprintf)(localbuf, "%d", i);
++            sprintf(localbuf, "%d", i);
+ #endif
+             if(std::strlen(localbuf) < buf_size)
+                re_detail::strcpy_s(buf, buf_size, localbuf);
+@@ -158,7 +157,7 @@
+ #if BOOST_WORKAROUND(BOOST_MSVC, >= 1400)
+       (::sprintf_s)(localbuf, 5, "%d", 0);
+ #else
+-      (std::sprintf)(localbuf, "%d", 0);
++      sprintf(localbuf, "%d", 0);
+ #endif
+       if(std::strlen(localbuf) < buf_size)
+          re_detail::strcpy_s(buf, buf_size, localbuf);


Property changes on: lmi/trunk/boost_1_33_1.patch
___________________________________________________________________
Added: svn:keywords
   + Id

Modified: lmi/trunk/install_miscellanea.make
===================================================================
--- lmi/trunk/install_miscellanea.make  2015-03-06 17:54:20 UTC (rev 6121)
+++ lmi/trunk/install_miscellanea.make  2015-03-08 18:23:21 UTC (rev 6122)
@@ -155,6 +155,7 @@
 
 .PHONY: boost
 boost: $(file_list)
+       -[ -e $(stem).patch ] && $(PATCH) --directory=scratch --strip=1 < 
$(stem).patch
        @$(MKDIR) $(third_party_include_dir)/boost/
        $(CP) --force --preserve --recursive scratch/$(stem)/boost/* 
$(third_party_include_dir)/boost/
        @$(MKDIR) $(third_party_source_dir)/boost/

Modified: lmi/trunk/objects.make
===================================================================
--- lmi/trunk/objects.make      2015-03-06 17:54:20 UTC (rev 6121)
+++ lmi/trunk/objects.make      2015-03-08 18:23:21 UTC (rev 6122)
@@ -837,7 +837,6 @@
   progress_meter_test.o \
   timer.o \
 
-regex_test$(EXEEXT): EXTRA_LDFLAGS = -Wl,--allow-multiple-definition
 regex_test$(EXEEXT): \
   $(boost_regex_objects) \
   $(common_test_objects) \
@@ -958,7 +957,6 @@
 
 test_coding_rules_test := $(src_dir)/test_coding_rules_test.sh
 test_coding_rules$(EXEEXT): POST_LINK_COMMAND = $(test_coding_rules_test)
-test_coding_rules$(EXEEXT): EXTRA_LDFLAGS = -Wl,--allow-multiple-definition
 test_coding_rules$(EXEEXT): \
   $(boost_filesystem_objects) \
   $(boost_regex_objects) \

Modified: lmi/trunk/workhorse.make
===================================================================
--- lmi/trunk/workhorse.make    2015-03-06 17:54:20 UTC (rev 6121)
+++ lmi/trunk/workhorse.make    2015-03-08 18:23:21 UTC (rev 6122)
@@ -472,9 +472,6 @@
 #   http://lists.boost.org/Archives/boost/2006/03/102189.php
 # at least in version 1.33.1, and there seems to be no easy workaround
 # except to blow away all warning options and let a warning appear.
-# This library also seems to require
-#   -Wl,--allow-multiple-definition
-# for reasons unknown, at least with MinGW gcc-3.4.5 .
 
 static_mutex.o: gcc_common_extra_warnings :=
 static_mutex.o:          gcc_cxx_warnings :=
@@ -857,7 +854,7 @@
 wx_new$(SHREXT): wx_new.o
 
 wx_test$(EXEEXT): lmi_so_attributes := -DLMI_USE_SO
-wx_test$(EXEEXT): EXTRA_LDFLAGS := $(wx_ldflags) 
-Wl,--allow-multiple-definition
+wx_test$(EXEEXT): EXTRA_LDFLAGS := $(wx_ldflags)
 wx_test$(EXEEXT): $(wx_test_objects) skeleton$(SHREXT) liblmi$(SHREXT)
 
 # TODO ?? This needs a corresponding test target.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]