#
# general Makefile
#
# MV, 4.7.1996
#
#
#
# evcnt_ix86.c can always be compiled as a module.
#
# prf_ix86.c can only compiled as a module, if it is not compiled for SMP.
# So use:
# -UMODULE -D__SMP__	# to compile for SMP, and
# -DMODULE 		# otherwise.
#
# Check if the kernel Makefile includes '# SMP ='. Then we do not use SMP.
# NO_SMP := $(shell grep '\# SMP =' /usr/src/linux/Makefile)
 NO_SMP := $(shell grep '\# CONFIG_SMP ' /usr/src/linux/.config)
#
#
#gcc -D__KERNEL__ -I/usr/src/linux/include -Wall -O2 -DCPU=586 -DMODULE -c -o evcnt.o evcnt.c
#
# CCOPT="-ansi -Wall -O2 -m486 -Wstrict-prototypes -fomit-frame-pointer -fno-strength-reduce -pipe -malign-loops=2 -malign-jumps=2 -malign-functions=2"
#
#

# include directory path
IPATH = ../../../include/
# general makefile to include
include $(IPATH)make.hd
# optimisation
CCOPT = -Wall -Wstrict-prototypes -O2
# $(WARN_CCOPT) $(HIGH_CCOPT)
IFLAGS =

# general dependencies
#GENERAL_DEP = $(IPATH)general.h

# general libs
LIBS = 
#-L$(PRF_LIB_PATH)

# libs to compile in this directory
LOCAL_LIBS =


# programs with specific dependencies and libraries
WHAT0 = evcnt_ix86
WHAT0_DEP = evcnt_ix86.h
WHAT0_LIBS =
WHAT0_OPT = -D__KERNEL__ -DCPU=586 -I/usr/src/linux/include -DMODULE 
WHAT1 = ev_test_ix86
WHAT1_DEP =
WHAT1_LIBS =
# WHAT1_OPT = -ansi -m486 -Wstrict-prototypes -fomit-frame-pointer -fno-strength-reduce -pipe -malign-loops=2 -malign-jumps=2 -malign-functions=2
WHAT2 = ev_feat_i586
WHAT2_DEP =
WHAT2_LIBS =
# WHAT2_OPT = -ansi -m486 -Wstrict-prototypes -fomit-frame-pointer -fno-strength-reduce -pipe -malign-loops=2 -malign-jumps=2 -malign-functions=2
WHAT3 = tsc_test_ix86
WHAT3_DEP =
WHAT3_LIBS =
WHAT4 = prf_ix86
WHAT4_DEP = prf_ix86.h
WHAT4_LIBS = 
WHAT4_OPT = -D__KERNEL__ -DCPU=586 -I/usr/src/linux/include
ifdef NO_SMP
WHAT4_OPT += -DMODULE
else
WHAT4_OPT += -UMODULE -D__SMP__
endif
WHAT5 =
WHAT5_DEP =
WHAT5_LIBS =
WHAT6 = 
WHAT6_DEP = 
WHAT6_LIBS =
WHAT7 =
WHAT7_DEP = 
WHAT7_LIBS = 
WHAT8 =
WHAT8_DEP = 
WHAT8_LIBS = 
WHAT9 =
WHAT9_DEP = 
WHAT9_LIBS = 

build: $(LOCAL_LIBS) $(WHAT0).o $(WHAT1) $(WHAT2) $(WHAT3) $(WHAT4).o $(WHAT5) $(WHAT6) $(WHAT7) $(WHAT8) $(WHAT9)


# individual dependencies

# archives 


#------------- general

.c.o:
	$(CC) $(CCOPT) $(IFLAGS) -c $<	



#------------- 0. part

$(WHAT0).o: $(WHAT0).c $(WHAT0_DEP) $(GENERAL_DEP)
	$(CC) $(WHAT0).c $(CCOPT) $(WHAT0_OPT) -c -o $(WHAT0).o

#$(WHAT0): $(WHAT0).o $(WHAT0_DEP) $(GENERAL_DEP)
#	$(CC) $(WHAT0).o $(LIBS) $(WHAT0_LIBS) -o $(WHAT0)

#------------- first part

$(WHAT1): $(WHAT1).o $(WHAT1_DEP) $(GENERAL_DEP)
	$(CC) $(WHAT1).o $(LIBS) $(WHAT1_LIBS) -o $(WHAT1)

#------------- second part

$(WHAT2): $(WHAT2).o $(WHAT2_DEP) $(GENERAL_DEP)
	$(CC) $(WHAT2).o $(LIBS) $(WHAT2_LIBS) -o $(WHAT2)

#------------- third part

$(WHAT3): $(WHAT3).o $(WHAT3_DEP) $(GENERAL_DEP)
	$(CC) $(WHAT3).o $(LIBS) $(WHAT3_LIBS) -o $(WHAT3)

#------------- fourth part

$(WHAT4).o: $(WHAT4).c $(WHAT4_DEP) $(GENERAL_DEP)
	$(CC) $(WHAT4).c $(CCOPT) $(WHAT4_OPT) -c -o $(WHAT4).o

#$(WHAT4): $(WHAT4).o $(WHAT4_DEP) $(GENERAL_DEP)
#	$(CC) $(WHAT4).o $(LIBS) $(WHAT4_LIBS) -o $(WHAT4)

#------------- fifth part


#$(WHAT5): $(WHAT5).o $(WHAT5_DEP) $(GENERAL_DEP)
#	$(CC) $(WHAT5).o $(LIBS) $(WHAT5_LIBS) -o $(WHAT5)

#------------- sixth part

#$(WHAT6): $(WHAT6).o $(WHAT6_DEP) $(GENERAL_DEP)
#	$(CC) $(WHAT6).o $(LIBS) $(WHAT6_LIBS) -o $(WHAT6)

#------------- seventh part

#$(WHAT7): $(WHAT7).o $(WHAT7_DEP) $(GENERAL_DEP)
#	$(CC) $(WHAT7).o $(LIBS) $(WHAT7_LIBS) -o $(WHAT7)

#------------- eighth part

#$(WHAT8): $(WHAT8).o $(WHAT8_DEP) $(GENERAL_DEP)
#	$(CC) $(WHAT8).o $(LIBS) $(WHAT8_LIBS) -o $(WHAT8)

#------------- nineth part

#$(WHAT9): $(WHAT9).o $(WHAT9_DEP) $(GENERAL_DEP)
#	$(CC) $(WHAT9).o $(LIBS) $(WHAT9_LIBS) -o $(WHAT9)

#------------- end
