Opened 7 years ago

Closed 7 years ago

Last modified 2 years ago

#9482 closed patch

TOOLS: Allow building tools with Solaris Studio (w/ patch)

Reported by: SF/lblume Owned by: criezy
Priority: normal Component: Tools
Keywords: Cc:
Game:

Description

Tools are built using C++. On Solaris, I'm building them as part of OpenCSw, which at this time build wxwidgets with Solaris Studio. Since the C++ ABI are not compatible, this means I've got to build the tools with Solaris Studio C++ too. Attached are 3 simple patches for v1.6.0 that allow: - configure to pick up CC on Solaris - to work around a deque constructor not usable with CC - to fix the use of a wxT() macro that g++ allows, but not CC

Ticket imported from: #3614504. Ticket imported from: patches/1587.

Attachments (3)

0001-teach-configure-about-studio.patch (1.2 KB ) - added by SF/lblume 7 years ago.
Patch to allow configure to pick up Solaris Studio CC
0003-fix-wxT-macro-on-split-lines.patch (1.7 KB ) - added by SF/lblume 7 years ago.
Patch to fix the use of wxT() on split lines
0002-avoid-deque-constructor-for-studio.patch (464 bytes ) - added by SF/lblume 7 years ago.
Patch to avoid a deque construction on Solaris when using CC (corrected)

Download all attachments as: .zip

Change History (15)

by SF/lblume, 7 years ago

Patch to allow configure to pick up Solaris Studio CC

by SF/lblume, 7 years ago

Patch to fix the use of wxT() on split lines

comment:1 by digitall, 7 years ago

Summary: Allow building tools with Solaris StudioTOOLS: Allow building tools with Solaris Studio

comment:2 by SF/lblume, 7 years ago

Forgot to specify: that applies to v1.6.0

comment:3 by SF/lblume, 7 years ago

Summary: TOOLS: Allow building tools with Solaris StudioTOOLS: Allow building tools with Solaris Studio (w/ patch)

comment:4 by criezy, 7 years ago

The second patch looks strange to me: +// If using Solaris Studio +#if defined(__sun) && !defined(__GNUC__) + std::deque<std::string> arguments; for (int i = 1; i < argc; i++); +#else std::deque<std::string> arguments(argv, argv + argc); arguments.pop_front(); // Pop our own name +#endif

Didn't you mean to push_back argv[i] into deque in your for loop?

comment:5 by criezy, 7 years ago

Owner: set to criezy

comment:6 by criezy, 7 years ago

Component: Tools
Keywords: build removed

comment:7 by criezy, 7 years ago

I pushed the first and third patches to master.

I also moved this tracker item to the patch tracker, where it belongs imho.

comment:8 by SF/lblume, 7 years ago

About patch 2: yes, I sure did mean that. I messed up somehow to integrate the patch properly in my build recipe after I had tested it. I'm going to rebuild and confirm, sorry about that.

by SF/lblume, 7 years ago

Patch to avoid a deque construction on Solaris when using CC (corrected)

comment:9 by SF/lblume, 7 years ago

Updated the patch, it should be better this time!

comment:10 by criezy, 7 years ago

Status: newclosed

comment:11 by criezy, 7 years ago

Thank you. All three patches have now been committed to master.

comment:12 by digitall, 2 years ago

Component: Tools
Note: See TracTickets for help on using tickets.