digitalmars.D.learn - CMake for D
- Kai Meyer (6/6) Feb 13 2012 I have some D code that I would like to integrate into an existing CMake...
- Gour (10/12) Feb 13 2012 Try with newer: http://code.google.com/p/cmaked2/
- bioinfornatics (4/16) Feb 13 2012 Maybe send a pull request to main cmake repo will be better. It is
- Gour (14/16) Feb 13 2012 I did ask in the mailing list (sometime ago) about the procedure to
- Igor (3/15) Mar 23 2014 Project (https://code.google.com/p/cmaked2/) seems to be dead :(
- ed (19/38) Mar 23 2014 I'm using CMaked2. When I upgraded to cmake 2.8.10 I had to patch
- Dragos Carp (6/7) Mar 24 2014 I moved cmaked2 to github [1], updated and simplified the usage a
- Andrei Alexandrescu (2/10) Mar 24 2014 Fantastic, thanks Dragos!! A fellow Romanian it seems :o) -- Andrei
- Trent Forkert (16/25) Mar 24 2014 Heh, seems I waited a bit too long, eh? I've been gearing up to
- Trent Forkert (6/35) Mar 25 2014 Realized late last night that I misspoke. LDC and LDMD will
- ed (7/16) Mar 24 2014 You beat me to it :)
- Chris Piker (6/11) May 08 2014 Verified tested and working on CentOS 6.5 with cmake28 package
- Chris Piker (8/13) May 09 2014 What is the best way to specify a mixin include directory for dmd
- Trent Forkert (11/26) May 09 2014 The way I've tackled that in my (still work-in-progress) CMake
- Chris Piker (14/23) May 09 2014 The standard CMake build instructions just don't work on the
I have some D code that I would like to integrate into an existing CMake infrastructure. I've seen these two projects: http://www.dsource.org/projects/cmaked http://plplot.svn.sourceforge.net/viewvc/plplot/trunk/cmake/modules/language_support/cmake/Platform/ Both are quite old. Can anybody comment on the usability of either of these projects? Or perhaps point me to another project that will work?
Feb 13 2012
On Mon, 13 Feb 2012 12:15:23 -0700 Kai Meyer <kai unixlords.com> wrote:Both are quite old. Can anybody comment on the usability of either of=20 these projects? Or perhaps point me to another project that will work?Try with newer: http://code.google.com/p/cmaked2/ Sincerely, Gour --=20 The working senses are superior to dull matter; mind is higher=20 than the senses; intelligence is still higher than the mind;=20 and he [the soul] is even higher than the intelligence. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Feb 13 2012
Le lundi 13 f=C3=A9vrier 2012 =C3=A0 20:45 +0100, Gour a =C3=A9crit :On Mon, 13 Feb 2012 12:15:23 -0700 Kai Meyer <kai unixlords.com> wrote: =20=20Both are quite old. Can anybody comment on the usability of either of=Maybe send a pull request to main cmake repo will be better. It is always better to put code to upstreamthese projects? Or perhaps point me to another project that will work?=20 Try with newer: http://code.google.com/p/cmaked2/ =20 =20 Sincerely, Gour =20
Feb 13 2012
On Tue, 14 Feb 2012 01:37:20 +0100 bioinfornatics <bioinfornatics fedoraproject.org> wrote:Maybe send a pull request to main cmake repo will be better. It is always better to put code to upstreamI did ask in the mailing list (sometime ago) about the procedure to include it to upstream, but got no replies and then have become interested for premake which is getting D support. Sincerely, Gour =20 --=20 The devotees of the Lord are released from all kinds of sins=20 because they eat food which is offered first for sacrifice.=20 Others, who prepare food for personal sense enjoyment,=20 verily eat only sin. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
Feb 13 2012
On Tuesday, 14 February 2012 at 07:35:26 UTC, Gour wrote:On Tue, 14 Feb 2012 01:37:20 +0100 bioinfornatics <bioinfornatics fedoraproject.org> wrote:Project (https://code.google.com/p/cmaked2/) seems to be dead :( Any alternatives??Maybe send a pull request to main cmake repo will be better. It is always better to put code to upstreamI did ask in the mailing list (sometime ago) about the procedure to include it to upstream, but got no replies and then have become interested for premake which is getting D support. Sincerely, Gour
Mar 23 2014
On Monday, 24 March 2014 at 05:44:37 UTC, Igor wrote:On Tuesday, 14 February 2012 at 07:35:26 UTC, Gour wrote:I'm using CMaked2. When I upgraded to cmake 2.8.10 I had to patch it, very simple sed, due to a breaking change in CMake itself. See this link: http://public.kitware.com/pipermail/cmake-developers/2012-October/005535.html In summary: --- * Replace CMAKE_PLATFORM_ROOT_BIN by CMAKE_PLATFORM_INFO_DIR everywhere * Replace ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY} by ${CMAKE_PLATFORM_INFO_DIR} in just the few places which involve a *.cmake file. --- All I did was sed the above for all *.cmake and *.in files in cmaked2 then make/install cmaked2. The LDC guys use CMake and may have a better option for CMake+D also. Cheers, edOn Tue, 14 Feb 2012 01:37:20 +0100 bioinfornatics <bioinfornatics fedoraproject.org> wrote:Project (https://code.google.com/p/cmaked2/) seems to be dead :( Any alternatives??Maybe send a pull request to main cmake repo will be better. It is always better to put code to upstreamI did ask in the mailing list (sometime ago) about the procedure to include it to upstream, but got no replies and then have become interested for premake which is getting D support. Sincerely, Gour
Mar 23 2014
Any alternatives??I moved cmaked2 to github [1], updated and simplified the usage a little (system cmake patch not necessary anymore). You can give it a try. Dub registry support is also on the way. Regards Dragos [1] - https://github.com/dcarp/cmake-d
Mar 24 2014
On 3/24/14, 4:55 PM, Dragos Carp wrote:Fantastic, thanks Dragos!! A fellow Romanian it seems :o) -- AndreiAny alternatives??I moved cmaked2 to github [1], updated and simplified the usage a little (system cmake patch not necessary anymore). You can give it a try. Dub registry support is also on the way. Regards Dragos [1] - https://github.com/dcarp/cmake-d
Mar 24 2014
On Monday, 24 March 2014 at 23:55:14 UTC, Dragos Carp wrote:Heh, seems I waited a bit too long, eh? I've been gearing up to do an initial release of some modifications to CMake that give better D support. (To clarify: this isn't being merged upstream yet, but hopefully that'll happen eventually) While the approach taken by CMakeD2 and cmake-d gets a good amount of the way there, it lacks key CMake features. Namely: Visual Studio support, which unfortunately requires patching the C++ source. The module-only approach also cannot support LDC (save via ldmd, which is not ideal), as CMake will think it is a linker. There were other problems I encountered that required changes to the C++ code as well, though I don't recall what they were off the top of my head. I'm curious to see how you intend to do dub support, though. - TrentAny alternatives??I moved cmaked2 to github [1], updated and simplified the usage a little (system cmake patch not necessary anymore). You can give it a try. Dub registry support is also on the way. Regards Dragos [1] - https://github.com/dcarp/cmake-d
Mar 24 2014
On Tuesday, 25 March 2014 at 01:15:10 UTC, Trent Forkert wrote:On Monday, 24 March 2014 at 23:55:14 UTC, Dragos Carp wrote:Realized late last night that I misspoke. LDC and LDMD will both be detected as a linker, and the change to fix that doesn't touch the C++ source, but it does need to be done in CMake's internal modules. - TrentHeh, seems I waited a bit too long, eh? I've been gearing up to do an initial release of some modifications to CMake that give better D support. (To clarify: this isn't being merged upstream yet, but hopefully that'll happen eventually) While the approach taken by CMakeD2 and cmake-d gets a good amount of the way there, it lacks key CMake features. Namely: Visual Studio support, which unfortunately requires patching the C++ source. The module-only approach also cannot support LDC (save via ldmd, which is not ideal), as CMake will think it is a linker. There were other problems I encountered that required changes to the C++ code as well, though I don't recall what they were off the top of my head.Any alternatives??I moved cmaked2 to github [1], updated and simplified the usage a little (system cmake patch not necessary anymore). You can give it a try. Dub registry support is also on the way. Regards Dragos [1] - https://github.com/dcarp/cmake-dI'm curious to see how you intend to do dub support, though. - Trent
Mar 25 2014
On Monday, 24 March 2014 at 23:55:14 UTC, Dragos Carp wrote:You beat me to it :) I was going to github my version today at work but I'll drop it now and work from your repo. Thanks setting it up! Cheers, edAny alternatives??I moved cmaked2 to github [1], updated and simplified the usage a little (system cmake patch not necessary anymore). You can give it a try. Dub registry support is also on the way. Regards Dragos [1] - https://github.com/dcarp/cmake-d
Mar 24 2014
On Monday, 24 March 2014 at 23:55:14 UTC, Dragos Carp wrote:I moved cmaked2 to github [1], updated and simplified the usage a little (system cmake patch not necessary anymore). You can give it a try. Dub registry support is also on the way. [1] - https://github.com/dcarp/cmake-dVerified tested and working on CentOS 6.5 with cmake28 package from epel repository. Thanks! -- Chris
May 08 2014
On Monday, 24 March 2014 at 23:55:14 UTC, Dragos Carp wrote:I moved cmaked2 to github [1], updated and simplified the usage a little (system cmake patch not necessary anymore). You can give it a try. Dub registry support is also on the way. DragosWhat is the best way to specify a mixin include directory for dmd under CMake? I can arbitarily add a -J option to the compiler flags but should the cmake-d module include a variable that should be set? -- Chris
May 09 2014
On Friday, 9 May 2014 at 21:11:54 UTC, Chris Piker wrote:On Monday, 24 March 2014 at 23:55:14 UTC, Dragos Carp wrote:The way I've tackled that in my (still work-in-progress) CMake fork[1] is to add an `include_directories(TEXT ...)` signature. Unfortunately, you'll need to build my CMake from source, though that isn't difficult. Also, while I am hopeful about getting my changes merged upstream, there is no guarantee of that, so proceed with caution. Do note that my CMake work is independent of CMakeD2 and its forks. See my project wiki for more info. - Trent [1] https://github.com/trentforkert/cmakeI moved cmaked2 to github [1], updated and simplified the usage a little (system cmake patch not necessary anymore). You can give it a try. Dub registry support is also on the way. DragosWhat is the best way to specify a mixin include directory for dmd under CMake? I can arbitarily add a -J option to the compiler flags but should the cmake-d module include a variable that should be set? -- Chris
May 09 2014
On Friday, 9 May 2014 at 21:43:04 UTC, Trent Forkert wrote:The way I've tackled that in my (still work-in-progress) CMake fork[1] is to add an `include_directories(TEXT ...)` signature.I like that, it seems clean.Unfortunately, you'll need to build my CMake from source, though that isn't difficult. Also, while I am hopeful aboutThe standard CMake build instructions just don't work on the CentOS 6.5 systems we are currently using at work. I gave up after 2 hours. Since CMakeD2 is working for me I'm sticking with it for now but...getting my changes merged upstream, there is no guarantee of that, so proceed with caution.... it would be great to have better D support in CMake, I really hope your changes do get committed upstream. I plan on using D somewhat quitely for about a year and after I've worked out the gotcha's start talking to my programming friends. An upstream merge would get used.Do note that my CMake work is independent of CMakeD2 and its forks. See my project wiki for more info. [1] https://github.com/trentforkert/cmakeThanks, I'll check it out. -- Chris
May 09 2014