#########################################################
# File:         pyrapackdec                             #
#							#
# Author:	Markus Sebeck				#
#							#
# Date: 	12.05.1998				#
#							#
#########################################################

#################################################################
#								#
# site-specific variables 					#
#								#
#################################################################
# used syntax for directories:
# ...IDIR	= include-directory
# ...LIBDIR	= library-directory
#

# personal directories ##########################################

MYTOPDIR        = /POOL_HOME/stud/sebeck#
TOP		= /POOL_HOME/stud/sebeck/NTCODEC#
MYINCLUDEDIR    = $(MYTOPDIR)/Diplomarbeit/include#
#MYLIBDIR  	= $(MYTOPDIR)/lib#

# machine specific ##############################################

include $(MYTOPDIR)/NTCODEC/Machine.mk

# program specific ##############################################

PROGRAM		= checkpack#			# name of the runable program
NAME		= pyrapktdec
LIBNAME		= lib$(NAME).a
ARCHIVENAME	= pyrapktdec_ar#		# name of the archive file of the sources
INSTALLDIR	= ../../bin#	        	# directory where the program is to be installed

#NTCODECLIBS		= -lh263encoder -lCodebooks -lcommon -lfilter -lbitOut \
#		-ldisplay -lX11 -lXext -lXmu -lm

# project directories ###########################################
NTCODECINCDIR1   = $(MYTOPDIR)/NTCODEC/include/pyra/decoder#
NTCODECINCDIR2   = $(MYTOPDIR)/NTCODEC/include/pyra#
NTCODECLIBDIR    = $(MYTOPDIR)/NTCODEC/lib/$(ARCH)#

# system directories ############################################

OPENWINLIBDIR	= /usr/openwin/lib#
OPENWINIDIR	= /usr/openwin/include#				# #include <???>

g++LIB = /usr/local/lib/g++-include#				# von Christof

# used files ####################################################
# !: to make the library, rsvp_sim.o has to be removed from OBJECTS

HEADERS = 	


SOURCES =  	\
		main.c 



OBJECTS = 	\
		main.o



FILES	= Makefile


# stuff needed for compiling ####################################

#INCLUDE = -I$(MYINCLUDEDIR) #-L$(OPENWINIDIR) -I$(XFORMSIDIR)
INCLUDE = -I$(MYINCLUDEDIR) -I$(NTCODECINCDIR1) -I$(NTCODECINCDIR2) $(INCDIR)
LIBDIRS	= #-L$(MYLIBDIR) -L$(OPENWINLIBDIR) # -L$(XFORMSLIBDIR)  
LIBDIRS	= -L$(NTCODECLIBDIR) $(LIBDIR)
#   LIBS	= -lmip -lmob -lload -latm -lbase -lcncl -lX11 -lXext -lm
# LIBS	= -lm -lbitOut -lbitIn -ljittr -lsocket -lnsl
#		-lh263encoder -lCodebooks -lX11 -lXext -lXmu
#LIBS		= -lCodebooks -lHuffDecode \
#		-lh263decoder -lcommon -lbitIn -lfilter \
#		-ldisplay -lurl -ljittr -lX11 -lXext -lXmu -lm -lsocket -lnsl #-lpyradecoder -ldl
LIBS		= -lh263decoder -lcommon -lbitIn  \
		-lm  #-lpyradecoder -ldl

CFLAGS	= -W -Wall $(INCLUDE)#			# compile flags (auch schon in Machine.mk....)
LFLAGS	= $(LIBDIRS) $(LIBS)#			# link flags
DFLAGS	= -ggdb -DDEBUG#-g			# debug flags
DEPENDF	= -M #-m#				# dependency flags


#A2PSF	= -nP -2


# make, compile, archive ###############################

CC 	= gcc
CXX	= g++
MAKE 	= make
MAKED	= makedepend
TAR	= tar#		# to archive all
AR	= ar#		# to create library
#PRINT	= lpr
#A2PS	= a2ps

#########################################################
#########################################################
#							#
# It should not be neccessary to edit the following 	#
# lines!						#
########e################################################

.PHONY: help all clean allclean depend lib install docu tar extract libmip

# some help #############################################

help:
	@echo "\n\nUsage:\tmake <target>"
	@echo "\tPossible targets are:"
	@echo "\t\thelp\t - print this message"
	@echo "\t\tdepend\t - make dependencies"
	@echo "\t\tall\t - compile \`$(PROGRAM)"\'
	@echo "\t\tclean\t - clean up directory"
	@echo "\t\tallclea\t - clean up directory and remove programm-file"
	@echo "\t\tinstall\t - install \`$(PROGRAM)"\'
	@echo "\t\tdocu\t - create ps-files of headers and sources"
	@echo "\t\ttar\t - create archive of all"
	@echo "\t\ttarnew\t - create new archive of all"
	@echo "\t\textract\t - extract archive of all"
	@echo "\t\tlib\t - create library of object files"
	@echo "\n"


# generate and delete files ##############################

all:
	@echo "\nTARGET all:  ..."
	#@$(MAKE) lib
	@$(MAKE) $(PROGRAM)
	@echo "TARGET all:  done.\n"

clean:
	@echo "\nTARGET clean: ...\c"
	@$(RM) *.o *~ *.bak core a.out
	@echo " done.\n"

allclean: 
	@echo "\nTARGET allclean: ..."
	@$(MAKE) clean
	@$(RM) $(PROGRAM)
	@echo "TARGET allclean:   done.\n"

$(PROGRAM): $(OBJECTS) 
	@echo "\n"RULE $(PROGRAM) ..."\n"
	$(CC) $(LIBDIRS) $(OBJECTS) -o $(PROGRAM) $(LIBS)
	@echo RULE $(PROGRAM): "  done.\n"

%.o: %.c %.h
	@echo "\n"RULE $@ ...
	#@$(CC) $(CFLAGS) $(DFLAGS) $< -c -o $@	
	$(CC) $(CFLAGS) $(DFLAGS) -I$(g++LIB) $< -c -o $@	
	@echo " done.\n"

%.o: %.c
	@echo "\n"RULE $@ ...
	$(CC) $(CFLAGS) $(DFLAGS) $< -c -o $@	
	@echo " done.\n"


# create dependencies ####################################

depend:
	makedepend $(INCLUDE) -I$(g++LIB) $(SOURCES)



# create archive for libraries ###########################

#lib:
#	$(MAKE) lib$(ARCHIVENAME).a

#lib$(ARCHIVENAME).a : lib$(ARCHIVENAME).a($(LIBOBJS))

# uses implicit rule with $(AR)

# useful stuff ###########################################

install:
	@$(MAKE) all
	@echo "\n"installing $(PROGRAM) in $(INSTALLDIR) ..."\c"
	@cp $(PROGRAM) $(INSTALLDIR)/
	@echo " done.\n"
# 	@chmod ugo+x $(INSTALLDIR)/$(PROGRAM)

#docu: $(HEADERS) $(SOURCES) Makefile
#	@$(A2PS) $(A2PSF) $(HEADERS) > headers.ps
#	@$(A2PS) $(A2PSF) $(SOURCES) > sources.ps
#	@$(A2PS) $(A2PSF) Makefile > makefile.ps

tarnew: $(HEADERS) $(SOURCES) $(FILES)
	@$(TAR) -cvf $(ARCHIVENAME).tar $(HEADERS) $(SOURCES) $(FILES)

tar: $(HEADERS) $(SOURCES) $(FILES)
	@$(TAR) -uvf $(ARCHIVENAME).tar $(HEADERS) $(SOURCES) $(FILES)

extract:
	@$(TAR) -xvf $(ARCHIVENAME).tar

# checkin:
#	@set -e; for i in $(RCSFILES) do; 
 

# DO NOT DELETE THIS LINE -- make depend depends on it.
