<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Wed Feb 07 21:58:10 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>MongoDB Jira</title>
    <link>https://jira.mongodb.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.7.1</version>
        <build-number>970001</build-number>
        <build-date>13-04-2023</build-date>
    </build-info>


<item>
            <title>[CXX-89] Add Evergreen builder for MinGW</title>
                <link>https://jira.mongodb.org/browse/CXX-89</link>
                <project id="11980" key="CXX">C++ Driver</project>
                    <description>&lt;p&gt;C++ Driver does not compile with Mingw.&lt;br/&gt;
Tested versions of Mingw are 3.4.5 which comes with Qt 4.5 and 4.6.&lt;/p&gt;

&lt;p&gt;mongo/client/../util/goodies.h: In member function `mongo::WrappingInt&lt;br/&gt;
mongo::WrappingInt::atomicIncrement()&apos;:&lt;br/&gt;
mongo/client/../util/goodies.h:131: error: invalid conversion from&lt;br/&gt;
`volatile long int*&apos; to `long int*&apos;&lt;/p&gt;

&lt;p&gt;mongo/client/../util/goodies.h:131: error:   initializing argument 1&lt;br/&gt;
of `long int InterlockedIncrement(long int*)&apos;&lt;br/&gt;
mongo/client/../util/goodies.h: In function `void&lt;br/&gt;
mongo::time_t_to_String(time_t, char*)&apos;:&lt;br/&gt;
mongo/client/../util/goodies.h:172: error: `ctime_s&apos; was not declared&lt;br/&gt;
in this scope&lt;/p&gt;

&lt;p&gt;mongo/client/../util/goodies.h:172: warning: unused variable &apos;ctime_s&apos;&lt;br/&gt;
In file included from mongo/client/dbclient.h:22,&lt;/p&gt;

&lt;p&gt;mongo/client/../db/jsobj.h: In constructor `mongo::JSObj1::JSObj1()&apos;:&lt;br/&gt;
mongo/client/../db/jsobj.h:1631: error: `strcpy_s&apos; was not declared in&lt;br/&gt;
this scope&lt;/p&gt;</description>
                <environment>Windows XP</environment>
        <key id="11226">CXX-89</key>
            <summary>Add Evergreen builder for MinGW</summary>
                <type id="3" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14718&amp;avatarType=issuetype">Task</type>
                                            <priority id="4" iconUrl="https://jira.mongodb.org/images/icons/priorities/minor.svg">Minor - P4</priority>
                        <status id="6" iconUrl="https://jira.mongodb.org/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="2">Won&apos;t Fix</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="davidortega">David G Ortega</reporter>
                        <labels>
                            <label>cxxmove</label>
                            <label>windows</label>
                    </labels>
                <created>Mon, 1 Feb 2010 10:00:17 +0000</created>
                <updated>Fri, 23 Jul 2021 02:28:36 +0000</updated>
                            <resolved>Tue, 22 May 2018 21:54:23 +0000</resolved>
                                                                    <component>Build</component>
                    <component>Portability</component>
                                        <votes>10</votes>
                                    <watches>13</watches>
                                                                                                                <comments>
                            <comment id="1487404" author="rassi@10gen.com" created="Sat, 28 Jan 2017 00:01:39 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=gbschenkel&quot; class=&quot;user-hover&quot; rel=&quot;gbschenkel&quot;&gt;gbschenkel&lt;/a&gt;: thanks for the report!  I&apos;m glad to hear to hear that you were able to successfully compile the latest version of the driver with MinGW.  I&apos;ve filed &lt;a href=&quot;https://jira.mongodb.org/browse/CXX-1207&quot; title=&quot;Update vendored Catch to latest stable version&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CXX-1207&quot;&gt;&lt;del&gt;CXX-1207&lt;/del&gt;&lt;/a&gt; to update our vendored Catch, so that you&apos;d be able to build from pristine source in the future.&lt;/p&gt;</comment>
                            <comment id="1487162" author="gbschenkel" created="Fri, 27 Jan 2017 19:46:32 +0000"  >&lt;p&gt;I found the problem related by me in &lt;a href=&quot;https://jira.mongodb.org/browse/CXX-1206&quot; class=&quot;external-link&quot; rel=&quot;nofollow&quot;&gt;CXX-1206&lt;/a&gt;, was the third party software Catch, which could handle the code(c++11), in my humble opinion. I downloaded the &lt;a href=&quot;https://github.com/mongodb/mongo-cxx-driver/blob/master/src/third_party/catch/include/catch.hpp&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;last stable&lt;/a&gt; version and updated the &quot;mongo-cxx-driver/src/third_party/catch/include/catch.hpp&quot;. After that i was able to compile and install it. I used Msys2 with mingw-w64-x86_64 + (gcc + cmake + openssl + boost) for x86_64. For CMake I used the generator &apos;CodeBlocks - MinGW Makefiles&apos;.&lt;br/&gt;
Oh, near forgot, I compiled all 3 drivers from master branch.&lt;/p&gt;</comment>
                            <comment id="1375786" author="rassi@10gen.com" created="Fri, 2 Sep 2016 16:34:59 +0000"  >&lt;p&gt;I&apos;m re-purposing this ticket to focus on official support for MinGW on the master branch.  Relatedly, I&apos;ve closed pull request &lt;a href=&quot;https://github.com/mongodb/mongo-cxx-driver/pull/108&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;#108&lt;/a&gt;; see my closing comment there for details.&lt;/p&gt;</comment>
                            <comment id="1355451" author="david.golden" created="Fri, 12 Aug 2016 15:32:41 +0000"  >&lt;p&gt;Related PR was submitted as &lt;a href=&quot;https://github.com/mongodb/mongo-cxx-driver/pull/108&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-cxx-driver/pull/108&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="638686" author="climax" created="Mon, 30 Jun 2014 14:27:15 +0000"  >&lt;p&gt;Here is a &lt;a href=&quot;http://craftycode.co.za/2014/06/27/building-mongodb-c-driver-mingw64/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;blog post&lt;/a&gt; describing the detail and also a github link with a &lt;a href=&quot;https://github.com/mongodb/mongo-cxx-driver/pull/108&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;pull request&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="523484" author="acm" created="Wed, 26 Mar 2014 12:04:14 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=climax&quot; class=&quot;user-hover&quot; rel=&quot;climax&quot;&gt;climax&lt;/a&gt; Mingw support is not currently a priority for us, though certainly a nice to have, so I&apos;m not sure how soon we will be able to get to working on this. However, we are certainly interested in your scons diff as that will give us some guidance for when we do revisit this topic in the future. If you have any questions about the scons build system for the driver, mongodb-dev is probably an appropriate forum for questions.&lt;/p&gt;

&lt;p&gt;Thanks,&lt;br/&gt;
Andrew&lt;/p&gt;
</comment>
                            <comment id="523464" author="climax" created="Wed, 26 Mar 2014 10:59:21 +0000"  >&lt;p&gt;I managed to get the C++ driver built with mingw on Windows with minor changes to the code. The changes to the scons file, however, were not so easy. I will try to create a patch which makes it easier for cross-toolchains as that is currently my use case.&lt;/p&gt;

&lt;p&gt;I am not very familiar with scons so this is delaying my progress.&lt;/p&gt;</comment>
                            <comment id="117707" author="trikko" created="Wed, 9 May 2012 15:58:53 +0000"  >&lt;p&gt;still not work on linux using mingw :\&lt;/p&gt;</comment>
                            <comment id="100881" author="climax" created="Wed, 21 Mar 2012 09:43:23 +0000"  >&lt;p&gt;I remember now that you have to specify the UNICODE and _UNICODE defines when building the source, not sure if it is applicable.&lt;/p&gt;</comment>
                            <comment id="100880" author="climax" created="Wed, 21 Mar 2012 09:41:19 +0000"  >&lt;p&gt;This is correct, Thomas. I&apos;ve noticed that the code using the *_s functions check if WIN32 is defined. The assumption is then made that it is Visual C++ compiling and not MingW. I have managed to build the source using mingw64 from TDM. The latest is utilizing gcc 4.6.1. I am uploading the patch I made. Please note that the patch also includes changes to SConstruct to use boost 1.48, but it is irrelevant for making mingw to work.&lt;/p&gt;

&lt;p&gt;I am not sure which version mongo it was, but I believe the patch file will specify the git version used. &lt;/p&gt;

&lt;p&gt;Please let met know if anything is missing and I will do my best to help out.&lt;/p&gt;</comment>
                            <comment id="21104" author="tpc" created="Mon, 6 Dec 2010 17:35:35 +0000"  >&lt;p&gt;Yes there are similar issues with ming64.&lt;/p&gt;

&lt;p&gt;What&apos;s the use of the  *_s functions? Shouldn&apos;t the CRT be thread safe (Thread local storage...)?&lt;/p&gt;

&lt;p&gt;In Mingw there are macros like this:&lt;br/&gt;
#ifndef ctime_r&lt;br/&gt;
#define ctime_r(_Time,_Str) (ctime ((_Time)) ? (strcpy((_Str),ctime ((_Time))),(_Str)) : 0)&lt;br/&gt;
#endif&lt;br/&gt;
so it should be should be &quot;only&quot; a matter of inserting proper #ifdefs for mingw?&lt;/p&gt;</comment>
                            <comment id="17790" author="zippy1981" created="Sat, 4 Sep 2010 14:01:50 +0000"  >&lt;p&gt;Does the same thing happen on mingw64?&lt;/p&gt;</comment>
                            <comment id="15159" author="trikko" created="Tue, 29 Jun 2010 06:02:11 +0000"  >&lt;p&gt;mingw on Linux gives same errors...&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="235989">CDRIVER-959</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="is related to">
                                        <issuelink>
            <issuekey id="349587">CXX-1206</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="15472" name="0001-Make-mingw-work.-Make-boost-4.48-work.patch" size="5747" author="climax" created="Wed, 21 Mar 2012 09:41:49 +0000"/>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10857" key="com.pyxis.greenhopper.jira:gh-epic-link">
                        <customfieldname>Epic Link</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>CXX-1023</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hret53:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>4255</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            </customfields>
    </item>
</channel>
</rss>