#
# This file is part of the Alliance CAD System
# Copyright (C) Laboratoire LIP6 - Dpartement ASIM
# Universite Pierre et Marie Curie
# 
# Home page          : http://www-asim.lip6.fr/alliance/
# E-mail support     : mailto:alliance-support@asim.lip6.fr
# 
# This progam is  free software; you can redistribute it  and/or modify it
# under the  terms of the GNU  General Public License as  published by the
# Free Software Foundation;  either version 2 of the License,  or (at your
# option) any later version.
# 
# Alliance VLSI  CAD System  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 General
# Public License for more details.
# 
# You should have received a copy  of the GNU General Public License along
# with the GNU C Library; see the  file COPYING. If not, write to the Free
# Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
#

############################################################
# makefile for icon libraries
# $Id: Makefile,v 2.1.1.1 1993/09/23 16:04:30 sax Exp sax $

SHELL = /bin/sh

############################################################

ICNVERSION = 201
ICCVERSION = 201
ICAVERSION = 201
ICUVERSION = 201
RCSVERSION=2.1.1

#TOP=/labo
#MACHINE=sparc

include $(TOP)/etc/$(MACHINE).mk
include $(TOP)/etc/libraries.mk

DEST_LIB_DIR=$(TARGET_LIB)

DEST_INC_DIR=$(TARGET_INCLUDE)

############################################################

MBK_INCLUDES= -I$(ALLIANCE_INCLUDE)

MBK_DEFINES= -DMUT_H='"$(MUT_H)"'

############################################################

ICN_H= icn${ICNVERSION}.h

IAC_H= iac${ICNVERSION}.h

ICU_H= icu${ICUVERSION}.h

ICON_INCLUDES= -I. -I$(DEST_INC_DIR)

ICON_DEFINES= -DICN_H='"${ICN_H}"' -DIAC_H='"${IAC_H}"' -DICU_H='"${ICU_H}"'

DEST_ICON_LIB= $(DEST_LIB_DIR)/libIcn${ICNVERSION}.a

DEST_COMPASS_LIB= $(DEST_LIB_DIR)/libIcc${ICCVERSION}.a

DEST_ALLIANCE_LIB= $(DEST_LIB_DIR)/libIca${ICAVERSION}.a

DEST_UTIL_LIB= $(DEST_LIB_DIR)/libIcu${ICUVERSION}.a

DEST_INCLUDE= $(DEST_INC_DIR)/$(ICN_H) $(DEST_INC_DIR)/$(IAC_H) $(DEST_INC_DIR)/$(ICU_H)

DEST_LIB=	$(DEST_ICON_LIB)		\
			$(DEST_COMPASS_LIB)		\
			$(DEST_ALLIANCE_LIB)	\
			$(DEST_UTIL_LIB)

############################################################

#CC= gcc

############################################################

C_INCLUDES= -I/usr/include

INCLUDES=	$(ICON_INCLUDES) \
			$(MBK_INCLUDES)  \
			$(C_INCLUDES)

DEFINES=	$(MBK_DEFINES)  \
			$(ICON_DEFINES)

############################################################

CPP_FLAGS=	$(INCLUDES) \
			$(DEFINES)

OPTIM_FLAGS= -O

DEBUG_FLAGS= -Wall -g

STATIC_FLAGS= #-static

AUX_FLAGS=

EXTRAFLAGS=	$(CPP_FLAGS)	\
			$(STATIC_FLAGS)	\
			$(AUX_FLAGS)

#CFLAGS=		$(OPTIM_FLAGS)	\
			$(DEBUG_FLAGS)

############################################################

#ARFLAGS=	rv

#RANLIB=/usr/bin/ranlib

############################################################

DEBUG_LIB=	#/usr/lib/debug/malloc.o

MATH_LIB=	-lm

LIBS=	$(DEBUG_LIB) \
		$(MATH_LIB)

############################################################

H_SRC=	ConvMacro.h	\
		IconConst.h	\
		icn.h		\
		iac.h		\
		icu.h

C_ICON_SRC=		Icon.c

C_COMPASS_SRC=	icnParse.c	\
				icnDrive.c

C_ALLIANCE_SRC=	aiParse.c	\
				aiDrive.c

C_UTIL_SRC=		Icon_util.c

C_SRC=	$(C_ICON_SRC)		\
		$(C_COMPASS_SRC)	\
		$(C_ALLIANCE_SRC)	\
		$(C_UTIL_SRC)

RCS_SRC=	$(H_SRC)	\
			$(C_SRC)	\
			Makefile
 
C_ICON_OBJ= $(C_ICON_SRC:.c=.o)

C_COMPASS_OBJ= $(C_COMPASS_SRC:.c=.o)

C_ALLIANCE_OBJ= $(C_ALLIANCE_SRC:.c=.o)

C_UTIL_OBJ= $(C_UTIL_SRC:.c=.o)

C_OBJ=	$(C_ICON_OBJ)		\
		$(C_COMPASS_OBJ)	\
		$(C_ALLIANCE_OBJ)	\
		$(C_UTIL_OBJ)

############################################################

.SUFFIXES:	.c .o .i

.c.o:
	$(CC) $(CFLAGS) $(EXTRAFLAGS) -c $<

.c.i:		
	$(CC) $(CPP_FLAGS) -E $< > $@

############################################################

distrib: all

all: $(DEST_INCLUDE) $(DEST_LIB)

$(DEST_INC_DIR)/$(ICN_H): icn.h
	cp icn.h $(DEST_INC_DIR)/$(ICN_H)

$(DEST_INC_DIR)/$(IAC_H): iac.h
	cp iac.h $(DEST_INC_DIR)/$(IAC_H)

$(DEST_INC_DIR)/$(ICU_H): icu.h
	cp icu.h $(DEST_INC_DIR)/$(ICU_H)

$(DEST_ICON_LIB) icon: $(C_ICON_OBJ)
	$(AR) $(ARFLAGS) $(DEST_ICON_LIB) $(C_ICON_OBJ)
	$(RANLIB) $(DEST_ICON_LIB)

$(DEST_COMPASS_LIB) compass: $(C_COMPASS_OBJ)
	$(AR) $(ARFLAGS) $(DEST_COMPASS_LIB) $(C_COMPASS_OBJ)
	$(RANLIB) $(DEST_COMPASS_LIB)

$(DEST_ALLIANCE_LIB) alliance: $(C_ALLIANCE_OBJ)
	$(AR) $(ARFLAGS) $(DEST_ALLIANCE_LIB) $(C_ALLIANCE_OBJ)
	$(RANLIB) $(DEST_ALLIANCE_LIB)

$(DEST_UTIL_LIB) util: $(C_UTIL_OBJ)
	$(AR) $(ARFLAGS) $(DEST_UTIL_LIB) $(C_UTIL_OBJ)
	$(RANLIB) $(DEST_UTIL_LIB)

############################################################

tags:
	etags -t $(C_SRC)

checkin:
	ci -l$(RCSVERSION) -f -m"New version" $(RCS_SRC)

clean:
	$(RM) -f $(C_OBJ)

realclean: clean
	$(RM) -f $(DEST_INCLUDE) $(DEST_LIB)

############################################################
