Always compile `NSNetService` and `NSNetServiceBrowser`, but have their
`intialize` method return `nil` if libavahi and mDNS are unavailable.
This:
- Results in a clear error message if code which was compiled against a
copy of GNUstep with avahi/mDNS support runs on a copy of GNUstep which
doesn't have avahi/mDNS support.
- Avoids code which uses `NSNetService` or `NSNetServiceBrowser` to
successfully compile (because the classes are defined in the header)
but then failing to link (because there is no implementation for these
classes).
This commit generates a `gnustep-base.pc` file which is installed in `/lib/pkgconfig` and contains the GNUstep base version number, the libraries to link (equivalent to `gnustep-config --base-libs`) with and the C flags to use (equivalent to `gnustep-config --objc-flags`).
* Source/GNUmakefile: Remove reference to NSMetadata.m
* Source/NSMetadata.m: Remove from here and add OS specific
implementations.
* Source/unix/GNUmakefile: Add new file...
* Source/unix/NSMetadata.m: UNIX implementation...
* Source/win32/GNUmakefile: Add new file..
* Source/win32/NSMetadata.m: Windows implementation.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35932 72102866-910b-0410-8b05-ffd578937521
* Source/GNUmakefile: Change name to NSMetadata.[hm].
* Source/NSMetadata.m: Add new file with correct name.
* Source/NSMetadataQuery.m: Remove old file.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35804 72102866-910b-0410-8b05-ffd578937521
include list.
* Headers/Foundation/NSMetadataQuery.h: New header for class.
* Source/GNUmakefile: Add NSMetadataQuery.[hm] to makefile.
* Source/NSMetadataQuery.m: Abstract implementation for
NSMetdataQuery. The idea is much like NSFileStream and other
classes which have operating system specific implementations.
On linux this will, most likely, interface with locate/slocate.
I'm not certain what it will talk to on Win32.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35803 72102866-910b-0410-8b05-ffd578937521
interface that can be used for all sorting tasks in the library. The actual sort
algorithms to use are now plugable. Timsort is the new default sorting
algorithm, the existing algorithms, shellsort and quicksort, can still be
selected using a configure switch.
Also implement the new NSComparator (blocks) based sorting and insertion index
searching methods for NSMutableArray and NSArray.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35573 72102866-910b-0410-8b05-ffd578937521
* Headers/Foundation/NSScriptWhoseTests.h
* Source/GNUmakefile
* Source/NSObject+NSComparisonMethods.m: Move the
comparison methods to the header for NSScriptWhoseTests.h,
but don't define the abstract class since we don't support
Apple script.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35570 72102866-910b-0410-8b05-ffd578937521