blob: e68c0357e828eacb6ef7d1cd87c59b9a044f2fc5 [file] [log] [blame]
# ****************************************************************************
# @@@ START COPYRIGHT @@@
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
#
# @@@ END COPYRIGHT @@@
#
# File: makefile.test
# Description: Makefile for building tests to test the Exception
# Handling package in this directory
#
#
# Created: 5/22/95
# Language: make
# Status: Development
#
# ****************************************************************************
# ****************************************************************************
#
# Change Log: $Log: makefile.test,v $
# Change Log: These are the source files from Source Safe.
# Change Log:
# Change Log: Initial revision
# Change Log:
#
# ****************************************************************************
# ****************************************************************************
# the name of the C++ compiler (should be in search path or a qualified name)
# ****************************************************************************
CPLUS= nice CC
# ****************************************************************************
# name for the location that contains my current development version
# ****************************************************************************
MYDEV= ..
ARK= /designs/newarc/ark
ARK_STABLE= $(ARK)/main-thread
EH= $(ARK_STABLE)/eh
# ****************************************************************************
# Set up search paths for include files
# ****************************************************************************
INCLUDE= -I$(EH)
# ****************************************************************************
# add the names of needed libraries for the final link step here
# ****************************************************************************
LIBDIR= -L$(EH)
LIBS= -lehtool
# ****************************************************************************
# add defines for special symbols (e.g. for debugging) here
# ****************************************************************************
DEFS=
# ****************************************************************************
# add the paths that the compiler uses by default to find its compiler-
# specific include files and libraries
# ****************************************************************************
SYSINCLUDE= -I/usr/vendor/CenterLine/clc++/sparc-sunos4/incl
SYSLIB= -L/usr/vendor/CenterLine/sparc-sunos4/lib
# ****************************************************************************
# compiler flags for regular compilation (.C to .o)
# the flags assume we're using the CenterLine C++ compiler
# (+d disables inline functions, +k uses precompiled headers)
# the -ec -Xa flag forces the ANSI C preprocessor to be used, since the
# traditional cpp can't handle the code produced by CC.
# ****************************************************************************
CPLUSOPT= +d -g -ec -Xa $(INCLUDE) $(DEFS)
# ****************************************************************************
# compiler flags for creating a file with all its templates instantiated
# ****************************************************************************
CPLUSOPT_TEMPL= $(CPLUSOPT) -pta -ptf -ptmptlinkmap
# ****************************************************************************
# add all the implementation files here
# ****************************************************************************
SRC= test1.C \
test2.C
# ****************************************************************************
# object files are the same as the source files with suffix .o
# ****************************************************************************
OBJ= ${SRC:.C=.o}
OBJ_EXECUTABLE= ${SRC:.C=}
.SUFFIXES: .C .o
# ****************************************************************************
# build an object file (.o) from a C++ source file (.C)
# ****************************************************************************
.C.o:
@ rm -f $@
$(CPLUS) $(CPLUSOPT) -c $< -o obj/$@
ln -s obj/$@ $@
@ echo "---------------------"
# ****************************************************************************
# now the real dependencies (only those that are not covered by rules)
# ****************************************************************************
objects: $(OBJ_EXECUTABLE) $(OBJ)
# ****************************************************************************
# Make a standalone test driver
# ****************************************************************************
#
test1: test1.o
$(CPLUS) $(CPLUSOPT) \
test1.o \
$(LIBDIR) \
$(LIBS) \
-pti \
-o $@
test2: test2.o
$(CPLUS) $(CPLUSOPT) \
test2.o \
$(LIBDIR) \
$(LIBS) \
-pti \
-o $@
# ****************************************************************************
# load the code into ObjectCenter
# ****************************************************************************
octest1:
#setopt ansi
#setopt program_name test1.exe
#setopt load_flags $(CPLUSOPT)
#unsetopt check_hfiles
#setopt instrument_all
#setopt instrument_byte
#setopt instrument_space 4
#load test1.C
#load -G $(LIBDIR) $(LIBS)
#link
octest2:
#setopt ansi
#setopt program_name test2.exe
#setopt load_flags $(CPLUSOPT)
#unsetopt check_hfiles
#setopt instrument_all
#setopt instrument_byte
#setopt instrument_space 4
#load test2.C
#load -G $(LIBDIR) $(LIBS)
#link
install:
mkdir obj
# ****************************************************************************
# use makedepend to create the dependencies for included files
# --------> do not change the text below, since it is recreated <----------
# --------> each time make depend is run <---------------------------------
# if we use the modified makedepend that understands the -l option,
# then don't generate dependencies for system includes (#include <...>)
# ****************************************************************************
depend:
makedepend $(DEFS) $(INCLUDE) $(SYSINCLUDE) -- -l -- $(SRC)
# DO NOT DELETE THIS LINE -- make depend depends on it.
test1.o: /designs/newarc/ark/main-thread/eh/EHBaseTypes.h
test1.o: /designs/newarc/ark/main-thread/eh/EHException.h
test1.o: /designs/newarc/ark/main-thread/eh/EHExceptionTypeEnum.h
test1.o: /designs/newarc/ark/main-thread/eh/EHJmpBufNode.h
test1.o: /designs/newarc/ark/main-thread/eh/EHJmpBufStack.h
test2.o: /designs/newarc/ark/main-thread/eh/EHBaseTypes.h
test2.o: /designs/newarc/ark/main-thread/eh/EHException.h
test2.o: /designs/newarc/ark/main-thread/eh/EHExceptionTypeEnum.h
test2.o: /designs/newarc/ark/main-thread/eh/EHJmpBufNode.h
test2.o: /designs/newarc/ark/main-thread/eh/EHJmpBufStack.h