Ticket #72 (assigned enhancement)

Opened 10 years ago

Last modified 3 years ago

Building libyaml with CMake

Reported by: clive.crous@… Owned by: xi
Priority: low Component: libyaml
Severity: minor Keywords:
Cc: jyamada1@…


I have created a  cmake "meta-build" file for creating project files for building libyaml.

I have tested the attached cmake file with:

  • Visual Studio 7
  • MinGW Makefiles

It should work fine with Unix Makefiles, KDevelop etc as well (I will test when I get back home in front of a linux box and add a comment here with the results).

I've uploaded the  CMakeLists file to my  mini-libyaml branch for the purpose of getting this working.

-- Clive Crous


CMakeLists.txt Download (1.2 KB) - added by clive.crous@… 9 years ago.
CMakeLists.txt for building libyaml with cmake

Change History

comment:1 Changed 10 years ago by clive.crous@…

  • Priority changed from normal to low
  • Component changed from pyyaml to libyaml
  • Severity changed from normal to minor

Oops accidentally chose the wrong component.

comment:2 Changed 10 years ago by clive.crous@…

More than 2 months have past since I posted this :(

Anyone alive?

Changed 9 years ago by clive.crous@…

CMakeLists.txt for building libyaml with cmake

comment:3 Changed 9 years ago by clive.crous@…

My server that I linked to above no longer exists so I've attached the CMake files here.

comment:4 Changed 9 years ago by xi

  • Status changed from new to assigned

Thanks for contribution, Clive. I'll try to incorporate it to the next release of libyaml.

comment:5 Changed 9 years ago by anonymous

Confirmed build with cmake and MinGW under WinXP, but only when I unchecked BUILD_SHARED_LIBS in the cmake GUI.

With the BUILD_SHARED_LIBS checked, cmake will generate a makefile, but gcc fails miserably with a internal compiler error.

Also, when I attempted to build the example (w/ libyaml.a), there are still undefined reference to, for example, _impyaml_parser_initialize, among others.

comment:6 Changed 5 years ago by jyamada1@…

I needed a CMake build script for libyaml and wrote my own version. It supports building static and shared versions of the library (separately or together) on multiple platforms (Linux, Cygwin, Windows MSVC, MSYS). It also supports running the tests, building examples and building the documentation.

A patch against changeset 373 that implements all these changes is available here:  https://gist.github.com/3034700

You can see the development here on the cmake_stable branch:  https://github.com/yamad/libyaml

See INSTALL file for more information

It replaces the functionality of the autotools build scripts and the win32 directory, so it removes those files.

There is experimental support for the pkg-config *.pc file and libtool *.la file. I haven't tried using those files yet, so I don't know if they actually work. Also, I couldn't figure out the version number conventions and mimicking the libtool versioning in CMake is a headache. It's not clear to me how important it is to fully preserve the libtool versioning scheme, especially as it seems that most people are moving away from libtool in general.

comment:7 Changed 5 years ago by jyamada1@…

  • Cc jyamada1@… added

comment:8 Changed 3 years ago by RichardKew

Levels are instead the safest buy phentermine capsules of progestin.  https://my.pfeiffer.edu/ICS/My_Pages/Phentermine_Effects_On_The_Heart.jnz Late bout or anti-aircraft is a normal-weight, many online within a immune client.

Note: See TracTickets for help on using tickets.