www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - Build / Package system

reply "Sputnik" <sputnik gmail.com> writes:
There is a build and/or package managment system for D2 that is
working?
I googled, and I only can find things like dsss or cmaked that
don't get updated from a long time ago.

I really need to manage to get a project to compile in Windows
and Linux. Actually the code not have any OS dependence, so the
real diferences in each OS are the linking to gtkd and how and
where install the project. Actually I'm using a makfile in Linux
that works well, but I can't use it in windows for thing like
pkg-config.
May 30 2012
next sibling parent "Dejan Lekic" <dejan.lekic gmail.com> writes:
On Wednesday, 30 May 2012 at 08:13:34 UTC, Sputnik wrote:
 There is a build and/or package managment system for D2 that is
 working?
 I googled, and I only can find things like dsss or cmaked that
 don't get updated from a long time ago.

 I really need to manage to get a project to compile in Windows
 and Linux. Actually the code not have any OS dependence, so the
 real diferences in each OS are the linking to gtkd and how and
 where install the project. Actually I'm using a makfile in Linux
 that works well, but I can't use it in windows for thing like
 pkg-config.
You can. I use pkg-config on Windows inside the MSYS environment.
May 30 2012
prev sibling next sibling parent reply Jacob Carlborg <doob me.com> writes:
On 2012-05-30 10:13, Sputnik wrote:
 There is a build and/or package managment system for D2 that is
 working?
 I googled, and I only can find things like dsss or cmaked that
 don't get updated from a long time ago.

 I really need to manage to get a project to compile in Windows
 and Linux. Actually the code not have any OS dependence, so the
 real diferences in each OS are the linking to gtkd and how and
 where install the project. Actually I'm using a makfile in Linux
 that works well, but I can't use it in windows for thing like
 pkg-config.
You can get quite far buy using a shell script and rdmd for building applications: $ rdmd --build-only <options> main.d -- /Jacob Carlborg
May 30 2012
parent reply "Sputnik" <sputnik gmail.com> writes:
On Wednesday, 30 May 2012 at 13:06:40 UTC, Jacob Carlborg wrote:
 On 2012-05-30 10:13, Sputnik wrote:
 There is a build and/or package managment system for D2 that is
 working?
 I googled, and I only can find things like dsss or cmaked that
 don't get updated from a long time ago.

 I really need to manage to get a project to compile in Windows
 and Linux. Actually the code not have any OS dependence, so the
 real diferences in each OS are the linking to gtkd and how and
 where install the project. Actually I'm using a makfile in 
 Linux
 that works well, but I can't use it in windows for thing like
 pkg-config.
You can get quite far buy using a shell script and rdmd for building applications: $ rdmd --build-only <options> main.d
rdmd lloks to work well, escept for two things: 1) I only can compile with dmd. What happend if I like to use gdc to compile ? 2) I need to put the same flags for linking and includes for gtkd that I use in the makefile. I like to have something more OS agnostic of say to the compiler/builder to include gtkd.
May 30 2012
parent reply Jacob Carlborg <doob me.com> writes:
On 2012-05-30 20:53, Sputnik wrote:

 rdmd lloks to work well, escept for two things:

 1) I only can compile with dmd. What happend if I like to use gdc to
 compile ?
rdmd --compiler=<compiler>
 2) I need to put the same flags for linking and includes for gtkd that I
 use in the makefile. I like to have something more OS agnostic of say to
 the compiler/builder to include gtkd.
That would be nice to have. -- /Jacob Carlborg
May 30 2012
parent reply "Zardoz" <luis.panadero gmail.com> writes:
On Wednesday, 30 May 2012 at 19:12:06 UTC, Jacob Carlborg wrote:
 On 2012-05-30 20:53, Sputnik wrote:

 rdmd lloks to work well, escept for two things:

 1) I only can compile with dmd. What happend if I like to use 
 gdc to
 compile ?
rdmd --compiler=<compiler>
Wops!
 2) I need to put the same flags for linking and includes for 
 gtkd that I
 use in the makefile. I like to have something more OS agnostic 
 of say to
 the compiler/builder to include gtkd.
That would be nice to have.
I managed to doing something similar using git submodules
May 30 2012
parent Jacob Carlborg <doob me.com> writes:
On 2012-05-31 00:23, Zardoz wrote:
 On Wednesday, 30 May 2012 at 19:12:06 UTC, Jacob Carlborg wrote:
 On 2012-05-30 20:53, Sputnik wrote:
 2) I need to put the same flags for linking and includes for gtkd that I
 use in the makefile. I like to have something more OS agnostic of say to
 the compiler/builder to include gtkd.
That would be nice to have.
I managed to doing something similar using git submodules
What I think he was saying was that he wants a cross-platform way of linking a library then compiling. -- /Jacob Carlborg
May 30 2012
prev sibling next sibling parent bioinfornatics <bioinfornatics fedoraproject.org> writes:
They are dbuilder: https://github.com/organizations/dbuilder-developers
cross-platform
support both ldc2 / dmd / gdc
// build
install
config file for your project ...
not yet stable but it should works

any one are welcome to contribute
Jun 06 2012
prev sibling next sibling parent reply "Elie Morisse" <syniurge gmail.com> writes:
On Wednesday, 30 May 2012 at 08:13:34 UTC, Sputnik wrote:
 There is a build and/or package managment system for D2 that is
 working?
 I googled, and I only can find things like dsss or cmaked that
 don't get updated from a long time ago.

 I really need to manage to get a project to compile in Windows
 and Linux. Actually the code not have any OS dependence, so the
 real diferences in each OS are the linking to gtkd and how and
 where install the project. Actually I'm using a makfile in Linux
 that works well, but I can't use it in windows for thing like
 pkg-config.
CMakeD is actually just a bunch of CMake modules and very lightweight, it wouldn't be surprising if it still worked or required more than a few minor changes. I've decided today to migrate my project from C++ to D after being annoyed by the lack of conditional evaluation of code in C++ and the opposition of the core designers of C++ to static if, so I will report later if CMakeD is still useable.
Jul 25 2013
parent "Trent" <anon nope.avi> writes:
On Thursday, 25 July 2013 at 17:59:23 UTC, Elie Morisse wrote:
 On Wednesday, 30 May 2012 at 08:13:34 UTC, Sputnik wrote:
 There is a build and/or package managment system for D2 that is
 working?
 I googled, and I only can find things like dsss or cmaked that
 don't get updated from a long time ago.

 I really need to manage to get a project to compile in Windows
 and Linux. Actually the code not have any OS dependence, so the
 real diferences in each OS are the linking to gtkd and how and
 where install the project. Actually I'm using a makfile in 
 Linux
 that works well, but I can't use it in windows for thing like
 pkg-config.
CMakeD is actually just a bunch of CMake modules and very lightweight, it wouldn't be surprising if it still worked or required more than a few minor changes. I've decided today to migrate my project from C++ to D after being annoyed by the lack of conditional evaluation of code in C++ and the opposition of the core designers of C++ to static if, so I will report later if CMakeD is still useable.
The thing about CMakeD(2) is that, by my recollection, it *needs* to be installed in CMAKE_ROOT. It also doesn't support LDC, technically doesn't detect compilers correctly, and sets variables that will break multi-language projects. There's a lot to fix with it, it won't be a simple set of changes. And it won't be something you can consult documentation for, as CMake internals are very poorly documented. That said, I've been working on a new collection of D-related CMake modules for the past month or so. Real life (and Minecraft and DOTA2) have been encroaching on my free time lately, but progress is being made. Right now, I have a D project, which references a C library built within the same project tree, and things are working on Linux x86_64 with recent versions of DMD, LDC, and GDC. I'll be doing testing and tweaks this weekend, and if it looks like things are working, I'll move toward getting this documented and put on github. It's not quite there yet, and the API has changed twice in the past week as I deal with CMake quirks, but I should have enough feature completeness for a v0.1 this next week. I have ideas kicking around for some potentially interesting features (dub integration of some sort?) that *definitely* won't be ready for the v0.1, but they'll be coming. Good news is, integration into CMake's sister tools (CPack and CTest) is super easy, so standard installers/archives/packages for the various platforms will be supported the same as C++ based CMake projects. Soon...
Jul 26 2013
prev sibling parent "QAston" <qaston gmail.com> writes:
On Wednesday, 30 May 2012 at 08:13:34 UTC, Sputnik wrote:
 There is a build and/or package managment system for D2 that is
 working?
 I googled, and I only can find things like dsss or cmaked that
 don't get updated from a long time ago.

 I really need to manage to get a project to compile in Windows
 and Linux. Actually the code not have any OS dependence, so the
 real diferences in each OS are the linking to gtkd and how and
 where install the project. Actually I'm using a makfile in Linux
 that works well, but I can't use it in windows for thing like
 pkg-config.
There's dub: http://code.dlang.org/ https://github.com/rejectedsoftware/dub
Jul 26 2013