#************************************************************** # # Licensed to the Apache Software Foundation (ASF) under one # or more contributor license agreements. See the NOTICE file # distributed with this work for additional information # regarding copyright ownership. The ASF licenses this file # to you under the Apache License, Version 2.0 (the # "License"); you may not use this file except in compliance # with the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, # software distributed under the License is distributed on an # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. # #************************************************************** PRJ=. PRJNAME=libxml2 TARGET=so_libxml2 # --- Settings ----------------------------------------------------- .INCLUDE : settings.mk .IF "$(SYSTEM_LIBXML)" == "YES" all: @echo "An already available installation of libxml should exist on your system." @echo "Therefore the version provided here does not need to be built in addition." .ENDIF # --- Files -------------------------------------------------------- LIBXML2VERSION=2.9.8 TARFILE_NAME=$(PRJNAME)-$(LIBXML2VERSION) TARFILE_MD5=b786e353e2aa1b872d70d5d1ca0c740d PATCH_FILES=libxml2-configure.patch # libxml2-global-symbols: #i112480#: Solaris ld won't export non-listed symbols # libxml2-global-symbols.patch .IF "$(OS)" == "WNT" PATCH_FILES+= libxml2-nan-inf-fix.patch .ENDIF .IF "$(OS)"=="LINUX" && "$(COM)"=="GCC" && "$(CCNUMVER)"<"000400020000" PATCH_FILES+= libxml2-centos5.patch .ENDIF # This is only for UNX environment now .IF "$(OS)"=="WNT" .IF "$(COM)"=="GCC" xml2_CC=$(CC) -mthreads .IF "$(MINGW_SHARED_GCCLIB)"=="YES" xml2_CC+=-shared-libgcc .ENDIF xml2_LIBS=-lws2_32 .IF "$(MINGW_SHARED_GXXLIB)"=="YES" xml2_LIBS+=$(MINGW_SHARED_LIBSTDCPP) .ENDIF CONFIGURE_DIR= CONFIGURE_ACTION=.$/configure CONFIGURE_FLAGS=--enable-ipv6=no --without-python --without-zlib --enable-static=no --without-debug --build=i586-pc-mingw32 --host=i586-pc-mingw32 lt_cv_cc_dll_switch="-shared" CC="$(xml2_CC)" LDFLAGS="-no-undefined -Wl,--enable-runtime-pseudo-reloc-v2 -L$(ILIB:s/;/ -L/)" LIBS="$(xml2_LIBS)" OBJDUMP=objdump BUILD_ACTION=$(GNUMAKE) BUILD_DIR=$(CONFIGURE_DIR) .ELSE CONFIGURE_DIR=win32 CONFIGURE_ACTION=cscript configure.js CONFIGURE_FLAGS=iconv=no sax1=yes .IF "$(debug)"!="" CONFIGURE_FLAGS+=debug=yes .ENDIF BUILD_ACTION=nmake BUILD_DIR=$(CONFIGURE_DIR) .ENDIF .ELSE .IF "$(SYSBASE)"!="" xml2_CFLAGS+=-I$(SYSBASE)$/usr$/include .IF "$(COMNAME)"=="sunpro5" xml2_CFLAGS+=$(ARCH_FLAGS) $(C_RESTRICTIONFLAGS) .ENDIF # "$(COMNAME)"=="sunpro5" xml2_LDFLAGS+=-L$(SYSBASE)$/usr$/lib .ENDIF # "$(SYSBASE)"!="" CONFIGURE_DIR= .IF "$(OS)"=="OS2" CONFIGURE_ACTION=sh .$/configure CONFIGURE_FLAGS=--enable-ipv6=no --without-python --without-zlib --enable-static=yes --with-sax1=yes ADDCFLAGS="$(xml2_CFLAGS)" CFLAGS="$(EXTRA_CFLAGS)" LDFLAGS="$(xml2_LDFLAGS) $(EXTRA_LINKFLAGS)" .ELSE CONFIGURE_ACTION=.$/configure CONFIGURE_FLAGS=--enable-ipv6=no --without-python --without-zlib --enable-static=no --with-sax1=yes ADDCFLAGS="$(xml2_CFLAGS) $(EXTRA_CFLAGS)" LDFLAGS="$(xml2_LDFLAGS) $(EXTRA_LINKFLAGS)" .ENDIF BUILD_ACTION=$(GNUMAKE) BUILD_FLAGS+= -j$(EXTMAXPROCESS) BUILD_DIR=$(CONFIGURE_DIR) .ENDIF OUTDIR2INC=include$/libxml .IF "$(OS)"=="MACOSX" EXTRPATH=URELIB OUT2LIB+=.libs$/libxml2.*.dylib OUT2BIN+=.libs$/xmllint OUT2BIN+=xml2-config .ELIF "$(OS)"=="WNT" .IF "$(COM)"=="GCC" OUT2LIB+=.libs$/libxml2*.a OUT2BIN+=.libs$/libxml2*.dll OUT2BIN+=.libs$/xmllint.exe OUT2BIN+=xml2-config .ELSE OUT2LIB+=win32$/bin.msvc$/*.lib OUT2BIN+=win32$/bin.msvc$/*.dll OUT2BIN+=win32$/bin.msvc$/xmllint.exe .ENDIF .ELSE OUT2LIB+=.libs$/libxml2.so* OUT2BIN+=.libs$/xmllint OUT2BIN+=xml2-config .ENDIF # --- Targets ------------------------------------------------------ .INCLUDE : set_ext.mk .INCLUDE : target.mk .INCLUDE : tg_ext.mk