diff -Naur libmusicbrainz-4.0.3/CMakeLists.txt libmusicbrainz-4.0.3-magellan/CMakeLists.txt --- libmusicbrainz-4.0.3/CMakeLists.txt 2012-05-16 21:45:56.000000000 +0200 +++ libmusicbrainz-4.0.3-magellan/CMakeLists.txt 2012-10-12 15:53:27.567982326 +0200 @@ -32,7 +32,7 @@ CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake ${CMAKE_CURRENT_SOURCE_DIR}/config.h) FILE(GLOB headers ${CMAKE_CURRENT_SOURCE_DIR}/include/musicbrainz4/*.h) -INSTALL(FILES ${headers} include/musicbrainz4/mb4_c.h DESTINATION ${INCLUDE_INSTALL_DIR}/musicbrainz4) +INSTALL(FILES ${headers} ${CMAKE_CURRENT_BINARY_DIR}/include/musicbrainz4/mb4_c.h DESTINATION ${INCLUDE_INSTALL_DIR}/musicbrainz4) INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/libmusicbrainz4.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig) ADD_SUBDIRECTORY(src) diff -Naur libmusicbrainz-4.0.3/examples/CMakeLists.txt libmusicbrainz-4.0.3-magellan/examples/CMakeLists.txt --- libmusicbrainz-4.0.3/examples/CMakeLists.txt 2012-05-16 21:45:56.000000000 +0200 +++ libmusicbrainz-4.0.3-magellan/examples/CMakeLists.txt 2012-10-12 15:46:18.649984633 +0200 @@ -1,4 +1,7 @@ -INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../include) +INCLUDE_DIRECTORIES( + ${CMAKE_CURRENT_SOURCE_DIR}/../include + ${CMAKE_CURRENT_BINARY_DIR}/../include +) LINK_LIBRARIES(musicbrainz4 ${NEON_LIBRARIES}) ADD_EXECUTABLE(cdlookup cdlookup.cc) diff -Naur libmusicbrainz-4.0.3/src/CMakeLists.txt libmusicbrainz-4.0.3-magellan/src/CMakeLists.txt --- libmusicbrainz-4.0.3/src/CMakeLists.txt 2012-05-16 21:45:56.000000000 +0200 +++ libmusicbrainz-4.0.3-magellan/src/CMakeLists.txt 2012-10-12 15:59:16.054983561 +0200 @@ -1,5 +1,10 @@ SET(CMAKE_INCLUDE_CURRENT_DIR ON) -INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/.. ${CMAKE_CURRENT_SOURCE_DIR}/../include ${NEON_INCLUDE_DIR}) +INCLUDE_DIRECTORIES( + ${CMAKE_CURRENT_SOURCE_DIR}/.. + ${CMAKE_CURRENT_SOURCE_DIR}/../include + ${CMAKE_CURRENT_BINARY_DIR}/../include + ${NEON_INCLUDE_DIR} +) SET(_sources Alias.cc Annotation.cc Artist.cc ArtistCredit.cc Attribute.cc CDStub.cc Collection.cc Disc.cc Entity.cc FreeDBDisc.cc HTTPFetch.cc ISRC.cc Label.cc LabelInfo.cc Lifespan.cc List.cc @@ -13,7 +18,7 @@ ADD_CUSTOM_COMMAND( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/mb4_c.cc ${CMAKE_CURRENT_BINARY_DIR}/mb4_c.h ${CMAKE_CURRENT_BINARY_DIR}/../include/musicbrainz4/mb4_c.h COMMAND make-c-interface ${CMAKE_CURRENT_SOURCE_DIR} cinterface.xml ${CMAKE_CURRENT_BINARY_DIR} mb4_c.cc mb4_c.h - COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_CURRENT_BINARY_DIR}/mb4_c.h ${CMAKE_CURRENT_BINARY_DIR}/../include/musicbrainz4 + COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_CURRENT_BINARY_DIR}/mb4_c.h ${CMAKE_CURRENT_BINARY_DIR}/../include/musicbrainz4/mb4_c.h DEPENDS make-c-interface cinterface.xml *.inc ) diff -Naur libmusicbrainz-4.0.3/src/make-c-interface.cc libmusicbrainz-4.0.3-magellan/src/make-c-interface.cc --- libmusicbrainz-4.0.3/src/make-c-interface.cc 2012-05-16 21:45:56.000000000 +0200 +++ libmusicbrainz-4.0.3-magellan/src/make-c-interface.cc 2012-10-12 15:51:38.934985357 +0200 @@ -33,7 +33,7 @@ #include "musicbrainz4/xmlParser.h" -void ProcessBoilerplate(const XMLNode& Node, std::ofstream& Source, std::ofstream& Include); +void ProcessBoilerplate(const XMLNode& Node, std::ofstream& Source, std::ofstream& Include, const std::string& Path); void ProcessHeader(const XMLNode& Node, std::ofstream& Source, std::ofstream& Include); void ProcessEntity(const XMLNode& Node, std::ofstream& Source, std::ofstream& Include); void ProcessClass(const XMLNode& Node, std::ofstream& Source, std::ofstream& Include); @@ -80,7 +80,7 @@ std::string Name=Node.getName(); if ("boilerplate"==Name) - ProcessBoilerplate(Node,Source,Include); + ProcessBoilerplate(Node,Source,Include,argv[1]); else if ("header"==Name) ProcessHeader(Node,Source,Include); else if ("declare"==Name) @@ -156,13 +156,13 @@ Include << os.str() << std::endl; } -void ProcessBoilerplate(const XMLNode& Node, std::ofstream& Source, std::ofstream& Include) +void ProcessBoilerplate(const XMLNode& Node, std::ofstream& Source, std::ofstream& Include, const std::string& Path) { std::ofstream *File=GetFile(Node,Source,Include); if (Node.isAttributeSet("file")) { - std::string FileName=Node.getAttribute("file"); + std::string FileName=Path+"/"+Node.getAttribute("file"); std::ifstream InFile(FileName.c_str()); if (InFile.is_open()) *File << InFile.rdbuf() << std::endl; diff -Naur libmusicbrainz-4.0.3/tests/CMakeLists.txt libmusicbrainz-4.0.3-magellan/tests/CMakeLists.txt --- libmusicbrainz-4.0.3/tests/CMakeLists.txt 2012-05-16 21:45:56.000000000 +0200 +++ libmusicbrainz-4.0.3-magellan/tests/CMakeLists.txt 2012-10-12 15:52:02.656983150 +0200 @@ -1,4 +1,7 @@ -INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../include) +INCLUDE_DIRECTORIES( + ${CMAKE_CURRENT_SOURCE_DIR}/../include + ${CMAKE_CURRENT_BINARY_DIR}/../include +) LINK_LIBRARIES(musicbrainz4 ${NEON_LIBRARIES}) ADD_EXECUTABLE(mbtest mbtest.cc) ADD_EXECUTABLE(ctest ctest.c)