Alterations for build consistency

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34966 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Richard Frith-MacDonald 2012-03-21 08:00:33 +00:00
parent c6df5dc455
commit 8f42e7c2f8
8 changed files with 17304 additions and 2986 deletions

View file

@ -1,3 +1,17 @@
2012-03-21 Richard Frith-Macdonald <rfm@gnu.org>
* Source/NSXMLDocument.m:
* Source/NSXMLDTD.m:
* Source/NSXMLNode.m:
* Source/NSXMLDTDNode.m:
* Source/NSXMLElement.m:
Bracket everything in test of HAVE_LIBXML2
* configure.ac:
* configure:
Alter tests for major dependencies (ICU, XML, TLS) so that they all
abort configuration unless specifically disabled ... we want a
consistent build with all major features.
2012-03-20 Niels Grewe <niels.grewe@halbordnung.de>
* Headers/Foundation/NSObjCRuntime.h: Define NS_REQUIRES_NIL_TERMINATION
macro.

View file

@ -24,6 +24,8 @@
#import "common.h"
#if defined(HAVE_LIBXML)
#define GS_XMLNODETYPE xmlDtd
#define GSInternal NSXMLDTDInternal
@ -323,3 +325,4 @@ GS_PRIVATE_INTERNAL(NSXMLDTD)
@end
#endif /* HAVE_LIBXML */

View file

@ -24,6 +24,8 @@
#import "common.h"
#if defined(HAVE_LIBXML)
#define GS_XMLNODETYPE xmlEntity
#define GSInternal NSXMLDTDNodeInternal
@ -54,8 +56,8 @@ GS_PRIVATE_INTERNAL(NSXMLDTDNode)
- (id) initWithKind: (NSXMLNodeKind)kind options: (NSUInteger)theOptions
{
if (NSXMLEntityDeclarationKind == kind
|| NSXMLElementDeclarationKind == kind
|| NSXMLNotationDeclarationKind == kind)
|| NSXMLElementDeclarationKind == kind
|| NSXMLNotationDeclarationKind == kind)
{
return [super initWithKind: kind options: theOptions];
}
@ -132,3 +134,4 @@ GS_PRIVATE_INTERNAL(NSXMLDTDNode)
@end
#endif /* HAVE_LIBXML */

View file

@ -25,6 +25,8 @@
#import "common.h"
#if defined(HAVE_LIBXML)
#define GS_XMLNODETYPE xmlDoc
#define GSInternal NSXMLDocumentInternal
@ -36,8 +38,6 @@ GS_PRIVATE_INTERNAL(NSXMLDocument)
//#import <Foundation/NSXMLParser.h>
#import <Foundation/NSError.h>
#if defined(HAVE_LIBXML)
@implementation NSXMLDocument
+ (Class) replacementClassForClass: (Class)cls

View file

@ -24,6 +24,8 @@
#import "common.h"
#if defined(HAVE_LIBXML)
#define GSInternal NSXMLElementInternal
#define GS_XMLNODETYPE xmlNode
@ -31,8 +33,6 @@
#import "GSInternal.h"
GS_PRIVATE_INTERNAL(NSXMLElement)
#if defined(HAVE_LIBXML)
@implementation NSXMLElement
- (void) dealloc
@ -573,4 +573,4 @@ joinTextNodes(xmlNodePtr nodeA, xmlNodePtr nodeB, NSMutableArray *nodesToDelete)
@end
#endif
#endif /* HAVE_LIBXML */

View file

@ -24,6 +24,8 @@
#import "common.h"
#if defined(HAVE_LIBXML)
#define GSInternal NSXMLNodeInternal
#define GS_XMLNODETYPE xmlNode
@ -31,8 +33,6 @@
#import "GSInternal.h"
GS_PRIVATE_INTERNAL(NSXMLNode)
#if defined(HAVE_LIBXML)
static int
countAttributes(xmlNodePtr node)
{
@ -1656,4 +1656,4 @@ execute_xpath(NSXMLNode *xmlNode, NSString *xpath_exp, NSString *nmspaces)
}
@end
#endif
#endif /* HAVE_LIBXML */

20204
configure vendored

File diff suppressed because it is too large Load diff

View file

@ -40,6 +40,11 @@
# The configure script should support a --disable-xxx option in such a case,
# where 'xxx' is the name of the dependency.
#
# If a major dependency is NOT specifically disabled, the configuration
# process must fail with an error message ... all builds of gnustep-base
# should support all expected functionality unless the person configuring
# and building is very certain they don't want it.
#
# Where a dependency is introduced this script should do this by setting
# HAVE_XXX to 1 or 0 and calling AC_SUBST(XXX) to substitute the information
# into the make files:
@ -2771,8 +2776,8 @@ if test $found_iconv = no ; then
fi
#--------------------------------------------------------------------
# Check recent libxml for Properytlists, GSXML, GSDoc etc.
# See DEPENDENCIES POLICY at the start of thsi file.
# Check recent libxml2 for GSXML and NSXMLNode
# See DEPENDENCIES POLICY at the start of this file.
#--------------------------------------------------------------------
AC_ARG_ENABLE(xml,
[ --disable-xml Compile even if XML-dependencies are not met],,
@ -2813,11 +2818,11 @@ if test $enable_xml = yes; then
LIBS="-lxslt $LIBS"
else
echo
echo "You may not want to build base without XSLT support."
echo "Doing so will disable the XSLT extensions."
echo "If you really want to build -base without XSLT support,"
echo "You do not appear to have usable libxslt headers/library."
echo "Building without them will disable the XSLT extensions."
echo "If you really want to build gnustep-base without XSLT support,"
echo "add --disable-xslt to the configure arguments."
AC_MSG_WARN([Missing support for XSLT functionality.])
AC_MSG_ERROR([Missing support for XSLT functionality.])
fi
else
HAVE_LIBXSLT=0
@ -2830,11 +2835,12 @@ if test $enable_xml = yes; then
LIBS="$saved_LIBS"
CFLAGS="$saved_CFLAGS"
echo
echo "You may not want to build base without libxml2."
echo "Doing so will disable the XML, XPATH, and XMLRPC extensions."
echo "If you really want to build -base without XML support,"
echo "You do not appear to have usable libxml2 headers/library."
echo "Building without them will disable the GSXML and NSXMLNode."
echo "If you really want to build gnustep-base without XML DOM support"
echo " (though NSXMLParser is unaffected), please"
echo "add --disable-xml to the configure arguments."
AC_MSG_ERROR([Missing support for XML functionality.])
AC_MSG_ERROR([Missing support for XML DOM functionality.])
fi
else
AC_MSG_WARN([Disabled support for XML funtionality.])
@ -2889,12 +2895,13 @@ if test $enable_tls = yes; then
LIBS="$saved_LIBS"
CFLAGS="$saved_CFLAGS"
AC_MSG_RESULT(no)
AC_MSG_WARN([Missing support for TLS functionality.])
echo
echo "You may not want to build base without libgnutls."
echo "Doing so will disable SSL support in the NSStream class."
echo "If you really want to build -base without TLS support,"
echo "You do not appear to have usable libgnutls headers/library."
echo "Building without them will disable SSL/TLS/HTTPS in NSStream"
echo "and NSConnection."
echo "If you really want to build gnustep-base without TLS support,"
echo "add --disable-tls to the configure arguments."
AC_MSG_ERROR([Missing support for TLS functionality.])
else
AC_MSG_RESULT(yes)
CPPFLAGS="$CPPFLAGS $TLS_CFLAGS"
@ -2916,7 +2923,7 @@ AC_SUBST(HAVE_GNUTLS)
#--------------------------------------------------------------------
# Check for NSNetServices
# See DEPENDENCIES POLICY at the start of thsi file.
# See DEPENDENCIES POLICY at the start of this file.
#--------------------------------------------------------------------
HAVE_MDNS=0
HAVE_AVAHI=0
@ -2961,7 +2968,7 @@ AC_SUBST(HAVE_MDNS)
AC_SUBST(HAVE_AVAHI)
#--------------------------------------------------------------------
# Check for International Components for Unicode
# See DEPENDENCIES POLICY at the start of thsi file.
# See DEPENDENCIES POLICY at the start of this file.
#--------------------------------------------------------------------
HAVE_ICU=0
AC_ARG_ENABLE(icu,
@ -2979,7 +2986,12 @@ if test $enable_icu = yes; then
HAVE_ICU=1
else
AC_MSG_RESULT(no)
AC_MSG_WARN([The International Components for Unicode (ICU) development headers and libraries do not appear to be available on this system. Please install them and re-run configure. If you do not do this gnustep-base will build but will have important functionality missing!])
echo
echo "You do not appear to have usable ICU headers/libraries."
echo "Building without them will disable major functionality."
echo "If you really want to build gnustep-base without ICU,"
echo "add --disable-icu to the configure arguments."
AC_MSG_ERROR([Missing support for International Components for Unicode (ICU).])
fi
fi
AC_SUBST(HAVE_ICU)