LINKXX:=libtool --mode=link ${CXX} ${LDFLAGS} 
 INSTALL:=libtool --mode=install install
 
+GSOAP_LIB:=-L${gsoap_prefix}/lib -lgsoap${GSOAP_DEBUG}
 
 daemon:=glite-jp-primarystoraged
 example:=jpps-test
 SRCS:= simple_server.c soap_ops.c \
        ftp_backend.c \
        feed.c tags.c\
-       is_client.c \
-       ${ps_prefix}ServerLib.c \
-       ${is_prefix}ClientLib.c \
-       env_C.c
+       ${ps_prefix}Server.c ${ps_prefix}C.c
+
+
+# not yet
+#      ${ps_prefix}ServerLib.c \
+#      ${is_prefix}ClientLib.c \
+#      is_client.c \
+#      env_C.c
 
 EXA_SRCS:=jpps-test.c ${ps_prefix}C.c ${ps_prefix}Client.c
 
 
-OBJS:=${SRCS:.c=.o} stdsoap2.o
-EXA_OBJS:=${EXA_SRCS:.c=.o} stdsoap2.o
+OBJS:=${SRCS:.c=.o}
+EXA_OBJS:=${EXA_SRCS:.c=.o}
 
 COMMONLIB:=-lglite_jp_common
 
 compile: ${daemon} ${example}
 
 ${daemon}: ${OBJS}
-       ${LINK} -o $@ ${OBJS} ${COMMONLIB} ${GLOBUS_LIBS} 
+       ${LINK} -o $@ ${OBJS} ${COMMONLIB} ${GSOAP_LIB} ${GLOBUS_LIBS} 
 
 ${example}: ${EXA_OBJS}
-       ${LINK} -o $@ ${EXA_OBJS} 
+       ${LINK} -o $@ ${EXA_OBJS} ${GSOAP_LIB}
 
 JobProvenanceIS.xh JobProvenancePS.xh: %.xh: %.wsdl JobProvenanceTypes.wsdl typemap.dat
        cp  ${jpproject}/JobProvenanceTypes.wsdl .
 ${ps_prefix}ServerLib.c ${ps_prefix}H.h: JobProvenancePS.xh
        ${gsoap_prefix}/bin/soapcpp2 -n -w -c -p ${ps_prefix} JobProvenancePS.xh
 
-${is_prefix}ClientLib.c ${is_prefix}H.h: JobProvenanceIS.xh
-       ${gsoap_prefix}/bin/soapcpp2 -n -w -c -p ${is_prefix} JobProvenanceIS.xh
+# ${is_prefix}ClientLib.c ${is_prefix}H.h: JobProvenanceIS.xh
+#      ${gsoap_prefix}/bin/soapcpp2 -n -w -c -p ${is_prefix} JobProvenanceIS.xh
 
 env_C.c env_Server.c:
        touch env.xh
 #
 
 
-simple_server.o: ${is_prefix}H.h ${ps_prefix}H.h
+# simple_server.o: ${is_prefix}H.h ${ps_prefix}H.h
+simple_server.o: ${ps_prefix}H.h
 
 check: 
        -echo nothing yet
 
        fprintf(stderr,"%s: [-s server-url] operation args \n\n"
                        "       operations are:\n"
                        "               RegisterJob jobid\n"
-                       "               StartUpload\n"
+                       "               StartUpload jobi jobidd\n"
                        "               CommitUpload\n"
                        "               RecordTag\n"
                        "               GetJob\n"
                        printf("FeedId: %s\nExpires: %s\n",r.feedId,ctime(&r.expires));
                }
        }
+       else if ((!strcasecmp(argv[1],"StartUpload"))) {
+               struct jpsrv__StartUploadResponse       r;
+               time_t now = time(NULL) + 120;
+
+               if (argc != 3) usage(argv[0]);
+
+               if (!check_fault(soap,soap_call_jpsrv__StartUpload(soap,server,"",
+                               argv[2],JOB_LOG,now,"text/plain",&r)))
+               {
+                       printf("Destination: %s\nCommitBefore: %s\n",
+                                       r.destination,ctime(&r.commitBefore));
+               }
+       }
        else usage(argv[0]);
 
        return 0;
 }
 
 
+/* XXX: we don't use it */
+SOAP_NMAC struct Namespace namespaces[] = { {NULL,NULL} };
 
        }
 
        /* matched completely */
-       return glite_jpps_single_feed(ctx,feed->destination,job,attrs);
+       /* FIXME: dont' call it yet 
+       return glite_jpps_single_feed(ctx,feed->destination,job,attrs); */
+       return 0;
 }
 
 int glite_jpps_match_attr(
 
    }
 
    soap.user = (void *) ctx;
+
+/* not yet client of JPIS 
    ctx->other_soap = soap_new();
    soap_init(ctx->other_soap);
    soap_set_namespaces(ctx->other_soap,jpis__namespaces);
+*/
 
    srand48(time(NULL)); /* feed id generation */
 
 
    return 0;
 }
+
+/* XXX: we don't use it */
+SOAP_NMAC struct Namespace namespaces[] = { {NULL,NULL} };