[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-users] alternate build tools
From: |
Patrick Brannan |
Subject: |
Re: [Chicken-users] alternate build tools |
Date: |
Mon, 3 Oct 2005 22:46:10 -0500 |
Maybe it's not so bad. I got it completing an entire build using the
shared library on Windows. Now that I have dug into it a bit more, I
think that the tool has merit, but is not documented well. I can list
the following positive points:
1. You really can build something easily with CMake. The configuration language can be terse when compared to make.
2. The install for Windows worked as advertised. They even release binaries.
5. Creates build files for all sorts of systems.
6. You do not have to re-run cmake for minor cmake updates. Make or nmake will call cmake and update as needed.
7. The user base seems active based on their list traffic.
On the negative side:
1. Documentation is weak.
2. Setting properties on files and targets did not always do what I expected.
3. MinGw is not officially supported though apparently it works.
4. The CMake approach takes a little getting used to. I was expecting
something like Maven or Ant for C but it is not like that at all. The
CMake language is a mix of imperative and declarative.
As far as my previous complaints go, I hadn't researched enough for a
couple of them. You can set the OUTPUT_FILE name for an executable
target. This doesn't seem to work for library targets. You could work
around this by configuring the build for shared or static.
CMake has a nice facility for configuration files that I have not used.
It might make all the defines in my CMakeLists file go away.
Anyway, I have attached my CMakeLists.txt file for you to look at.
Several parts could be optimized with some thought. For one thing,
building all of the scm files at the end (csi, chicken-setup, etc)
could be handled in a FOREACH loop. For another, we might use
configurable files as includes to handle the defines.
To make the test work with chicken 2.2 first fix the winsock.h include
bug in tcp, posix, and scheduler. Then run the following commands. (I
assume you have the free MS tools installed as described in
vctk-install.txt.
cmake -G "NMake MakeFiles" .
nmake
My CMakeCache is also attached. It is generated the first time you run
CMake. You can set up compiler and linker flags in this file.
You could easily set up the cmake to prompt for install directories
etc. It's not perfect, but I think it is workable and that it might
actually save some time.
CMakeLists.txt
Description: Text document
CMakeCache.txt
Description: Text document
- Re: [Chicken-users] alternate build tools, (continued)
- Re: [Chicken-users] alternate build tools, Brandon J. Van Every, 2005/10/01
- Re: [Chicken-users] alternate build tools, Thomas Chust, 2005/10/01
- Re: [Chicken-users] alternate build tools, Ashley Bone, 2005/10/02
- Re: [Chicken-users] alternate build tools, Tony Garnock-Jones, 2005/10/02
- Re: [Chicken-users] alternate build tools, Brandon J. Van Every, 2005/10/03
- Re: [Chicken-users] alternate build tools, Patrick Brannan, 2005/10/03
- Re: [Chicken-users] alternate build tools, Thomas Chust, 2005/10/03
- Re: [Chicken-users] alternate build tools, Brandon J. Van Every, 2005/10/04
- Re: [Chicken-users] alternate build tools, Thomas Chust, 2005/10/05
Re: [Chicken-users] alternate build tools, Alejandro Forero Cuervo, 2005/10/03
- Re: [Chicken-users] alternate build tools,
Patrick Brannan <=