[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference smurf::buildhelp

Title:USG buildhelp questions/answers
Moderator:SMURF::FILTER
Created:Mon Apr 26 1993
Last Modified:Mon Jan 20 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:2763
Total number of notes:5802

1427.0. "How do I get a whole bunch of programs to be build and linked..." by AOSG::FILTER (Automatic Posting Software - mail to flume::puck) Fri Apr 21 1995 11:48

Date Of Receipt: 	21-APR-1995 09:55:17.35
From: 	SMURF::WASTED::"[email protected]"
To: 	wasted::"[email protected]"
CC: 	PORTANTE@DEC:.zko.wasted
Subj: 	How do I get a whole bunch of programs to be build and linked...

Hello,

I am trying to get a Makefile to build a whole bunch of programs.  At the
end of this note is my Makefile.

I am working in the subdirectory:

        ./usr/ccs/lib/DECthreads/tests

off the platinum tree.  I have about 256 tests in there that I need to
build and run.  I am having problems creating a Makefile which will build
all the tests.

Each test needs to be built like this:

        puvi_nbi_001 : puvi_nbi_001.o cts_test.o

        puvi_nbi_002 : puvi_nbi_002.o cts_test.o

        puvi_nbi_001.o : puvi_nbi_001.c cts_test.h

        puvi_nbi_002.o : puvi_nbi_002.c cts_test.h

        cts_test.o : cts_test.c cts_test.h

How can I setup the makefile file to build this correctly?

Thanks,

-Peter



NOSTRIP		=

CCPB	= \
	ccpb_cvx_001	ccpb_cvx_002	ccpb_exc_001	ccpb_mut_001 \
	ccpb_mut_002	ccpb_thd_001	ccpb_thd_002	ccpb_thd_003 \
	ccpb_thd_004	ccpb_cvx_mut_001
ICPB	= \
	icpb_thd_001
ICVB	= \
	icvb_err_001	icvb_err_002	icvb_err_003 \
	icsb_obj_001	icvb_stk_001
CCSB	= ccsb_mut_001 ccsb_thd_001
CCVB	= \
	ccvb_alt_001 ccvb_alt_002 ccvb_alt_003 ccvb_alt_004  \
	ccvb_alt_cvx_001 ccvb_alt_cvx_002 ccvb_alt_cvx_003   \
	ccvb_alt_exc_001  \
	ccvb_att_001 ccvb_att_002 ccvb_att_003 ccvb_att_004 ccvb_att_005  \
	ccvb_cvx_001 ccvb_cvx_002 ccvb_cvx_003 ccvb_cvx_004 ccvb_cvx_005  \
	ccvb_cvx_thd_001 ccvb_cvx_thd_002  \
	ccvb_cvx_tim_001 ccvb_cvx_tim_002  \
	ccvb_err_001  \
	ccvb_exc_001 ccvb_exc_002 ccvb_exc_003  \
	ccvb_han_001 ccvb_han_thd_001 \
	ccvb_ini_001 ccvb_ini_002 ccvb_ini_tis_001  \
	ccvb_mut_001 ccvb_mut_002 ccvb_mut_003 ccvb_mut_004  \
	ccvb_mut_005 ccvb_mut_thd_001 ccvb_mut_tis_001  \
	ccvb_obj_001  \
	ccvb_ptc_001 ccvb_ptc_002 ccvb_ptc_003 ccvb_ptc_004 ccvb_ptc_005  \
	ccvb_ptc_006  \
	ccvb_ptc_tis_001 ccvb_ptc_tis_002 ccvb_ptc_tis_003 ccvb_ptc_tis_004  \
	ccvb_sam_001  \
	ccvb_stk_001 ccvb_stk_002 ccvb_stk_003 ccvb_stk_004  \
	ccvb_thd_001 ccvb_thd_002 ccvb_thd_003 ccvb_thd_004 ccvb_thd_005  \
	ccvb_thd_006 ccvb_thd_007 ccvb_thd_008 ccvb_thd_009 ccvb_thd_010  \
	ccvb_thd_011 ccvb_thd_012 ccvb_thd_013 ccvb_thd_014 ccvb_thd_015  \
	ccvb_thd_tim_001  \
	ccvb_tim_001 ccvb_tim_002 ccvb_tim_003  \
	ccvb_tis_001
CCVI	=
CUPB	= cupb_nbi_001	
CUVB	= cuvb_dbg_ptc_001 \
	cuvb_exc_001 cuvb_nbi_001 cuvb_nbi_002 cuvb_nbi_003  \
	cuvb_nbi_004 cuvb_nbi_005 cuvb_nbi_006 cuvb_nbi_007  \
	cuvb_nbi_008 cuvb_nbi_009 cuvb_sig_001 cuvb_sig_002  \
	cuvb_sig_003 cuvb_sig_004 \
	cuvb_thd_001 \
	cuvb_wrp_001 cuvb_wrp_002 cuvb_wrp_003
CUSB	= \
	cusb_mut_sys_001
CUVI	= \
	cuvi_nbi_001 cuvi_sig_001
DCPB	= \
	dcpb_cvx_001	dcpb_mut_001	dcpb_thd_002 \
	dcpb_thd_003
DCSB	= \
	dcsb_cvx_001
DCVB	= \
	dcvb_att_001 dcvb_att_002 dcvb_att_003 dcvb_att_mut_001  \
	dcvb_can_001 dcvb_can_002 dcvb_can_003 dcvb_can_cvx_001  \
	dcvb_cvx_001 dcvb_cvx_002 dcvb_cvx_tim_001 dcvb_err_001  \
	dcvb_ini_001 dcvb_ini_tis_001  \
	dcvb_mut_001 dcvb_mut_002  \
	dcvb_ptc_001 dcvb_ptc_002 dcvb_ptc_tis_001 dcvb_ptc_tis_002  \
	dcvb_sam_001 dcvb_sam_002  \
	dcvb_thd_001 dcvb_thd_002 dcvb_thd_003 dcvb_thd_004 dcvb_thd_005  \
	dcvb_thd_006 dcvb_thd_007 dcvb_thd_008 dcvb_thd_009  \
	dcvb_tim_001 dcvb_tim_002
DUVB	= \
	duvb_can_sig_001 duvb_can_sig_002 duvb_nbi_001 duvb_nbi_002 \
	duvb_nbi_003 duvb_nbi_004 duvb_nbi_005 duvb_nbi_006 \
	duvb_sig_001 duvb_sig_002 duvb_sig_003 \
	duvb_stk_thd_001 duvb_stk_wrp_001 \
	duvb_sys_thd_001 \
	duvb_thd_001 duvb_thd_002 duvb_thd_003 duvb_thd_004 \
	duvb_wrp_001 duvb_wrp_002 duvb_wrp_003
DUVI	= \
	duvi_nbi_001	duvi_nbi_002
ECPB	= \
	ecpb_ptc_001 ecpb_ptc_tis_001
ECVB	= \
	ecvb_can_001 ecvb_can_002 ecvb_cvx_001 ecvb_cvx_thd_001 \
	ecvb_exc_001 ecvb_mut_001 ecvb_wrp_001
ECVI	= \
	ecvi_sam_001
ECSB	= \
	ecsb_obj_001 
EUVB	= \
	euvb_can_sig_001	euvb_can_sig_002	euvb_exc_001 \
	euvb_exc_nbi_001	euvb_exc_nbi_002	euvb_nbi_001 \
	euvb_thd_001 \
	euvb_wrp_001
PCPB	= \
	pcpb_cvx_001	pcpb_mut_001	pcpb_thd_002 \
	pcpb_thd_003
PCSB	= \
	pcsb_cvx_001
PCVB	= \
	pcvb_att_001 pcvb_att_002 pcvb_att_003 pcvb_att_mut_001  \
	pcvb_can_001 pcvb_can_002 pcvb_can_003 pcvb_can_cvx_001  \
	pcvb_cvx_001 pcvb_cvx_002 pcvb_cvx_tim_001 pcvb_err_001  \
	pcvb_ini_001 pcvb_ini_tis_001  \
	pcvb_mut_001 pcvb_mut_002  \
	pcvb_ptc_001 pcvb_ptc_002 pcvb_ptc_tis_001 pcvb_ptc_tis_002  \
	pcvb_sam_001 pcvb_sam_002  \
	pcvb_thd_001 pcvb_thd_002 pcvb_thd_003 pcvb_thd_004 pcvb_thd_005  \
	pcvb_thd_006 pcvb_thd_007 pcvb_thd_008 pcvb_thd_009  \
	pcvb_tim_001 pcvb_tim_002
PUVB	= \
	puvb_can_sig_001 puvb_can_sig_002 puvb_nbi_001 puvb_nbi_002 \
	puvb_nbi_003 puvb_nbi_004 puvb_nbi_005 puvb_nbi_006 \
	puvb_sig_001 puvb_sig_002 puvb_sig_003 \
	puvb_stk_thd_001 puvb_stk_wrp_001 \
	puvb_sys_thd_001 \
	puvb_thd_001 puvb_thd_002 puvb_thd_003 puvb_thd_004 \
	puvb_wrp_001 puvb_wrp_002 puvb_wrp_003
PUVI	= \
	puvi_nbi_001	puvi_nbi_002

# Targets to allow tests to be built by suite

ccpb: ${CCPB}
ccsb: ${CCSB}
ccvb: ${CCVB}
ccvi: ${CCVI}
cupb: ${CUPB}
cusb: ${CUSB}
cuvb: ${CUVB}
cuvb: ${CUVB}
cuvi: ${CUVI}
dcpb: ${DCPB}
dcsb: ${DCSB}
dcvb: ${DCVB}
duvi: ${DUVI}
ecpb: ${ECPB}
ecsb: ${ECSB}
ecvb: ${ECVB}
ecvi: ${ECVI}
euvb: ${EUVB}
icpb: ${ICPB}
icvb: ${ICVB}
pcpb: ${PCPB}
pcsb: ${PCSB}
pcvb: ${PCVB}
puvb: ${PUVB}
puvi: ${PUVI}

PROGRAMS	= ${CCPB} ${CCSB} ${CCVB} ${CCVI} ${CUPB} ${CUSB} ${CUVB} \
		  ${CUVB} ${CUVI} ${DCPB} ${DCSB} ${DCVB} ${DUVI} ${ECPB} \
		  ${ECSB} ${ECVB} ${ECVI} ${EUVB} ${ICPB} ${ICVB} ${PCPB} \
		  ${PCSB} ${PCVB} ${PUVB} ${PUVI}

OBJECTS		= cts_test.o

alpha_CFLAGS	= 
CFLAGS		= ${INCFLAGS} -Dunix -D_NO_PROTO -D_CMA_NOWRAPPERS_ 
${DEBUG?:-DNDEBUG} ${${target_machine}_CFLAGS}
cuvb_wrp_001.o_CFLAGS	= ${CFLAGS} -D_BSD

OPT_LEVEL	= -O
CC_OPT_LEVEL	= ${CC_OPT_LEVEL?${CC_OPT_LEVEL}:${DEBUG?-g:-O2}

alpha_LDFLAGS	= -non_shared
LDFLAGS		= ${${target_machine}_LDFLAGS}

alpha_LIBS	= -lmach -lexc -lc -lots
LIBS		= -lctest -lcma ${${target_machine}_LIBS}


.include "${MAKEFILEPATH}/standard.mk"
.include "${TARGET_MACHINE}/machdep.mk"
.include "${MAKEFILEPATH}/programs.mk"
.include "${MAKEFILEPATH}/objects.mk"



T.RTitleUserPersonal
Name
DateLines