support for profiling
authorMiloš Mulač <mulac@civ.zcu.cz>
Tue, 13 Jun 2006 13:24:44 +0000 (13:24 +0000)
committerMiloš Mulač <mulac@civ.zcu.cz>
Tue, 13 Jun 2006 13:24:44 +0000 (13:24 +0000)
org.glite.lb.common/Makefile
org.glite.lb.server-bones/Makefile
org.glite.lb.server-bones/src/srvbones.c
org.glite.lb.server/Makefile
org.glite.lb.server/src/bkserverd.c

index e4e659f..de0d012 100644 (file)
@@ -77,7 +77,7 @@ endif
 EXPAT_LIBS:=${EXPAT_LIBS} -lexpat
 
 LDFLAGS:=-L${stagedir}/lib \
-    ${COVERAGE_FLAGS}
+       ${COVERAGE_FLAGS}
 
 EXT_LIBS:= ${EXPAT_LIBS} ${GLOBUS_LIBS} ${JOBID_LIB}
 EXT_THRLIBS:= ${EXPAT_LIBS} ${GLOBUS_THRLIBS} ${JOBID_LIB}
@@ -85,6 +85,11 @@ EXT_THRLIBS:= ${EXPAT_LIBS} ${GLOBUS_THRLIBS} ${JOBID_LIB}
 TEST_LIBS:=-L${cppunit_prefix}/lib -lcppunit
 TEST_INC:=-I${cppunit_prefix}/include
 
+ifdef LB_PROF
+        CFLAGS:= ${CFLAGS} -pg -g
+        LDFLAGS:= ${LDFLAGS} -pg
+endif
+
 COMPILE:=libtool --mode=compile ${CC}
 LINK:=libtool --mode=link ${CC} -rpath ${stagedir}/lib ${LDFLAGS} 
 LINKXX:=libtool --mode=link  ${CXX} -rpath ${stagedir}/lib ${LDFLAGS} 
index 321765d..1f03996 100644 (file)
@@ -28,6 +28,12 @@ VPATH=${top_srcdir}/src:${top_srcdir}/examples
 
 DEBUG:=-g -O0 -Wall
 CFLAGS:= ${DEBUG} -I${top_srcdir}/interface
+LDFLAGS:=
+
+ifdef LB_PROF
+       CFLAGS:= ${CFLAGS} -pg -g
+       LDFLAGS:= ${LDFLAGS} -pg
+endif
 
 COMPILE:=libtool --mode=compile ${CC} ${CFLAGS}
 LINK:=libtool --mode=link ${CC} -rpath ${stagedir}/lib ${LDFLAGS} 
index b4b8b3f..72f21eb 100644 (file)
@@ -33,6 +33,9 @@
 #define dprintf(x)                     { if (debug) printf x; }
 #endif
 
+#ifdef LB_PROF
+extern void _start (void), etext (void);
+#endif
 
 static int             running = 0;
 static int             debug = 0;
@@ -295,6 +298,10 @@ static int slave(slave_data_init_hnd data_init_hnd, int sock)
 
        if ( (pid = fork()) ) return pid;
 
+#ifdef LB_PROF
+       monstartup((u_long)&_start, (u_long)&etext);
+#endif
+
        srandom(getpid()+time(NULL));
 
        for ( i = 0; i < services_ct; i++ )
index 7c929c3..c0eb3dd 100644 (file)
@@ -83,6 +83,16 @@ CFLAGS:= \
        $(GRIDSITE_CFLAGS) \
        -D_GNU_SOURCE ${LB_STANDALONE_FLAGS} ${LB_PERF_FLAGS}
 
+ifdef LB_PROF
+       SRVBONES_LIB:= ${stagedir}/lib/libglite_lb_server_bones.la
+       LB_COMMON_LIB:=${stagedir}/lib/libglite_lb_common_${nothrflavour}.la
+       CFLAGS:=${CFLAGS} -pg -g
+       LDFLAGS:=${LDFLAGS} -pg
+else
+       SRVBONES_LIB:= -L${stagedir}/lib -lglite_lb_server_bones
+       LB_COMMON_LIB:=-lglite_lb_common_${nothrflavour}
+endif
+
 TEST_LIBS:=-L${cppunit_prefix}/lib -lcppunit
 TEST_INC:=-I${cppunit_prefix}/include
 
@@ -144,8 +154,7 @@ EXT_LIBS:=  \
        ${classadslib} \
        ${VOMS_LIBS}
 
-SRVBONES_LIB:= -L${stagedir}/lib -lglite_lb_server_bones
-COMMON_LIBS:= -L${stagedir}/lib -lglite_lb_common_${nothrflavour} -lglite_security_gss_${nothrflavour}
+COMMON_LIBS:= -L${stagedir}/lib  -lglite_lb_common_${nothrflavour} -lglite_security_gss_${nothrflavour}
 PLUGIN_LIBS:= -L${stagedir}/lib -lglite_lb_common_${nothrflavour}\
        ${classadslib} ${expatlib} -lexpat\
 
@@ -170,7 +179,7 @@ ifeq ($(GLITE_LB_SERVER_WITH_WS),yes)
 
        BKSERVER_LIBS= \
                ${SRVBONES_LIB} \
-               -lglite_lb_common_${nothrflavour} \
+               ${LB_COMMON_LIB} \
                ${GSOAP_LIB} \
                ${EXT_LIBS}
 else
@@ -178,7 +187,7 @@ else
                
        BKSERVER_LIBS= \
                ${SRVBONES_LIB} \
-               -lglite_lb_common_${nothrflavour} \
+               ${LB_COMMON_LIB} \
                -lglite_security_gss_${nothrflavour} \
                ${EXT_LIBS}
 endif
index 2e90911..243e395 100644 (file)
@@ -72,8 +72,9 @@ extern int edg_wll_StoreProto(edg_wll_Context ctx);
 extern edg_wll_ErrorCode edg_wll_Open(edg_wll_Context ctx, char *cs);
 extern edg_wll_ErrorCode edg_wll_Close(edg_wll_Context);
 
-
-
+#ifdef LB_PERF
+extern void _start (void), etext (void);
+#endif
 
 #define CON_QUEUE              20      /* accept() */
 #define SLAVE_OVERLOAD         10      /* queue items per slave */
@@ -577,6 +578,9 @@ a.sin_addr.s_addr = INADDR_ANY;
                        perror("deamon()");
                        exit(1);
                }
+#ifdef LB_PERF
+               monstartup((u_long)&_start, (u_long)&etext);
+#endif
 
                fpid = fopen(pidfile,"w");
                if (!fpid) { perror(pidfile); return 1; }
@@ -1416,10 +1420,11 @@ static int parse_limits(char *opt, int *j_limit, int *e_limit, int *size_limit)
        return (sscanf(opt, "%d:%d:%d", j_limit, e_limit, size_limit) == 3);
 }
 
+
 static int check_mkdir(const char *dir)
 {
        struct stat     sbuf;
-       
+
        if ( stat(dir, &sbuf) )
        {
                if ( errno == ENOENT )