mirror of
https://github.com/gnustep/libs-base.git
synced 2025-05-29 16:01:38 +00:00
work. If people want to test bundles, they can type `make bundles'. git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@728 72102866-910b-0410-8b05-ffd578937521
211 lines
5.1 KiB
Makefile
211 lines
5.1 KiB
Makefile
#
|
|
# Tests makefile for Objective-C Class Library
|
|
# Copyright (C) 1993, 1995, 1996 Free Software Foundation, Inc.
|
|
#
|
|
# Written by: R. Andrew 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 -g -O
|
|
CPPFLAGS =
|
|
LDFLAGS =
|
|
|
|
DYNAMIC_BUNDLER_LINKER=@DYNAMIC_BUNDLER_LINKER@
|
|
DYNAMIC_LDFLAGS=@DYNAMIC_LDFLAGS@
|
|
DYNAMIC_CFLAGS=@DYNAMIC_CFLAGS@
|
|
DEFS = @DEFS@
|
|
LIBS = -L../src -lobjects @LIBOBJC@ @LIBS@ -lm
|
|
|
|
#### End of system configuration section. ####
|
|
|
|
include $(srcdir)/../Makeconf
|
|
include $(srcdir)/../Version
|
|
|
|
# Not needed anymore?
|
|
NEXT_NEXT_INCLUDES = -I/usr/include
|
|
OBJECTS_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.o:
|
|
$(CC) -c $(ALL_CPPFLAGS) $(DEFS) $(ALL_OBJCFLAGS) $< -o $*.o
|
|
.c.o:
|
|
$(CC) -c $(ALL_CPPFLAGS) $(DEFS) $(ALL_CFLAGS) $< -o $*.o
|
|
|
|
SRCS = \
|
|
test01.m \
|
|
test02.m \
|
|
test03.m \
|
|
test04.m \
|
|
test05.m \
|
|
test06.m \
|
|
test07.m \
|
|
test08.m \
|
|
test10.m \
|
|
test11.m \
|
|
test12.m \
|
|
test13.m \
|
|
pipes.m \
|
|
server.m \
|
|
client.m \
|
|
string.m \
|
|
values.m \
|
|
nsarray.m \
|
|
nsbundle.m \
|
|
nsdictionary.m \
|
|
nsset.m \
|
|
nsprocessinfo.m
|
|
|
|
# nsarchiving.m
|
|
|
|
HDRS = \
|
|
server.h
|
|
|
|
EXCS = $(SRCS:.m=)
|
|
|
|
BUNDLE_NAME=LoadMe
|
|
DYNAMIC_MFILES = \
|
|
LoadMe.m \
|
|
MyCategory.m \
|
|
SecondClass.m
|
|
|
|
DYNAMIC_HFILES = \
|
|
LoadMe.h \
|
|
MyCategory.h \
|
|
SecondClass.h
|
|
|
|
DYNAMIC_OFILES = $(DYNAMIC_MFILES:.m=.o)
|
|
|
|
RCS_FILES = $(SRCS) $(HDRS) $(DYNAMIC_MFILES) $(DYNAMIC_HFILES) \
|
|
Makefile.in NXStringTable.example
|
|
DIST_FILES = $(RCS_FILES)
|
|
|
|
# type 'make bundles' if you also want to check bundles.
|
|
all: $(EXCS)
|
|
|
|
# This works for GNU make, but not others.
|
|
# %: %.o $(srcdir)/../src/libobjects.a
|
|
# $(CC) $(ALL_CFLAGS) $< -o $@ $(ALL_LDFLAGS)
|
|
# How can I do this in a better way than the ugliness below?
|
|
# (but also have it work on old-style /bin/make)
|
|
|
|
LINK_CMD = $(CC) $(ALL_CFLAGS) $@.o -o $@ $(ALL_LDFLAGS)
|
|
test01: test01.o ../src/libobjects.a
|
|
$(LINK_CMD)
|
|
test02: test02.o ../src/libobjects.a
|
|
$(LINK_CMD)
|
|
test03: test03.o ../src/libobjects.a
|
|
$(LINK_CMD)
|
|
test04: test04.o ../src/libobjects.a
|
|
$(LINK_CMD)
|
|
test05: test05.o ../src/libobjects.a
|
|
$(LINK_CMD)
|
|
test06: test06.o ../src/libobjects.a
|
|
$(LINK_CMD)
|
|
test07: test07.o ../src/libobjects.a
|
|
$(LINK_CMD)
|
|
test08: test08.o ../src/libobjects.a
|
|
$(LINK_CMD)
|
|
test10: test10.o ../src/libobjects.a
|
|
$(LINK_CMD)
|
|
test11: test11.o ../src/libobjects.a
|
|
$(LINK_CMD)
|
|
test12: test12.o ../src/libobjects.a
|
|
$(LINK_CMD)
|
|
test13: test13.o ../src/libobjects.a
|
|
$(LINK_CMD)
|
|
pipes: pipes.o ../src/libobjects.a
|
|
$(LINK_CMD)
|
|
server: server.o ../src/libobjects.a
|
|
$(LINK_CMD)
|
|
client: client.o ../src/libobjects.a
|
|
$(LINK_CMD)
|
|
string: string.o ../src/libobjects.a
|
|
$(LINK_CMD)
|
|
values: values.o ../src/libobjects.a
|
|
$(LINK_CMD)
|
|
nsarray: nsarray.o ../src/libobjects.a
|
|
$(LINK_CMD)
|
|
nsbundle: nsbundle.o ../src/libobjects.a
|
|
$(CC) $(ALL_CFLAGS) $(DYNAMIC_LDFLAGS) $@.o -o $@ $(ALL_LDFLAGS)
|
|
nsdictionary: nsdictionary.o ../src/libobjects.a
|
|
$(LINK_CMD)
|
|
nsset: nsset.o ../src/libobjects.a
|
|
$(LINK_CMD)
|
|
nsprocessinfo: nsprocessinfo.o ../src/libobjects.a
|
|
$(LINK_CMD)
|
|
|
|
#nsarchiving: nsarray.o ../src/libobjects.a
|
|
# $(LINK_CMD)
|
|
|
|
install:
|
|
uninstall:
|
|
|
|
echo-excs:
|
|
@echo $(EXCS)
|
|
|
|
remote: server client
|
|
|
|
# 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 $*.o
|
|
|
|
$(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 *.o $(EXCS)
|
|
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
|