diff options
Diffstat (limited to 'libxmlsec/makefile.mk')
-rw-r--r-- | libxmlsec/makefile.mk | 192 |
1 files changed, 192 insertions, 0 deletions
diff --git a/libxmlsec/makefile.mk b/libxmlsec/makefile.mk new file mode 100644 index 000000000000..f721db3148a4 --- /dev/null +++ b/libxmlsec/makefile.mk @@ -0,0 +1,192 @@ +#************************************************************************* +# +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# Copyright 2000, 2010 Oracle and/or its affiliates. +# +# OpenOffice.org - a multi-platform office productivity suite +# +# This file is part of OpenOffice.org. +# +# OpenOffice.org is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License version 3 +# only, as published by the Free Software Foundation. +# +# OpenOffice.org is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License version 3 for more details +# (a copy is included in the LICENSE file that accompanied this code). +# +# You should have received a copy of the GNU Lesser General Public License +# version 3 along with OpenOffice.org. If not, see +# <http://www.openoffice.org/license.html> +# for a copy of the LGPLv3 License. +# +#************************************************************************* + +PRJ=. + +PRJNAME=xmlsec1 +TARGET=so_xmlsec1 +EXTERNAL_WARNINGS_NOT_ERRORS := TRUE + +# --- Settings ----------------------------------------------------- + +.INCLUDE : settings.mk + +.IF "$(WITH_MOZILLA)" == "NO" +@all: + @echo "Mozilla disabled -> no nss -> no libxmlsec...." +.ENDIF + +# --- Files -------------------------------------------------------- + +XMLSEC1VERSION=1.2.14 + +TARFILE_NAME=$(PRJNAME)-$(XMLSEC1VERSION) +TARFILE_MD5=1f24ab1d39f4a51faf22244c94a6203f + +#xmlsec1-configure.patch: Set up the build. Straightforward configuration +#xmlsec1-configure-libxml-libxslt.patch: empty "$with_libxml" prepends /bin :-( +#xmlsec1-olderlibxml2.patch: Allow build against older libxml2, for macosx +#xmlsec1-nssdisablecallbacks.patch: Disable use of smime3 so don't need to package it +#xmlsec1-customkeymanage.patch: Could we do this alternatively outside xmlsec +#xmlsec1-nssmangleciphers.patch: Dubious, do we still need this ? +#xmlsec1-noverify.patch: As per readme.txt. +#xmlsec1-mingw32.patch: Mingw32 support. +#xmlsec1-mingw-customkeymanage-addmscrypto.patch builds the custom keymanager on mingw +PATCH_FILES=\ + xmlsec1-configure.patch \ + xmlsec1-configure-libxml-libxslt.patch \ + xmlsec1-olderlibxml2.patch \ + xmlsec1-nssdisablecallbacks.patch \ + xmlsec1-customkeymanage.patch \ + xmlsec1-nssmangleciphers.patch \ + xmlsec1-noverify.patch \ + xmlsec1-mingw32.patch \ + xmlsec1-mingw-keymgr-mscrypto.patch + + +ADDITIONAL_FILES= \ + include$/xmlsec$/mscrypto$/akmngr.h \ + src$/mscrypto$/akmngr.c \ + include$/xmlsec$/nss$/akmngr.h \ + include$/xmlsec$/nss$/ciphers.h \ + include$/xmlsec$/nss$/tokens.h \ + src$/nss$/akmngr.c \ + src$/nss$/keywrapers.c \ + src$/nss$/tokens.c + +.IF "$(GUI)"=="WNT" +CRYPTOLIB=mscrypto +#CRYPTOLIB=nss +#BASEINC=$(SOLARVERSION)$/$(INPATH)$/inc$(UPDMINOREXT)$/mozilla;$(SOLARVERSION)$/$(INPATH)$/inc$(UPDMINOREXT)$/mozilla$/nspr;$(SOLARVERSION)$/$(INPATH)$/inc$(UPDMINOREXT)$/mozilla$/nss;$(SOLARVERSION)$/$(INPATH)$/inc$(UPDMINOREXT)$/external +#BASELIB=$(SOLARVERSION)$/$(INPATH)$/lib$(UPDMINOREXT) +.ELSE +CRYPTOLIB=nss +.ENDIF + +.IF "$(OS)"=="WNT" +.IF "$(COM)"=="GCC" +xmlsec_CC=$(CC) -mthreads +.IF "$(MINGW_SHARED_GCCLIB)"=="YES" +xmlsec_CC+=-shared-libgcc +.ENDIF +xmlsec_LIBS= +.IF "$(MINGW_SHARED_GXXLIB)"=="YES" +xmlsec_LIBS+=-lstdc++_s +.ENDIF +CONFIGURE_DIR= +CONFIGURE_ACTION=.$/configure +CONFIGURE_FLAGS=--with-libxslt=no --with-openssl=no --with-gnutls=no --with-mozilla_ver=1.7.5 --enable-mscrypto --disable-crypto-dl --build=i586-pc-mingw32 --host=i586-pc-mingw32 CC="$(xmlsec_CC)" LDFLAGS="-no-undefined -L$(ILIB:s/;/ -L/)" LIBS="$(xmlsec_LIBS)" LIBXML2LIB=$(LIBXML2LIB) ZLIB3RDLIB=$(ZLIB3RDLIB) OBJDUMP="$(WRAPCMD) objdump" + +.IF "$(SYSTEM_MOZILLA)" != "YES" +CONFIGURE_FLAGS+=--enable-pkgconfig=no +.ENDIF +BUILD_ACTION=$(GNUMAKE) -j$(EXTMAXPROCESS) +BUILD_DIR=$(CONFIGURE_DIR) +.ELSE +CONFIGURE_DIR=win32 +CONFIGURE_ACTION=cscript configure.js +.IF "$(product)"!="full" && "$(CCNUMVER)" >= "001399999999" +CONFIGURE_FLAGS=crypto=$(CRYPTOLIB) debug=yes xslt=no iconv=no static=no include=$(BASEINC) lib=$(BASELIB) +.ELSE +CONFIGURE_FLAGS=crypto=$(CRYPTOLIB) xslt=no iconv=no static=no include=$(BASEINC) lib=$(BASELIB) +.ENDIF +BUILD_ACTION=nmake +BUILD_DIR=$(CONFIGURE_DIR) +.ENDIF +.ELSE +.IF "$(GUI)"=="UNX" + +.IF "$(COM)"=="C52" && "$(CPU)"=="U" +xmlsec_CFLAGS+=-m64 +.ENDIF + +.IF "$(SYSBASE)"!="" +xmlsec_CFLAGS+=-I$(SYSBASE)$/usr$/include +.IF "$(COMNAME)"=="sunpro5" +xmlsec_CFLAGS+=$(C_RESTRICTIONFLAGS) +.ENDIF # "$(COMNAME)"=="sunpro5" +.IF "$(EXTRA_CFLAGS)"!="" +xmlsec_CFLAGS+=$(EXTRA_CFLAGS) +xmlsec_CPPFLAGS+=$(EXTRA_CFLAGS) +.ENDIF # "$(EXTRA_CFLAGS)"!="" +xmlsec_LDFLAGS+=-L$(SYSBASE)$/usr$/lib +.ELIF "$(OS)"=="MACOSX" # "$(SYSBASE)"!="" +xmlsec_CPPFLAGS+=$(EXTRA_CDEFS) +.ENDIF + +.IF "$(OS)$(COM)"=="LINUXGCC" || "$(OS)$(COM)"=="FREEBSDGCC" +xmlsec_LDFLAGS+=-Wl,-rpath,'$$$$ORIGIN:$$$$ORIGIN/../ure-link/lib' +.ENDIF # "$(OS)$(COM)"=="LINUXGCC" +.IF "$(OS)$(COM)"=="SOLARISC52" +xmlsec_LDFLAGS+=-Wl,-R'$$$$ORIGIN:$$$$ORIGIN/../ure-link/lib' +.ENDIF # "$(OS)$(COM)"=="SOLARISC52" + +LDFLAGS:=$(xmlsec_LDFLAGS) +.EXPORT: LDFLAGS + +.ENDIF +CONFIGURE_DIR= +CONFIGURE_ACTION=.$/configure ADDCFLAGS="$(xmlsec_CFLAGS)" CPPFLAGS="$(xmlsec_CPPFLAGS)" +CONFIGURE_FLAGS=--with-pic --disable-shared --disable-crypto-dl --with-libxslt=no --with-openssl=no --with-gnutls=no LIBXML2LIB="$(LIBXML2LIB)" +# system-mozilla needs pkgconfig to get the information about nss +# FIXME: This also will enable pkg-config usage for libxml2. It *seems* +# that the internal headers still are used when they are there but.... +# (and that pkg-config is allowed to fail...) +# I have no real good idea how to get mozilla (nss) pkg-config'ed and libxml2 +# not... We need mozilla-nss pkg-config'ed since we can *not* just use +# --with-nss or parse -pkg-config --libs / cflags mozilla-nss since +# the lib may a) be in /usr/lib (Debian) and be not in $with_nss/include +# $with_nss/lib. +.IF "$(SYSTEM_MOZILLA)" != "YES" +CONFIGURE_FLAGS+=--enable-pkgconfig=no +.ENDIF +BUILD_ACTION=$(GNUMAKE) -j$(EXTMAXPROCESS) +BUILD_DIR=$(CONFIGURE_DIR) +.ENDIF + + +OUTDIR2INC=include$/xmlsec + +.IF "$(OS)"=="WNT" +.IF "$(COM)"=="GCC" +OUT2LIB+=src$/.libs$/libxmlsec1.dll.a src$/nss$/.libs$/libxmlsec1-nss.dll.a src$/mscrypto$/.libs$/libxmlsec1-mscrypto.dll.a +OUT2BIN+=src$/.libs$/libxmlsec1.dll src$/nss$/.libs$/libxmlsec1-nss.dll src$/mscrypto$/.libs$/libxmlsec1-mscrypto.dll +.ELSE +OUT2LIB+=win32$/binaries$/*.lib +OUT2BIN+=win32$/binaries$/*.dll +.ENDIF +.ELSE +OUT2LIB+=src$/.libs$/libxmlsec1.a src$/nss$/.libs$/libxmlsec1-nss.a +.ENDIF + +# --- Targets ------------------------------------------------------ + +.INCLUDE : set_ext.mk +.INCLUDE : target.mk +.INCLUDE : tg_ext.mk + + |