-I${expat_prefix}/include \
        ${COVERAGE_FLAGS} \
        -D_GNU_SOURCE \
-       -DDATAGRID_EXTENSION ${LB_STANDALONE_FLAGS}
+       -DDATAGRID_EXTENSION ${LB_STANDALONE_FLAGS} \
+       -DBUILDING_LB_COMMON
 
 ifneq (${expat_prefix},/usr)
        EXPAT_LIBS:=-L${expat_prefix}/lib
 
 #include <string>
 
 #include "glite/jobid/JobId.h"
-#include "glite/lb/CountRef.h"
 
+#ifdef BUILDING_LB_COMMON
+#include "CountRef.h"
+#include "events.h"
+#include "notifid.h"
+#else
+#include "glite/lb/CountRef.h"
 #include "glite/lb/events.h"
 #include "glite/lb/notifid.h"
+#endif
 
 EWL_BEGIN_NAMESPACE
 
 
 #ifndef GLITE_LB_CONNPOOL_H
 #define GLITE_LB_CONNPOOL_H
 
-#include "glite/lb/padstruct.h"
 #include "glite/security/glite_gss.h"
+
+#ifdef BUILDING_LB_COMMON
+#include "padstruct.h"
+#include "context.h"
+#include "lb_plain_io.h"
+#include "authz.h"
+#else
+#include "glite/lb/padstruct.h"
 #include "glite/lb/context.h"
 #include "glite/lb/lb_plain_io.h"
 #include "glite/lb/authz.h"
+#endif
+
 #ifdef GLITE_LB_THREADED
   #include <pthread.h>
 #endif
 
 #ident "$Header$"
 
 #include "glite/security/glite_gss.h"
+
+#ifdef BUILDING_LB_COMMON
+#include "jobstat.h"
+#include "query_rec.h"
+#include "lb_plain_io.h"
+#include "authz.h"
+#include "connpool.h"
+#include "padstruct.h"
+#else
 #include "glite/lb/jobstat.h"
 #include "glite/lb/query_rec.h"
 #include "glite/lb/lb_plain_io.h"
 #include "glite/lb/authz.h"
 #include "glite/lb/connpool.h"
 #include "glite/lb/padstruct.h"
+#endif
 
 #ifdef __cplusplus
 extern "C" {
 
 #include <inttypes.h>
 
 #include "glite/jobid/cjobid.h"
+
+#ifdef BUILDING_LB_COMMON
+#include "context.h"
+#include "notifid.h"
+#include "padstruct.h"
+#else
 #include "glite/lb/context.h"
 #include "glite/lb/notifid.h"
-
 #include "glite/lb/padstruct.h"
+#endif
 
 #ifdef __cplusplus
 extern "C" {
 
 
 #ident "$Header$"
 
+#ifdef BUILDING_LB_COMMON
+#include "events.h"
+#else
 #include "glite/lb/events.h"
+#endif
 
 #ifdef __cplusplus
 extern "C" {
 
 #ifndef GLITE_LB_IL_MSG_H
 #define GLITE_LB_IL_MSG_H
 
+#ifdef BUILDING_LB_COMMON
+#include "il_string.h"
+#else
 #include "glite/lb/il_string.h"
+#endif
 
 #ident "$Header$"
 
 
 
 #include "glite/jobid/cjobid.h"
 #include "glite/jobid/strmd5.h"
+
+#ifdef BUILDING_LB_COMMON
+#include "events.h"
+#else
 #include "glite/lb/events.h"
+#endif
 
 #define PERFTEST_END_TAG_NAME "lb_perftest"
 #define PERFTEST_END_TAG_VALUE "+++ konec testu +++"
 
 #ifndef GLITE_LB_PLAIN_IO_H
 #define GLITE_LB_PLAIN_IO_H
 
+#ifdef BUILDING_LB_COMMON
+#include "padstruct.h"
+#else
 #include "glite/lb/padstruct.h"
+#endif
 
 #ifdef __cplusplus
 extern "C" {
 
 extern "C" {
 #endif
 
-
+#ifdef BUILDING_LB_COMMON
+#include "context.h"
+#else
 #include "glite/lb/context.h"
+#endif
 
 /**
  * default (noauth) user name
 
 #ident "$Header$"
 
 // #include "glite/lb/consumer.h"
+#ifdef BUILDING_LB_COMMON
+#include "context.h"
+#include "connpool.h"
+#else
 #include "glite/lb/context.h"
 #include "glite/lb/connpool.h"
+#endif
 
 /* XXX: not a good place for the folowing #def's but we ain't got better currently */
 /** protocol version */
 
 #ident "$Header$"
 
 #include <glite/jobid/cjobid.h>
+
+#ifdef BUILDING_LB_COMMON
+#include "context.h"
+#include "events.h"
+#include "jobstat.h"
+#else
 #include "glite/lb/context.h"
 #include "glite/lb/events.h"
 #include "glite/lb/jobstat.h"
+#endif
 
 #ifdef __cplusplus
 extern "C" {
 
 #ident "$Header$"
 
 #include "glite/jobid/cjobid.h"
+
+#ifdef BUILDING_LB_COMMON
+#include "events.h"
+#include "query_rec.h"
+#include "notifid.h"
+#include "notif_rec.h"
+#else
 #include "glite/lb/events.h"
 #include "glite/lb/query_rec.h"
 #include "glite/lb/notifid.h"
 #include "glite/lb/notif_rec.h"
+#endif
 
 #ifdef __cplusplus
 extern "C" {
 
 #ident "$Header$"
 
 #include "glite/jobid/cjobid.h"
+
+#ifdef BUILDING_LB_COMMON
+#include "events.h"
+#include "context.h"
+#include "query_rec.h"
+#include "notifid.h"
+#include "notif_rec.h"
+#else
 #include "glite/lb/events.h"
 #include "glite/lb/context.h"
 #include "glite/lb/query_rec.h"
 #include "glite/lb/notifid.h"
 #include "glite/lb/notif_rec.h"
+#endif
 
 #ifdef __cplusplus
 extern "C" {
 
-#include "glite/lb/connpool.h"
+#include "connpool.h"
 
 #ifdef GLITE_LB_THREADED
 edg_wll_Connections connectionsHandle = 
 
 
 #include "glite/jobid/strmd5.h"
 #include "glite/jobid/cjobid.h"
-#include "glite/lb/context-int.h"
-// #include "glite/lb/producer.h"
+#include "context-int.h"
+// #include "producer.h"
 
 static void free_voms_groups(edg_wll_VomsGroups *);
 
 
 #include <errno.h>
 
 #include "glite/jobid/cjobid.h"
-#include "glite/lb/events.h"
-#include "glite/lb/ulm_parse.h"
+#include "events.h"
+#include "ulm_parse.h"
 
 static const struct timeval null_timeval = {0,0};
 
 
 #include <errno.h>
 
 #include "glite/jobid/cjobid.h"
-#include "glite/lb/events.h"
-#include "glite/lb/events_parse.h"
-#include "glite/lb/ulm_parse.h"
-#include "glite/lb/context-int.h"
+#include "events.h"
+#include "events_parse.h"
+#include "ulm_parse.h"
+#include "context-int.h"
 #include "glite/lbu/escape.h"
 #include "glite/lbu/trio.h"
 
 
 #include <stdio.h>
 #include <stdlib.h>
 
-#include "glite/lb/il_string.h"
+#include "il_string.h"
 
 char *
 _put_int(char *p, int d)
 
 #ident "$Header$"
 
-#include "glite/lb/il_string.h"
+#include "il_string.h"
 
 #include <stdlib.h>
 #include <stdio.h>
 
 #include <stdlib.h>
 #include <assert.h>
 
-#include "glite/lb/il_string.h"
+#include "il_string.h"
 
 char *
 put_string(char *p, il_octet_string_t *s)
 
 #include <unistd.h>
 #include <ctype.h>
 
-#include "glite/lb/lb_perftest.h"
 #include "glite/lbu/trio.h"
-#include "glite/lb/il_msg.h"
+
+#include "lb_perftest.h"
+#include "il_msg.h"
 
 static pthread_mutex_t perftest_lock = PTHREAD_MUTEX_INITIALIZER;
 static struct timeval endtime;
 
 #define INFTIM (-1)
 #endif
 
-#include "glite/lb/lb_plain_io.h"
+#include "lb_plain_io.h"
 
 #define tv_sub(a,b) {\
        (a).tv_usec -= (b).tv_usec;\
 
 #include <unistd.h>
 #include <errno.h>
 
-#include "glite/lb/context-int.h"
+#include "context-int.h"
 
 #define tv_sub(a, b) {\
        (a).tv_usec -= (b).tv_usec;\
 
 
 #include "glite/security/glite_gss.h"
 
-#include "glite/lb/mini_http.h"
-#include "glite/lb/lb_plain_io.h"
-#include "glite/lb/context-int.h"
+#include "mini_http.h"
+#include "lb_plain_io.h"
+#include "context-int.h"
 
 #define min(x,y)       ((x) < (y) ? (x) : (y))
 #define CONTENT_LENGTH "Content-Length:"
 
 #include <string.h>
 
 #include "glite/jobid/cjobid.h"
-#include "glite/lb/notifid.h"
+#include "notifid.h"
 
 int edg_wll_NotifIdParse(const char *s,edg_wll_NotifId *n)
 {
 
 #include <stdio.h>
 
 #include "glite/jobid/cjobid.h"
-#include "glite/lb/context-int.h"
+#include "context-int.h"
 // XXX:
-#include "glite/lb/log_proto.h" // for default log host and port
-#include "glite/lb/timeouts.h" // for timeouts
+#include "log_proto.h" // for default log host and port
+#include "timeouts.h" // for timeouts
 
 /* XXX: must match edg_wll_ContextParam */
 static const char *myenv[] = {
 
 #include <assert.h>
 
 #include "glite/jobid/cjobid.h"
-#include "glite/lb/query_rec.h"
+#include "query_rec.h"
 
 /*
  * edg_wll_QueryRec manipulation routines
 
 
 /*========= DATA =====================================================*/
 
-#include "glite/lb/ulm_parse.h"
+#include "ulm_parse.h"
 
 /*========= FUNCTIONS ================================================*/
 
 
 #include "glite/lbu/trio.h"
 #include "glite/lbu/escape.h"
 
-#include "glite/lb/xml_conversions.h"
-#include "glite/lb/jobstat.h"
+#include "xml_conversions.h"
+#include "jobstat.h"
 
 
 
 
 #include "glite/lbu/escape.h"
 #include "glite/jobid/cjobid.h"
 
-#include "glite/lb/context-int.h"
-#include "glite/lb/xml_parse.h"
-#include "glite/lb/xml_conversions.h"    
+#include "context-int.h"
+#include "xml_parse.h"
+#include "xml_conversions.h"    
 
 
 #ifdef __GNUC__