libs-base/Testing/Makefile.in
mccallum 3dda1810ce (../src/lib$(LIBRARY_NAME)$(LIBEXT)): New target.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@1464 72102866-910b-0410-8b05-ffd578937521
1996-04-18 00:56:32 +00:00

182 lines
4.2 KiB
Makefile

#
# Tests makefile for Objective-C Class Library
# Copyright (C) 1993, 1995, 1996 Free Software Foundation, Inc.
#
# Written by: Andrew Kachites McCallum <mccallum@cs.rochester.edu>
# Dept. of Computer Science, U. of Rochester, Rochester, NY 14627
#
# 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@
CC = @CC@
CFLAGS = -Wall -Wno-implicit -Wno-format -g -O
CPPFLAGS =
LDFLAGS =
DYNAMIC_BUNDLER_LINKER=@DYNAMIC_BUNDLER_LINKER@
DYNAMIC_LDFLAGS=@DYNAMIC_LDFLAGS@
DYNAMIC_CFLAGS=@DYNAMIC_CFLAGS@
DEFS = @DEFS@
LIBS = -L../src -l$(LIBRARY_NAME) @LIBOBJC@ @LIBS@ -lm
EXEEXT =
OEXT = .o
LIBEXT = .a
#### End of system configuration section. ####
include $(srcdir)/../Makeconf
include $(srcdir)/../Version
# Not needed anymore?
NEXT_NEXT_INCLUDES = -I/usr/include
GNU_NEXT_INCLUDES = -I$(srcdir)/../src
NEXT_INCLUDES = @NEXT_INCLUDES@
ALL_CPPFLAGS = -I../src -I$(srcdir)/../src $(NEXT_INCLUDES) $(CPPFLAGS)
ALL_CFLAGS = $(CFLAGS)
ALL_OBJCFLAGS = $(CFLAGS) -Wno-protocol
ALL_LDFLAGS = $(LDFLAGS) $(LIBS)
.SUFFIXES: .m
.m$(OEXT):
$(CC) -c $(ALL_CPPFLAGS) $(DEFS) $(ALL_OBJCFLAGS) $< -o $*$(OEXT)
.c$(OEXT):
$(CC) -c $(ALL_CPPFLAGS) $(DEFS) $(ALL_CFLAGS) $< -o $*$(OEXT)
SRCS = \
test01.m \
test02.m \
heap.m \
nxst.m \
randoms.m \
prepend.m \
pipes.m \
server.m \
client.m \
string.m \
values.m \
nsarray.m \
nsbundle.m \
nsdictionary.m \
nsset.m \
nsprocessinfo.m \
nsarchiver.m \
invocation.m \
diningPhilosophers.m \
nsmaptable.m \
nshashtable.m \
tcpport-server.m \
tcpport-client.m \
nsnotification.m \
nstimer.m \
coder.m \
cstream.m \
fref.m
# nsarchiving.m
tcpport: FORCE
(cd ../src; $(MAKE))
$(MAKE) tcpport-server tcpport-client
remote: FORCE
(cd ../src; $(MAKE))
$(MAKE) server client
HDRS = \
server.h
EXCS = $(SRCS:.m=)
EXECS = $(SRCS:.m=$(EXEEXT))
BUNDLE_NAME=LoadMe
DYNAMIC_MFILES = \
LoadMe.m \
MyCategory.m \
SecondClass.m
DYNAMIC_HFILES = \
LoadMe.h \
MyCategory.h \
SecondClass.h
DYNAMIC_OFILES = $(DYNAMIC_MFILES:.m=$(OEXT))
RCS_FILES = $(SRCS) $(HDRS) $(DYNAMIC_MFILES) $(DYNAMIC_HFILES) \
Makefile.in NXStringTable.example Makefile.sed.nt
DIST_FILES = $(RCS_FILES)
# type 'make bundles' if you also want to check bundles.
all: $(EXCS)
# This works for GNU make, but not others.
%: %$(OEXT) ../src/lib$(LIBRARY_NAME)$(LIBEXT)
$(CC) $(ALL_CFLAGS) $@$(OEXT) -o $@ $(ALL_LDFLAGS)
../src/lib$(LIBRARY_NAME)$(LIBEXT):
@echo You must first make the library $(LIBRARY_NAME).
@false
install:
uninstall:
echo-excs:
@echo $(EXCS)
# These next few lines give an example of how to compile, link and store
# a bundle.
bundles: $(BUNDLE_NAME).bundle/$(BUNDLE_NAME)
$(DYNAMIC_OFILES): $(DYNAMIC_MFILES) $(DYNAMIC_HFILES)
$(CC) -c $(ALL_CPPFLAGS) $(DEFS) $(DYNAMIC_CFLAGS) $(ALL_OBJCFLAGS) \
$(srcdir)/$*.m -o $*$(OEXT)
$(BUNDLE_NAME).bundle/$(BUNDLE_NAME): $(DYNAMIC_OFILES)
-mkdir $(BUNDLE_NAME).bundle
-mkdir $(BUNDLE_NAME).bundle/English.lproj
$(DYNAMIC_BUNDLER_LINKER) -o $(BUNDLE_NAME).bundle/$(BUNDLE_NAME) \
$(DYNAMIC_OFILES)
cp $(srcdir)/NXStringTable.example $(BUNDLE_NAME).bundle/English.lproj
mostlyclean:
rm -f core *~ test08.data textcoder.txt
clean: mostlyclean
rm -f *$(OEXT) $(EXECS)
rm -rf $(BUNDLE_NAME).bundle
distclean: clean
rm -f Makefile config.status
realclean: distclean
rm -f TAGS
copy-dist: $(DIST_FILES)
mkdir ../snap/checks
ln $(DIST_FILES) ../snap/checks
Makefile: $(srcdir)/Makefile.in
cd ..; $(SHELL) config.status
FORCE: