From d38850623497d804a6bb24fe4c9a5d37aa6957ac Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jan=20Posp=C3=AD=C5=A1il?= Date: Tue, 16 Oct 2007 19:24:41 +0000 Subject: [PATCH] merged from branch_RC31_3 --- org.glite.lb.client/Makefile | 47 +++++++++++++++++++------- org.glite.lb.client/project/version.properties | 5 ++- org.glite.lb.client/src/prod_proto.c | 10 +++++- org.glite.lb.client/src/producer.c | 16 ++++----- 4 files changed, 53 insertions(+), 25 deletions(-) diff --git a/org.glite.lb.client/Makefile b/org.glite.lb.client/Makefile index 0061510..4b30f46 100644 --- a/org.glite.lb.client/Makefile +++ b/org.glite.lb.client/Makefile @@ -94,9 +94,16 @@ EXT_LIB:= TEST_LIBS:=-L${cppunit_prefix}/lib -lcppunit TEST_INC:=-I${cppunit_prefix}/include - -LDFLAGS:=-L${stagedir}/lib \ - ${COVERAGE_FLAGS} +# TODO: merge - check the 64bit stuff +# - and what about the new JOBID lib? +archlib:=lib +host_cpu:=${shell uname -m} +ifeq (${host_cpu},x86_64) + archlib:=lib64 + LDFLAGS:=-L${stagedir}/lib64 -L${stagedir}/lib ${COVERAGE_FLAGS} +else + LDFLAGS:=-L${stagedir}/lib +endif COMPILE:=libtool --mode=compile ${CC} ${CFLAGS} CXXCOMPILE:=libtool --mode=compile ${CXX} ${CXXFLAGS} @@ -106,6 +113,7 @@ INSTALL:=libtool --mode=install install LIBOBJS:=connection.o consumer.o notification.o prod_proto.o \ producer.o uiwrap.o statistics.o +# TODO: restructuring - do we really need FAKE versions? maybe remove all FAKEs here FAKELIBOBJS:=consumer_fake.o producer_fake.o PLUSOBJS:=Event.o Job.o JobStatus.o Notification.o ServerConnection.o @@ -137,14 +145,18 @@ THRPLUSLIB:=libglite_lb_clientpp_${thrflavour}.la TOOLS:=${LB_PERF_TOOLS} EXAMPLES:=log_usertag_proxy job_log job_reg feed_shark notify query_ext query_seq_code stats abort_job change_acl stresslog flood_proxy dagids stress_context parse_eventsfile +EXAMPLES_PLUS:=indexed_attrs_plus job_status_plus query_events_plus listener user_jobs_plus job_log_plus notify_plus -EXAMPLES_CL=user_jobs job_status -EXAMPLES_CL_THR=user_jobs_threaded +EXAMPLES_CL:=user_jobs job_status +EXAMPLES_CL_THR:=user_jobs_threaded FAKE_EXAMPLES:=job_log_fake MAN_GZ:=glite-lb-logevent.1.gz MAN = $(MAN_GZ:.gz=) +PLUS_EXTRA_LIB:=-lglite_wmsutils_jobid -lglite_wmsutils_exception + + # version_info=-version-info `echo ${version} | cut -d. -f1,2 | tr . :` # counted minor versions: @@ -165,6 +177,8 @@ generate: ${GEN_HDRS} ln -vs . ${lbprefix} for i in ${HDRS}; do ln -vs ../interface/$$i $$i ; done +default: all + ${LIB}: ${LIBOBJS} ${LINK} ${version_info} -o $@ ${LIBLOBJS} -rpath ${PREFIX}/lib \ ${COMMON_LIB} ${TRIO_LIB} \ @@ -185,11 +199,11 @@ ${FAKETHRLIB}: ${FAKELIBTHROBJS} ${COMMON_LIB_THR} \ -lglite_security_gss_${thrflavour} -${PLUSLIB}: ${PLUSOBJS} - ${LINK} ${version_info} -o $@ ${PLUSLOBJS} -rpath ${PREFIX}/lib ${LIB} +${PLUSLIB}: ${PLUSOBJS} ${LIB} + ${LINKXX} ${version_info} -o $@ ${PLUSLOBJS} -rpath ${PREFIX}/lib ${LIB} ${PLUS_EXTRA_LIB} -${THRPLUSLIB}: ${PLUSTHROBJS} - ${LINK} ${version_info} -o $@ ${PLUSTHRLOBJS} -rpath ${PREFIX}/lib ${THRLIB} +${THRPLUSLIB}: ${PLUSTHROBJS} ${THRLIB} + ${LINKXX} ${version_info} -o $@ ${PLUSTHRLOBJS} -rpath ${PREFIX}/lib ${THRLIB} ${PLUS_EXTRA_LIB} logevent: logevent.o args.o ${LINK} -o $@ logevent.o args.o ${LIB} ${EXT_LIB} @@ -217,6 +231,11 @@ ${PLUSOBJS}: %.o: %.cpp ${PLUSTHROBJS}: %.thr.o: %.cpp ${CXXCOMPILE} -o $@ -c $< +${EXAMPLES_PLUS}: ${PLUSLIB} + +${EXAMPLES_PLUS}: %: %.o + ${LINKXX} -o $@ $< ${PLUSLIB} + ${LIBOBJS} ${FAKELIBOBJS}: %.o: %.c ${COMPILE} -c $< @@ -243,6 +262,9 @@ perftest_logjobs.o: perftest_logjobs.c ${AT3} $< >$@ || rm -f $@ chmod -w $@ >/dev/null +%.o: %.cpp + ${CXX} ${CFLAGS} ${GLOBUSINC} -c $< + %.c: %.c.T rm -f $@ ${AT3} $< >$@ || rm -f $@ @@ -258,7 +280,7 @@ perftest_logjobs.o: perftest_logjobs.c $(GENSAM) $< >$@ || rm -f $@ chmod -w,+x $@ > /dev/null -examples: ${EXAMPLES} ${EXAMPLES_CL} ${EXAMPLES_CL_THR} ${sh_PROGS} +examples: ${EXAMPLES} ${EXAMPLES_PLUS} ${EXAMPLES_CL} ${EXAMPLES_CL_THR} ${sh_PROGS} fake: ${FAKE_EXAMPLES} @@ -280,6 +302,7 @@ stage: compile ${FAKELIB} ${FAKETHRLIB} $(MAKE) install PREFIX=${stagedir} ${INSTALL} -m 644 ${FAKELIB} ${FAKETHRLIB} ${stagedir}/lib +# TODO: restructuring - cleanup the documentation doc: generate cp ${top_srcdir}/doc/*.dox . echo "PROJECT_NUMBER = ${version}" >> C.dox @@ -297,8 +320,7 @@ install: doc ifdef LB_STANDALONE ${INSTALL} -m 644 ${LIB} ${THRLIB} ${PREFIX}/lib else -# FIXME: -# ${INSTALL} -m 644 ${LIB} ${THRLIB} ${PLUSLIB} ${THRPLUSLIB} ${PREFIX}/lib + ${INSTALL} -m 644 ${LIB} ${THRLIB} ${PLUSLIB} ${THRPLUSLIB} ${PREFIX}/lib ${INSTALL} -m 644 ${LIB} ${THRLIB} ${PREFIX}/lib endif ${INSTALL} -m 644 ${top_srcdir}/LICENSE ${PREFIX}/share/doc/${package}-${version} @@ -316,6 +338,7 @@ endif for p in ${TOOLS} ; do \ ${INSTALL} -m 755 "$$p" "${PREFIX}/sbin/glite-lb-$$p"; \ done +# TODO: restructuring - install also source code of examples together with some good Makefile for p in ${EXAMPLES} ${EXAMPLES_CL} ${EXAMPLES_CL_THR} ${sh_PROGS} ; do \ ${INSTALL} -m 755 "$$p" "${PREFIX}/examples/glite-lb-$$p"; \ done diff --git a/org.glite.lb.client/project/version.properties b/org.glite.lb.client/project/version.properties index af629d9..888ecb1 100644 --- a/org.glite.lb.client/project/version.properties +++ b/org.glite.lb.client/project/version.properties @@ -1,4 +1,3 @@ -# $Id$ -# $Name$ -module.version=2.3.3 +# $Header$ +module.version=3.1.0 module.age=1 diff --git a/org.glite.lb.client/src/prod_proto.c b/org.glite.lb.client/src/prod_proto.c index a9ca02a..33745f8 100644 --- a/org.glite.lb.client/src/prod_proto.c +++ b/org.glite.lb.client/src/prod_proto.c @@ -27,6 +27,9 @@ static const char* socket_path="/tmp/lb_proxy_store.sock"; * Handle GSS failures on the client side *---------------------------------------------------------------------- */ +/* TODO: restructuring - move handle_gss_failures to a separate file + and use it both in producer (here) and consumer (connection.c) +*/ static int handle_gss_failures(edg_wll_Context ctx, int code, edg_wll_GssStatus *gss_code, const char *text) { @@ -82,6 +85,9 @@ int handle_gss_failures(edg_wll_Context ctx, int code, edg_wll_GssStatus *gss_co return ret; } +/* TODO: restructuring - start using the following to provide better error handling when communicating with proxy + and use it also both in producer and consumer +*/ #if 0 /* unused */ /** *---------------------------------------------------------------------- @@ -666,7 +672,9 @@ int edg_wll_log_direct_connect(edg_wll_Context ctx, edg_wll_GssConnection *conn) } #ifdef EDG_WLL_LOG_STUB if (my_subject_name) { - // XXX: shouldn't be probably ctx->p_user_lbproxy but some new parameter, eg. ctx->p_user +/* TODO: merge - shouldn't be probably ctx->p_user_lbproxy but some new parameter, eg. ctx->p_user + related to the change in producer.c +*/ edg_wll_SetParamString(ctx, EDG_WLL_PARAM_LBPROXY_USER, my_subject_name); fprintf(stderr,"edg_wll_log_direct_connect: using certificate: %s\n",my_subject_name); } else { diff --git a/org.glite.lb.client/src/producer.c b/org.glite.lb.client/src/producer.c index 4a6ba61..c16dfbf 100644 --- a/org.glite.lb.client/src/producer.c +++ b/org.glite.lb.client/src/producer.c @@ -111,8 +111,6 @@ int edg_wll_DoLogEvent( } edg_wll_DoLogEvent_end: -// XXX: no close if using connpool: edg_wll_log_close(ctx,&conn); - return handle_errors(ctx,answer,"edg_wll_DoLogEvent()"); } @@ -270,7 +268,8 @@ static int edg_wll_FormatLogLine( edg_wll_SetError(ctx,ret = ENOMEM,"edg_wll_FormatLogLine(): trio_asprintf() error"); goto edg_wll_formatlogline_end; } - /* TODO: add always, probably new ctx->p_user */ +/* TODO: merge - add always, probably new ctx->p_user + has this already been agreed? */ if ( ( (flags & EDG_WLL_LOGFLAG_PROXY) || (flags & EDG_WLL_LOGFLAG_DIRECT) ) && (ctx->p_user_lbproxy) ) { if (trio_asprintf(&dguser,EDG_WLL_FORMAT_USER,ctx->p_user_lbproxy) == -1) { @@ -710,7 +709,7 @@ int edg_wll_SetLoggingJobProxy( } /* query LBProxyServer for sequence code if not user-suplied */ -/* XXX: don't know if working properly */ +/* TODO: merge - check if it is really working properly after the unification of proxy and server */ if (!code) { if (edg_wll_QuerySequenceCodeProxy(ctx, job, &code_loc)) goto edg_wll_setloggingjobproxy_end; @@ -1123,12 +1122,11 @@ int edg_wll_RegisterSubjob( const char * seed, edg_wlc_JobId ** subjobs) { -/* XXX: what is that ? */ -#ifdef LB_PERF - return edg_wll_RegisterJobMaster(ctx,EDG_WLL_LOGFLAG_DIRECT,job,type,jdl,ns,parent,num_subjobs,seed,subjobs); -#else +/* TODO: merge - do we want subjobs to be registered + directly to bkserver (LOGFLAG_DIRECT) + or "just" through the locallogger (LOGFLAG_LOCAL) ? +*/ return edg_wll_RegisterJobMaster(ctx,EDG_WLL_LOGFLAG_LOCAL,job,type,jdl,ns,parent,num_subjobs,seed,subjobs); -#endif } /** -- 1.8.2.3