mirror of
https://github.com/gnustep/libs-base.git
synced 2025-04-26 18:21:04 +00:00
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@2011 72102866-910b-0410-8b05-ffd578937521
697 lines
17 KiB
Makefile
697 lines
17 KiB
Makefile
# @configure_input@
|
||
#
|
||
# src makefile for GNU Objective-C Class library
|
||
# Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
|
||
#
|
||
# Written by: Andrew Kachites McCallum <mccallum@gnu.ai.mit.edu>
|
||
#
|
||
# This file is part of the GNU Objective-C Class library.
|
||
#
|
||
# This library is free software; you can redistribute it and/or
|
||
# modify it under the terms of the GNU Library General Public
|
||
# License as published by the Free Software Foundation; either
|
||
# version 2 of the License, or (at your option) any later version.
|
||
#
|
||
# This library 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
|
||
# Library General Public License for more details.
|
||
#
|
||
# You should have received a copy of the GNU Library General Public
|
||
# License along with this library; if not, write to the Free
|
||
# Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||
|
||
SHELL = /bin/sh
|
||
|
||
#### Start of system configuration section. ####
|
||
|
||
srcdir = @srcdir@
|
||
VPATH = @srcdir@
|
||
|
||
# Installation locations
|
||
prefix = @prefix@
|
||
exec_prefix = @exec_prefix@
|
||
libdir = $(exec_prefix)/lib
|
||
includedir = $(prefix)/include
|
||
|
||
CC = @CC@ -pipe
|
||
RANLIB = @RANLIB@
|
||
INSTALL = @INSTALL@
|
||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||
INSTALL_DATA = @INSTALL_DATA@
|
||
AR = ar
|
||
AROUT =
|
||
ARFLAGS = rc
|
||
LN_S = @LN_S@
|
||
MAKEINFO = makeinfo
|
||
TEXI2DVI = texi2dvi
|
||
LEX = flex
|
||
LEXFLAGS =
|
||
YACC = bison
|
||
|
||
# GNUSTEP_INSTALL_PREFIX must be defined here and not in config.h because
|
||
# the installing person may set it on the `make' command line.
|
||
DEFS = -DGNUSTEP_INSTALL_PREFIX=$(prefix) @DEFS@
|
||
|
||
# File name extensions
|
||
OEXT = .o
|
||
EXEEXT =
|
||
LIBEXT = .a
|
||
|
||
# All these are optional. You can redefine CFLAGS, CPPFLAGS and
|
||
# INCLUDEFLAGS on the command line however you like.
|
||
CFLAGS = -g -O -Wall -Wno-implicit
|
||
CPPFLAGS =
|
||
INCLUDEFLAGS =
|
||
|
||
#### End of system configuration section. ####
|
||
|
||
include $(srcdir)/../Makeconf
|
||
include $(srcdir)/../Version
|
||
|
||
# Grep for these names to build the legally-required "AUTHORS" file.
|
||
FILE_AUTHORS = \
|
||
"Andrew Kachites McCallum" \
|
||
"Kresten Krab Thorup" \
|
||
"Adam Fedor" \
|
||
"Mark Lakata" \
|
||
"Jeremy Bettis" \
|
||
"Georg Tuparev" \
|
||
"Peter Burka" \
|
||
"Albin L. Jones" \
|
||
"Scott Christley"
|
||
|
||
DYNAMIC_LINKER=@DYNAMIC_LINKER@
|
||
|
||
# Flags to pass to $(CC) for making a shared library
|
||
CFLAGS_SHAREDLIB_GNU = \
|
||
-shared -Wl,-soname,lib$(LIBRARY_NAME).so.$(MAJOR_VERSION)
|
||
CFLAGS_SHAREDLIB_SOLARIS = -G
|
||
CFLAGS_SHAREDLIB = @CFLAGS_SHAREDLIB@
|
||
|
||
NEXT_NEXT_INCLUDES = -I/usr/include
|
||
GNU_NEXT_INCLUDES = -I$(srcdir)
|
||
NEXT_INCLUDES = @NEXT_INCLUDES@
|
||
|
||
ALL_INCLUDE_FLAGS = -I. -I./srcdir-include $(NEXT_INCLUDES) $(INCLUDEFLAGS)
|
||
ALL_CPPFLAGS = $(ALL_INCLUDE_FLAGS) $(CPPFLAGS)
|
||
ALL_CFLAGS = $(CFLAGS)
|
||
ALL_OBJCFLAGS = $(CFLAGS) -Wno-protocol
|
||
|
||
# definitions to be passed to subdir Makefile's
|
||
MAKEDEFINES = CC='$(CC)' CFLAGS='$(CFLAGS)' CPPFLAGS='$(CPPFLAGS)' \
|
||
INCLUDEFLAGS='$(INCLUDEFLAGS)' DEFS='$(DEFS)'
|
||
|
||
.SUFFIXES: .m
|
||
.m${OEXT}:
|
||
$(CC) -c $(ALL_CPPFLAGS) $(DEFS) $(ALL_OBJCFLAGS) -o $@ $<
|
||
.c${OEXT}:
|
||
$(CC) -c $(ALL_CPPFLAGS) $(DEFS) $(ALL_CFLAGS) -o $@ $<
|
||
%_pic${OEXT}: %.m
|
||
$(CC) -c $(ALL_CPPFLAGS) -fPIC -DPIC $(DEFS) \
|
||
$(ALL_OBJCFLAGS) -o $@ $<
|
||
%_pic${OEXT}: %.c
|
||
$(CC) -c $(ALL_CPPFLAGS) -fPIC -DPIC $(DEFS) \
|
||
$(ALL_CFLAGS) -o $@ $<
|
||
|
||
# GNU Class source files
|
||
#RetainingNotifier.m \
|
||
|
||
GNU_MFILES = \
|
||
Archiver.m \
|
||
Array.m \
|
||
Bag.m \
|
||
BinaryCStream.m \
|
||
BinaryTree.m \
|
||
BinaryTreeNode.m \
|
||
CircularArray.m \
|
||
Collection.m \
|
||
ConnectedCoder.m \
|
||
Coder.m \
|
||
Connection.m \
|
||
CStream.m \
|
||
Decoder.m \
|
||
DelegatePool.m \
|
||
Dictionary.m \
|
||
Encoder.m \
|
||
GapArray.m \
|
||
Heap.m \
|
||
IndexedCollection.m \
|
||
Invocation.m \
|
||
KeyedCollection.m \
|
||
LinkedList.m \
|
||
LinkedListNode.m \
|
||
Lock.m \
|
||
MachPort.m \
|
||
Magnitude.m \
|
||
MallocAddress.m \
|
||
MappedCollector.m \
|
||
MemoryStream.m \
|
||
Notification.m \
|
||
NotificationDispatcher.m \
|
||
OrderedCollection.m \
|
||
Port.m \
|
||
Proxy.m \
|
||
Queue.m \
|
||
Random.m \
|
||
RawCStream.m \
|
||
RBTree.m \
|
||
RBTreeNode.m \
|
||
RNGAdditiveCongruential.m \
|
||
RNGBerkeley.m \
|
||
RunLoop.m \
|
||
Set.m \
|
||
SplayTree.m \
|
||
Stack.m \
|
||
StdioStream.m \
|
||
Stream.m \
|
||
TcpPort.m \
|
||
TextCStream.m \
|
||
Time.m \
|
||
UdpPort.m \
|
||
behavior.m \
|
||
lex.pl.m \
|
||
lex.sf.m \
|
||
ostream.m \
|
||
o_array.m \
|
||
o_array_bas.m \
|
||
o_array_cbs.m \
|
||
o_cbs.m \
|
||
o_cbs_char_p.m \
|
||
o_cbs_id.m \
|
||
o_cbs_int.m \
|
||
o_cbs_int_p.m \
|
||
o_cbs_void_p.m \
|
||
o_hash.m \
|
||
o_hash_bas.m \
|
||
o_hash_cbs.m \
|
||
o_list.m \
|
||
o_list_bas.m \
|
||
o_list_cbs.m \
|
||
o_map.m \
|
||
o_map_bas.m \
|
||
o_map_cbs.m \
|
||
preface.m \
|
||
proplist.tab.m \
|
||
stringsfile.tab.m \
|
||
mframe.m \
|
||
objc-gnu2next.m
|
||
|
||
GNU_CFILES = \
|
||
md5.c \
|
||
numbers.c \
|
||
o_vscanf.c
|
||
|
||
GNU_OTHER_SRCFILES = \
|
||
o_x_bas.m.in \
|
||
o_x_cbs.m.in \
|
||
include/o_x_bas.h.in \
|
||
include/o_x_cbs.h.in \
|
||
md5.h \
|
||
proplist.l \
|
||
proplist.tab.h \
|
||
proplist.y \
|
||
stringsfile.l \
|
||
stringsfile.tab.h \
|
||
stringsfile.y \
|
||
win32-entry.c \
|
||
win32-def.top
|
||
|
||
GNU_OBJS = \
|
||
$(GNU_MFILES:.m=${OEXT}) \
|
||
$(GNU_CFILES:.c=${OEXT})
|
||
|
||
GNU_HEADERS = \
|
||
include/Archiver.h \
|
||
include/Array.h \
|
||
include/ArrayPrivate.h \
|
||
include/Bag.h \
|
||
include/BinaryCStream.h \
|
||
include/BinaryTree.h \
|
||
include/BinaryTreeNode.h \
|
||
include/CircularArray.h \
|
||
include/CircularArrayPrivate.h \
|
||
include/Coder.h \
|
||
include/CoderPrivate.h \
|
||
include/Coding.h \
|
||
include/Collecting.h \
|
||
include/Collection.h \
|
||
include/CollectionPrivate.h \
|
||
include/ConnectedCoder.h \
|
||
include/Connection.h \
|
||
include/CStream.h \
|
||
include/CStreaming.h \
|
||
include/DelegatePool.h \
|
||
include/Dictionary.h \
|
||
include/Enumerating.h \
|
||
include/GapArray.h \
|
||
include/GapArrayPrivate.h \
|
||
include/Heap.h \
|
||
include/IndexedCollecting.h \
|
||
include/IndexedCollection.h \
|
||
include/IndexedCollectionPrivate.h \
|
||
include/InvalidationListening.h \
|
||
include/Invocation.h \
|
||
include/Invoking.h \
|
||
include/KeyedCollecting.h \
|
||
include/KeyedCollection.h \
|
||
include/LinkedList.h \
|
||
include/LinkedListNode.h \
|
||
include/Lock.h \
|
||
include/Locking.h \
|
||
include/MachPort.h \
|
||
include/Magnitude.h \
|
||
include/MallocAddress.h \
|
||
include/MappedCollector.h \
|
||
include/MemoryStream.h \
|
||
include/Notification.h \
|
||
include/NotificationDispatcher.h \
|
||
include/Ordering.h \
|
||
include/OrderedCollecting.h \
|
||
include/OrderedCollection.h \
|
||
include/Port.h \
|
||
include/Proxy.h \
|
||
include/Queue.h \
|
||
include/RBTree.h \
|
||
include/RBTreeNode.h \
|
||
include/RNGAdditiveCongruential.h \
|
||
include/RNGBerkeley.h \
|
||
include/Random.h \
|
||
include/RandomGenerating.h \
|
||
include/RawCStream.h \
|
||
include/Retaining.h \
|
||
include/RetainingNotifier.h \
|
||
include/RunLoop.h \
|
||
include/Set.h \
|
||
include/SplayTree.h \
|
||
include/Stack.h \
|
||
include/StdioStream.h \
|
||
include/Stream.h \
|
||
include/Streaming.h \
|
||
include/TcpPort.h \
|
||
include/TextCStream.h \
|
||
include/Time.h \
|
||
include/UdpPort.h \
|
||
include/ValueHolding.h \
|
||
include/behavior.h \
|
||
include/fake-main.h \
|
||
include/mframe.h \
|
||
include/numbers.h \
|
||
include/ostream.h \
|
||
include/o_array.h \
|
||
include/o_array_bas.h \
|
||
include/o_array_cbs.h \
|
||
include/o_cbs.h \
|
||
include/o_hash.h \
|
||
include/o_hash_bas.h \
|
||
include/o_hash_cbs.h \
|
||
include/o_list.h \
|
||
include/o_list_bas.h \
|
||
include/o_list_cbs.h \
|
||
include/o_map.h \
|
||
include/o_map_bas.h \
|
||
include/o_map_cbs.h \
|
||
include/objc-gnu2next.h \
|
||
include/all.h \
|
||
include/README
|
||
|
||
# NEXTSTEP source files
|
||
|
||
NEXTSTEP_MFILES = \
|
||
HashTable.m \
|
||
List.m \
|
||
NXStringTable.m \
|
||
Storage.m
|
||
|
||
NEXTSTEP_CFILES =
|
||
|
||
NEXTSTEP_DERIVED_CFILES = \
|
||
NXStringTable_scan.c
|
||
|
||
NEXTSTEP_OTHER_SRCFILES = \
|
||
NXStringTable_scan.l
|
||
|
||
NEXTSTEP_OBJS = \
|
||
$(NEXTSTEP_MFILES:.m=${OEXT}) \
|
||
$(NEXTSTEP_CFILES:.c=${OEXT}) \
|
||
$(NEXTSTEP_DERIVED_CFILES:.c=${OEXT})
|
||
|
||
NEXTSTEP_HEADERS = \
|
||
objc/HashTable.h \
|
||
objc/List.h \
|
||
objc/NXStringTable.h \
|
||
objc/Storage.h \
|
||
objc/zone.h
|
||
|
||
# GNUStep source files
|
||
|
||
GNUSTEP_MFILES = \
|
||
NSAllocateObject.m \
|
||
NSArchiver.m \
|
||
NSArray.m \
|
||
NSAssertionHandler.m \
|
||
NSAutoreleasePool.m \
|
||
NSBitmapCharSet.m \
|
||
NSBundle.m \
|
||
NSCalendarDate.m \
|
||
NSCallBacks.m \
|
||
NSCharacterSet.m \
|
||
NSCoder.m \
|
||
NSCopyObject.m \
|
||
NSConcreteValue.m \
|
||
NSCountedSet.m \
|
||
NSData.m \
|
||
NSDate.m \
|
||
NSDeallocateObject.m \
|
||
NSDictionary.m \
|
||
NSEnumerator.m \
|
||
NSException.m \
|
||
NSGeometry.m \
|
||
NSGArchiver.m \
|
||
NSGArray.m \
|
||
NSGCountedSet.m \
|
||
NSGCString.m \
|
||
NSGData.m \
|
||
NSGDictionary.m \
|
||
NSGSet.m \
|
||
NSHashTable.m \
|
||
NSInvocation.m \
|
||
NSLock.m \
|
||
NSLog.m \
|
||
NSMapTable.m \
|
||
NSMethodSignature.m \
|
||
NSNotification.m \
|
||
NSNotificationCenter.m \
|
||
NSNumber.m \
|
||
NSObjCRuntime.m \
|
||
NSObject.m \
|
||
NSPage.m \
|
||
NSProcessInfo.m \
|
||
NSRange.m \
|
||
NSRunLoop.m \
|
||
NSScanner.m \
|
||
NSSet.m \
|
||
NSString.m \
|
||
NSThread.m \
|
||
NSTimer.m \
|
||
NSTimeZone.m \
|
||
NSUser.m \
|
||
NSUserDefaults.m \
|
||
NSValue.m \
|
||
NSZone.m
|
||
|
||
NSVALUE_MFILES = \
|
||
NSValue0.m NSValue1.m NSValue2.m NSValue3.m \
|
||
NSValue4.m
|
||
NSNUMBER_MFILES = \
|
||
NSNumber0.m NSNumber1.m NSNumber2.m NSNumber3.m \
|
||
NSNumber4.m NSNumber5.m NSNumber6.m NSNumber7.m \
|
||
NSNumber8.m NSNumber9.m NSNumber10.m NSNumber11.m \
|
||
NSNumber12.m
|
||
|
||
GNUSTEP_CFILES = \
|
||
find_exec.c \
|
||
objc-load.c
|
||
|
||
GNUSTEP_OTHER_SRCFILES = \
|
||
NSConcreteNumber.m \
|
||
NSCTemplateValue.m \
|
||
dld-load.h \
|
||
hpux-load.h \
|
||
null-load.h \
|
||
simple-load.h \
|
||
NSCallBacks.h
|
||
|
||
GNUSTEP_OBJS = \
|
||
$(GNUSTEP_MFILES:.m=${OEXT}) \
|
||
$(GNUSTEP_CFILES:.c=${OEXT}) \
|
||
$(NSVALUE_MFILES:.m=${OEXT}) \
|
||
$(NSNUMBER_MFILES:.m=${OEXT})
|
||
|
||
GNUSTEP_HEADERS = \
|
||
include/NSArchiver.h \
|
||
include/NSArray.h \
|
||
include/NSAutoreleasePool.h \
|
||
include/NSBitmapCharSet.h \
|
||
include/NSBundle.h \
|
||
include/NSCharacterSet.h \
|
||
include/NSCoder.h \
|
||
include/NSConcreteNumber.h \
|
||
include/NSConcreteValue.h \
|
||
include/NSData.h \
|
||
include/NSDate.h \
|
||
include/NSDictionary.h \
|
||
include/NSException.h \
|
||
include/NSGeometry.h \
|
||
include/NSGArchiver.h \
|
||
include/NSGArray.h \
|
||
include/NSGCString.h \
|
||
include/NSGData.h \
|
||
include/NSGDictionary.h \
|
||
include/NSGSet.h \
|
||
include/NSHashTable.h \
|
||
include/NSInvocation.h \
|
||
include/NSLock.h \
|
||
include/NSMapTable.h \
|
||
include/NSMethodSignature.h \
|
||
include/NSNotification.h \
|
||
include/NSObjCRuntime.h \
|
||
include/NSObject.h \
|
||
include/NSPathUtilities.h \
|
||
include/NSProcessInfo.h \
|
||
include/NSRange.h \
|
||
include/NSRunLoop.h \
|
||
include/NSScanner.h \
|
||
include/NSSerialization.h \
|
||
include/NSSet.h \
|
||
include/NSString.h \
|
||
include/NSThread.h \
|
||
include/NSTimer.h \
|
||
include/NSUserDefaults.h \
|
||
include/NSUtilities.h \
|
||
include/NSValue.h \
|
||
include/NSZone.h \
|
||
include/objc-load.h
|
||
|
||
HEADERS_INSTALL = @HEADERS_INSTALL@ \
|
||
include/preface.h \
|
||
include/config.h
|
||
OBJS_INSTALL = @OBJS_INSTALL@
|
||
OBJS_INSTALL_PIC = $(OBJS_INSTALL:${OEXT}=_pic${OEXT})
|
||
|
||
DIST_FILES = \
|
||
Makefile.in AUTHORS Makefile.sed.nt \
|
||
include/config.h.in include/preface.h.in \
|
||
include/config-win32.h \
|
||
$(GNU_MFILES) \
|
||
$(GNU_CFILES) \
|
||
$(GNU_HEADERS) \
|
||
$(GNU_OTHER_SRCFILES) \
|
||
$(NEXTSTEP_MFILES) \
|
||
$(NEXTSTEP_CFILES) \
|
||
$(NEXTSTEP_DERIVED_CFILES) \
|
||
$(NEXTSTEP_HEADERS) \
|
||
$(NEXTSTEP_OTHER_SRCFILES) \
|
||
$(GNUSTEP_MFILES) \
|
||
$(GNUSTEP_CFILES) \
|
||
$(GNUSTEP_HEADERS) \
|
||
$(GNUSTEP_OTHER_SRCFILES)
|
||
|
||
|
||
# Targets
|
||
|
||
all: gnustep/base Foundation lib$(LIBRARY_NAME)$(LIBEXT) @SHARED_LIBRARY@
|
||
|
||
lib$(LIBRARY_NAME).so.$(VERSION): $(HEADERS_INSTALL) $(OBJS_INSTALL_PIC)
|
||
$(CC) -o lib$(LIBRARY_NAME).so.$(VERSION) $(CFLAGS_SHAREDLIB) \
|
||
$(OBJS_INSTALL_PIC)
|
||
rm -f lib$(LIBRARY_NAME).so.$(MAJOR_VERSION)
|
||
rm -f lib$(LIBRARY_NAME).so
|
||
ln -s lib$(LIBRARY_NAME).so.$(VERSION) \
|
||
lib$(LIBRARY_NAME).so.$(MAJOR_VERSION)
|
||
ln -s lib$(LIBRARY_NAME).so.$(MAJOR_VERSION) \
|
||
lib$(LIBRARY_NAME).so
|
||
|
||
lib$(LIBRARY_NAME)$(LIBEXT): $(HEADERS_INSTALL) $(OBJS_INSTALL)
|
||
$(AR) $(ARFLAGS) $(AROUT)lib$(LIBRARY_NAME)$(LIBEXT) $(OBJS_INSTALL)
|
||
$(RANLIB) lib$(LIBRARY_NAME)$(LIBEXT)
|
||
|
||
# Local links to the include files
|
||
gnustep/base:
|
||
rm -f gnustep base
|
||
ln -s . gnustep
|
||
ln -s ./include base
|
||
# Make necessary links to source headers if compiling in seperate dir
|
||
# These are separate directories because one contains the .h files
|
||
# generated during the build; the other contains the unchanged sources.
|
||
if [ ! -r ./include/Collection.h ]; then \
|
||
mkdir srcdir-include; \
|
||
mkdir srcdir-include/gnustep; \
|
||
(cd srcdir-include/gnustep; ln -s ../../$(srcdir)/include ./base) ; \
|
||
(cd srcdir-include; ln -s ../$(srcdir)/include ./Foundation) ; \
|
||
fi
|
||
# This deletion is necessary, because the CVS repository contains
|
||
# an emtpy `Foundation' directory that used to hold the OpenStep headers.
|
||
Foundation: ../configure
|
||
rm -rf Foundation
|
||
ln -s $(srcdir)/include Foundation
|
||
|
||
install: installdirs all
|
||
# Install the library
|
||
$(INSTALL_DATA) lib$(LIBRARY_NAME)$(LIBEXT) $(libdir)
|
||
$(RANLIB) $(libdir)/lib$(LIBRARY_NAME)$(LIBEXT); \
|
||
if [ -n "@SHARED_LIBRARY@" ]; then \
|
||
$(INSTALL_DATA) lib$(LIBRARY_NAME).so.$(VERSION) $(libdir) ; \
|
||
rm -f $(libdir)/lib$(LIBRARY_NAME).so.$(MAJOR_VERSION) ; \
|
||
rm -f $(libdir)/lib$(LIBRARY_NAME).so ; \
|
||
ln -s $(libdir)/lib$(LIBRARY_NAME).so.$(VERSION) \
|
||
$(libdir)/lib$(LIBRARY_NAME).so.$(MAJOR_VERSION) ; \
|
||
ln -s $(libdir)/lib$(LIBRARY_NAME).so.$(MAJOR_VERSION) \
|
||
$(libdir)/lib$(LIBRARY_NAME).so ; \
|
||
fi
|
||
# Install the headers
|
||
for file in $(HEADERS_INSTALL); do \
|
||
$(INSTALL_DATA) $(srcdir)/$$file \
|
||
$(includedir)/gnustep/base/`basename $$file` ; \
|
||
done
|
||
cd $(includedir); rm -f Foundation; ln -s ./gnustep/base ./Foundation
|
||
cd $(includedir); rm -f objc; ln -s ./gnustep/base ./objc
|
||
cd $(includedir)/objc; rm -f README; ln -s ../include/README .
|
||
|
||
installdirs:
|
||
$(srcdir)/../mkinstalldirs \
|
||
$(libdir) \
|
||
$(includedir)/gnustep/base
|
||
|
||
uninstall:
|
||
rm -f $(libdir)/lib$(LIBRARY_NAME)$(LIBEXT)
|
||
rm -rf $(includedir)/gnustep/base
|
||
rm -f $(includedir)/Foundation
|
||
|
||
# Creation of NSValue and NSNumber concrete classes from templates
|
||
$(NSVALUE_MFILES) : NSCTemplateValue.m
|
||
rm -f $@
|
||
echo '#define TYPE_ORDER' `echo $@ | sed -e "s,[^0-9],,g"` >$@
|
||
cat $(srcdir)/NSCTemplateValue.m >> $@
|
||
$(NSNUMBER_MFILES) : NSConcreteNumber.m
|
||
rm -f $@
|
||
echo '#define TYPE_ORDER' `echo $@ | sed -e "s,[^0-9],,g"` >$@
|
||
cat $(srcdir)/NSConcreteNumber.m >> $@
|
||
|
||
NXStringTable_scan.c: NXStringTable_scan.l
|
||
$(LEX) $(LEXFLAGS) -t $(srcdir)/NXStringTable_scan.l \
|
||
> NXStringTable_scan.temp
|
||
sed "s/yy/NXlex_/g" < NXStringTable_scan.temp \
|
||
> NXStringTable_scan.c
|
||
$(RM) -f NXStringTable_scan.temp
|
||
proplist.tab.m proplist.tab.h: proplist.y
|
||
rm -f proplist.tab.m.h
|
||
$(YACC) -d -p pl proplist.y -o proplist.tab.m
|
||
mv proplist.tab.m.h proplist.tab.h
|
||
lex.pl.m: proplist.l proplist.tab.h
|
||
$(LEX) -t -B -Ppl proplist.l > $@
|
||
|
||
stringsfile.tab.m stringsfile.tab.h: stringsfile.y
|
||
rm -f stringsfile.tab.m.h
|
||
$(YACC) -d -p sf stringsfile.y -o stringsfile.tab.m
|
||
mv stringsfile.tab.m.h stringsfile.tab.h
|
||
lex.sf.m: stringsfile.l stringsfile.tab.h
|
||
$(LEX) -t -B -Psf stringsfile.l > $@
|
||
|
||
objc-load${OEXT}: dynamic-load.h
|
||
|
||
dynamic-load.h: ../config.status
|
||
rm -f dynamic-load.h
|
||
cp $(srcdir)/$(DYNAMIC_LINKER)-load.h dynamic-load.h
|
||
|
||
include/preface.h: $(srcdir)/include/preface.h.in ../Version
|
||
rm -f $@
|
||
sed -e "s/@VERSION@/$(LIBRARY_VAR)_VERSION $(VERSION)/" \
|
||
< $(srcdir)/include/preface.h.in | \
|
||
sed -e "s/@MAJOR_VERSION@/$(LIBRARY_VAR)_MAJOR_VERSION $(MAJOR_VERSION)/" | \
|
||
sed -e "s/@MINOR_VERSION@/$(LIBRARY_VAR)_MINOR_VERSION $(MINOR_VERSION)/" | \
|
||
sed -e "s/@SUBMINOR_VERSION@/$(LIBRARY_VAR)_SUBMINOR_VERSION $(SUBMINOR_VERSION)/" | \
|
||
sed -e "s/@GCC_VERSION@/$(LIBRARY_VAR)_GCC_VERSION $(GCC_VERSION)/" | \
|
||
sed -e "s/@LIBRARY_NAME@/$(LIBRARY_VAR)_LIBRARY_NAME $(LIBRARY_NAME)/" | \
|
||
sed -e "s/@PACKAGE_NAME@/$(LIBRARY_VAR)_PACKAGE_NAME $(PACKAGE_NAME)/" \
|
||
> $@
|
||
preface${OEXT}: include/preface.h
|
||
|
||
# Turn off warnings for o_vscanf.c, it generates a bunch of unimportant ones.
|
||
o_vscanf${OEXT}: o_vscanf.c
|
||
$(CC) -c $(ALL_CPPFLAGS) $(DEFS) $(ALL_OBJCFLAGS) -w -o $@ $<
|
||
o_vscanf_pic${OEXT}: o_vscanf.c
|
||
$(CC) -c $(ALL_CPPFLAGS) $(DEFS) $(ALL_OBJCFLAGS) -w -o $@ $<
|
||
|
||
include/o_%_bas.h: include/o_x_bas.h.in
|
||
sed -e "s/@XX@/$*/g" $< > $@
|
||
|
||
include/o_%_cbs.h: include/o_x_cbs.h.in
|
||
sed -e "s/@YY@/$*/g" $< > $@
|
||
|
||
o_%_bas.m: o_x_bas.m.in include/o_%.h
|
||
sed -e "s/@XX@/$*/g" $< > $@
|
||
|
||
o_%_cbs.m: o_x_cbs.m.in include/o_%.h
|
||
sed -e "s/@YY@/$*/g" $< > $@
|
||
|
||
o_array.o: o_array.m include/o_array.h
|
||
include/o_array.h: include/o_array_bas.h include/o_array_cbs.h include/o_hash.h
|
||
o_hash.o: o_hash.m include/o_hash.h
|
||
include/o_hash.h: include/o_hash_bas.h include/o_hash_cbs.h
|
||
o_list.o: o_list.m include/o_list.h
|
||
include/o_list.h: include/o_list_bas.h include/o_list_cbs.h include/o_array.h include/o_hash.h
|
||
o_map.o: o_map.m include/o_map.h
|
||
include/o_map.h: include/o_map_bas.h include/o_map_cbs.h include/o_hash.h
|
||
|
||
|
||
Makefile: $(srcdir)/Makefile.in ../config.status
|
||
cd ..; $(SHELL) config.status
|
||
../config.status:
|
||
cd ..; $(SHELL) configure --no-create
|
||
include/config.h.in: $(srcdir)/../configure.in $(srcdir)/../acconfig.h
|
||
cd ..; $(SHELL) autoheader
|
||
include/config.h: include/config.h.in
|
||
|
||
TAGS: $(DIST_FILES)
|
||
etags $(DIST_FILES)
|
||
|
||
AUTHORS: Makefile.in
|
||
rm -f AUTHORS
|
||
@echo Finding file authors...
|
||
@echo 'For the legal record, here is a list of who wrote what:'>AUTHORS
|
||
@for a in $(FILE_AUTHORS) \
|
||
; do \
|
||
echo >>AUTHORS; \
|
||
echo >>AUTHORS; \
|
||
echo "$${a}:" >>AUTHORS; \
|
||
egrep -l "((Written by)|(Author)|(Rewritten by)).*$${a}" \
|
||
$(DIST_FILES) >>AUTHORS; \
|
||
done
|
||
|
||
mostlyclean:
|
||
rm -f core \
|
||
*~ \
|
||
include/*~ \
|
||
objc/*~
|
||
clean: mostlyclean
|
||
rm -f lib$(LIBRARY_NAME)$(LIBEXT) *${OEXT}
|
||
rm -f $(NSVALUE_MFILES) $(NSNUMBER_MFILES)
|
||
distclean: clean
|
||
rm -f Makefile
|
||
rm -f dynamic-load.h
|
||
rm -f include/preface.h include/config.h
|
||
rm -f o_*_bas.m o_*_cbs.m include/o_*_bas.h include/o_*_cbs.h
|
||
maintainer-clean: distclean
|
||
rm -f TAGS
|
||
|
||
copy-dist: $(DIST_FILES)
|
||
mkdir ../snap/src
|
||
mkdir ../snap/src/include
|
||
mkdir ../snap/src/objc
|
||
for file in $(DIST_FILES); do \
|
||
ln $$file ../snap/src/$$file ; \
|
||
done
|
||
ln AUTHORS ../snap
|
||
|
||
FORCE:
|