diff --git a/dev-libs/tinyxml/additional-files/Makefile b/dev-libs/tinyxml/additional-files/Makefile new file mode 100644 index 000000000..40ad4fe7e --- /dev/null +++ b/dev-libs/tinyxml/additional-files/Makefile @@ -0,0 +1,44 @@ +AR ?= ar +CXX ?= g++ +CXXFLAGS += -Wall +RANLIB ?= ranlib +LIBDIR ?= /usr/lib + +name = libtinyxml +major = @MAJOR_V@ +minor = @MINOR_V@ +version = $(major).$(minor) + +src = tinyxml.cpp tinyxmlparser.cpp tinyxmlerror.cpp tinystr.cpp +lo = $(addsuffix .lo,$(basename ${src})) +o = $(addsuffix .o,$(basename ${src})) + +lib = so +ifeq ($(shell uname),Darwin) + lib = dylib +endif + +all: $(name).a $(name).$(lib) + +%.o: %.cpp + $(CXX) -c $(CXXFLAGS) $(CPPFLAGS) $< -o $@ + +$(name).a: $(o) + $(AR) rc $(name).a $(o) + $(RANLIB) $(name).a + +%.lo: %.cpp + $(CXX) -c $(CXXFLAGS) $(CPPFLAGS) -fPIC $< -o $@ + +$(name).so: $(lo) + $(CXX) $(LDFLAGS) -fPIC -shared $(lo) -Wl,-soname,$(name).so.$(major) -o $(name).so.$(version) + ln -s $(name).so.$(version) $(name).so.$(major) + ln -s $(name).so.$(version) $(name).so + +$(name).dylib: $(lo) + $(CXX) $(LDFLAGS) -fPIC -dynamiclib $(lo) -install_name $(LIBDIR)/$(name).$(major).dylib -o $(name).$(version).dylib + ln -s $(name).$(version).dylib $(name).$(major).dylib + ln -s $(name).$(version).dylib $(name).dylib + +clean: + -rm -f *.o *.lo *.so* *.a diff --git a/dev-libs/tinyxml/tinyxml-2.6.2.recipe b/dev-libs/tinyxml/tinyxml-2.6.2.recipe index c103a3846..b81543ba3 100644 --- a/dev-libs/tinyxml/tinyxml-2.6.2.recipe +++ b/dev-libs/tinyxml/tinyxml-2.6.2.recipe @@ -8,12 +8,11 @@ document from scratch with C++ objects." HOMEPAGE="http://www.grinninglizard.com/tinyxml/index.html" COPYRIGHT="2001-2010 Lee Thomason" LICENSE="Zlib" -REVISION="2" -SOURCE_URI="http://sourceforge.net/projects/tinyxml/files/tinyxml/$portVersion/tinyxml_2_6_2.tar.gz" +REVISION="3" +SOURCE_URI="http://downloads.sourceforge.net/project/tinyxml/tinyxml/$portVersion/tinyxml_2_6_2.tar.gz" CHECKSUM_SHA256="15bdfdcec58a7da30adc87ac2b078e4417dbe5392f3afb719f9ba6d062645593" -SOURCE_URI_2="http://libtinyxml.googlecode.com/svn/trunk/CMakeLists.txt#noarchive" -CHECKSUM_SHA256_2="12a412abedaf30fff9c75273c1ac7239a7b4b59dd34bdadedd913a9717a3a105" SOURCE_DIR="tinyxml" +ADDITIONAL_FILES="Makefile" ARCHITECTURES="x86_gcc2 x86 x86_64" SECONDARY_ARCHITECTURES="x86_gcc2 x86" @@ -38,31 +37,23 @@ BUILD_REQUIRES=" haiku${secondaryArchSuffix}_devel " BUILD_PREREQUIRES=" - cmd:cmake cmd:gcc$secondaryArchSuffix - cmd:grep cmd:ld$secondaryArchSuffix cmd:make - cmd:sed " BUILD() { - cp ../../sources-2/CMakeLists.txt ./ - sed -i 's/GLOB_RECURSE/GLOB/' CMakeLists.txt - cmake -DCMAKE_INSTALL_PREFIX:PATH=$prefix + cp -f $portDir/additional-files/Makefile ./ make $jobArgs } INSTALL() { - make install - - # move headers to the correct location - mkdir -p $includeDir $libDir - mv $prefix/include/* $includeDir - [ "$prefix/lib" != "$libDir" ] && mv $prefix/lib/*.so $libDir - rmdir $prefix/include/ + mkdir -p $developDocDir $includeDir $libDir + mv docs/* $developDocDir + mv tiny*.h $includeDir + mv libtinyxml.so.@MAJOR_V@.@MINOR_V@ $libDir/libtinyxml.so prepareInstalledDevelLibs libtinyxml