Home | History | Annotate | Line # | Download | only in pdsim
Makefile revision 1.1
      1 # $Id: Makefile,v 1.1 2006/10/14 04:46:30 yamt Exp $
      2 
      3 CPROGS=		lirs
      4 HPROGS=		lfu lru nbsd opt rand
      5 HPROGS+=	genpat5
      6 HPROGS+=	renumber
      7 PROGS+=		linux
      8 
      9 C_COMPILE=	cc -O2 -Wall -Werror
     10 
     11 all:	_mkall
     12 
     13 
     14 # clock-pro
     15 
     16 CPRO_CFLAGS.x=	-DNOCLRINITREF
     17 CPRO_CFLAGS.t=	-DCOLDREF2TEST
     18 CPRO_CFLAGS.useonce_t=	-DCOLDREF2TEST -DUSEONCE
     19 CPRO_CFLAGS.useonce=	-DUSEONCE
     20 CPRO_CFLAGS.nohash=	-DNOHASH
     21 CPRO_CFLAGS.nomove=	-DCOLDNOMOVE
     22 CPRO_CFLAGS.nomove_t=	-DCOLDNOMOVE -DCOLDREF2TEST
     23 CPRO_CFLAGS.nomove_useonce_t=	-DCOLDNOMOVE -DCOLDREF2TEST -DUSEONCE
     24 CPRO_CFLAGS.iwamoto=	-DIWAMOTO
     25 CPRO_CFLAGS.iwamoto_t=	-DIWAMOTO -DCOLDREF2TEST
     26 CPRO_CFLAGS.idealirr=	-DIDEALIRR
     27 CPRO_CFLAGS.listq=	-DLISTQ
     28 CPRO_CFLAGS.listq_t=	-DLISTQ -DCOLDREF2TEST
     29 CPRO_CFLAGS.listq_useonce_t=	-DLISTQ -DCOLDREF2TEST -DUSEONCE
     30 CPRO_CFLAGS.listq_useonce=	-DLISTQ -DUSEONCE
     31 CPRO_CFLAGS.default=
     32 
     33 CPRO_CFLAGS.listq_adaptive=	-DADAPTIVE -DLISTQ
     34 CPRO_CFLAGS.listq_useonce_adaptive=	-DADAPTIVE -DLISTQ -DUSEONCE
     35 CPRO_CFLAGS.useonce_adaptive=	-DADAPTIVE -DUSEONCE
     36 CPRO_CFLAGS.adaptive=	-DADAPTIVE
     37 
     38 PDSIM_CPRO_VARIANTS+=	default
     39 PDSIM_CPRO_VARIANTS+=	listq
     40 PDSIM_CPRO_VARIANTS+=	useonce
     41 PDSIM_CPRO_VARIANTS+=	listq_useonce
     42 
     43 PDSIM_CPRO_VARIANTS+=	listq_adaptive
     44 PDSIM_CPRO_VARIANTS+=	useonce_adaptive
     45 PDSIM_CPRO_VARIANTS+=	listq_useonce_adaptive
     46 PDSIM_CPRO_VARIANTS+=	adaptive
     47 
     48 PDSIM_PROGS+=	${PDSIM_CPRO_VARIANTS:S/^/pdsim.cpro_/}
     49 PDSIM_PROGS.DBG+=	${PDSIM_CPRO_VARIANTS:S/^/pdsim.dbg.cpro_/}
     50 PDPOL=		uvm_pdpolicy_clockpro.c
     51 SYSSRC=		${NETBSDSRC}/sys
     52 .PATH:		${SYSSRC}/uvm
     53 
     54 .for _V in ${PDSIM_CPRO_VARIANTS}
     55 _P=pdsim.cpro_${_V}
     56 ${_P}:	pdsim.c ${PDPOL}
     57 	${C_COMPILE} -I. -I${SYSSRC} -DPDSIM ${CPRO_CFLAGS.${_V}} -o ${.TARGET} ${.ALLSRC}
     58 pdsim.dbg.cpro_${_V}:	pdsim.c ${PDPOL}
     59 	${C_COMPILE} -I. -I${SYSSRC} -DPDSIM -DDEBUG ${CPRO_CFLAGS.${_V}} -o ${.TARGET} ${.ALLSRC}
     60 .endfor
     61 
     62 
     63 # clock
     64 
     65 CLOCK_CFLAGS.defult=
     66 CLOCK_CFLAGS.inact90=	-DCLOCK_INACTIVEPCT=90
     67 
     68 PDSIM_CLOCK_VARIANTS+=	default
     69 PDSIM_CLOCK_VARIANTS+=	inact90
     70 
     71 PDSIM_PROGS+=	${PDSIM_CLOCK_VARIANTS:S/^/pdsim.clock_/}
     72 PDSIM_PROGS.DBG+=	${PDSIM_CLOCK_VARIANTS:S/^/pdsim.dbg.clock_/}
     73 PDPOL=		uvm_pdpolicy_clock.c
     74 SYSSRC=		/sys
     75 .PATH:		${SYSSRC}/uvm
     76 .for _V in ${PDSIM_CLOCK_VARIANTS}
     77 _P=pdsim.clock_${_V}
     78 ${_P}:	pdsim.c ${PDPOL}
     79 	${C_COMPILE} -I. -I${SYSSRC} -DPDSIM ${CLOCK_CFLAGS.${_V}} -o ${.TARGET} ${.ALLSRC}
     80 pdsim.dbg.clock_${_V}:	pdsim.c ${PDPOL}
     81 	${C_COMPILE} -I. -I${SYSSRC} -DPDSIM -DDEBUG ${CLOCK_CFLAGS.${_V}} -o ${.TARGET} ${.ALLSRC}
     82 .endfor
     83 
     84 
     85 PROGS+=		${PDSIM_PROGS}
     86 PROGS+=		${PDSIM_PROGS.DBG}
     87 
     88 ALLPROGS=	${PROGS} ${CPROGS} ${HPROGS} ${TESTPROGS}
     89 .SUFFIXES:	.hs
     90 
     91 _mkall: ${ALLPROGS}
     92 
     93 clean:
     94 	rm -rf ${ALLPROGS}
     95 	rm -rf ${HPROGS:S/$/.hi/g}
     96 	rm -rf ${HPROGS:S/$/.o/g}
     97 
     98 .hs:
     99 	rm -rf ${.IMPSRC:S/.hs/.o/g}
    100 	ghc -cpp -O -o ${.TARGET} --make ${.TARGET}
    101 
    102 linux:	nbsd.hs
    103 	rm -rf ${.ALLSRC:S/.hs/.o/g}
    104 	ghc -cpp -O -DLINUX -o ${.TARGET} --make nbsd
    105