Bugzilla – Bug 4348
globus-makefile-header generates invalid makefile for Index Service bindings
Last modified: 2008-02-20 10:04:32
You need to log in before you can comment on or make changes to this bug.
globus-makefile-header generates invalid makefile for Index Service bindings I call globus-makefile-header which includes index_service_bindings. It generate invalid makefile. The generated makefile causes compile errors. $ globus-makefile-header --flavor=gcc32dbgpthr \ globus_common globus_c_ws_messaging index_service_bindings ... GLOBUS_CFLAGS = -I\$(GLOBUS_LOCATION)/include/\$(GLOBUS_FLAVOR_NAME)/wsrf/servic es -I\$(GLOBUS_LOCATION)/include/\$(GLOBUS_FLAVOR_NAME)/ -I\$(GLOBUS_LOCATION)/i nclude/\$(GLOBUS_FLAVOR_NAME)/wsrf/services -g -D_REENTRANT -Wall GLOBUS_INCLUDES = -I/home/tashiro/ngdvl/c721-gt4cur/gt402tmp/include/gcc32dbgpth r GLOBUS_LIBS = -lpthread ... - backslash characters are appeared. - Unknown variable $GLOBUS_FLAVOR_NAME is appeared. I drop index_service_bindings module by argument, above incorrect Makefile was not appeared. Machine : Pentium 4, Red Hat Linux 9. I installed GT4 Index Service C bindings by following commands. (On Apr 14 2006) $ cvs co -r globus_4_0_branch packaging $ fait_accompli/installer.sh $ export GLOBUS_LOCATION=$PWD/gt402tmp $ cd gt4.0.2-all-source-installer $ ./configure --prefix=$GLOBUS_LOCATION --enable-prewsmds $ make $ make install $ make globus_c_wsrf_core_bindings-thr $ make globus_handler_ws_addressing-thr $ $GLOBUS_LOCATION/bin/globus-wsrf-cgen -no-service -s index_service -flavor gcc32dbg -d $PWD/bindings $GLOBUS_LOCATION/share/schema/mds/index/index_service.wsdl $ $GLOBUS_LOCATION/sbin/gpt-build $PWD/bindings/index_service_bindings-1.2.tar.gz gcc32dbgpthr The install was successful. In addition, Globus Toolkit 4.0.1 package of globus-makefile-header and Index Service bindings are working well.
So line 505 of globus-makefile-header from an installed GT 4.0.3 (from binary) on Mac OS 10.4.8 looks like this: $value =~ s/\$GLOBUS_FLAVOR_NAME/$flavor/g; I think that is necessary, but not sufficient. I find that if I add the following line right after that one $value =~ s/\\\$\(GLOBUS_FLAVOR_NAME\)/$flavor/g; then I do not get "\$(GLOBUS_FLAVOR_NAME)" in the output from globus-makefile-header for the GLOBUS_CFLAGS definition.
Fixed in 4.0 branch and trunk.