#include "gnumake.h"
-char* getenv (const char*);
+char *getenv (const char*);
int plugin_is_GPL_compatible;
}
int
-testapi_gmk_setup ()
+testapi_gmk_setup (const gmk_floc *floc)
{
+ const char *verbose = getenv ("TESTAPI_VERBOSE");
+
gmk_add_function ("test-expand", func_test, 1, 1, GMK_FUNC_DEFAULT);
gmk_add_function ("test-noexpand", func_test, 1, 1, GMK_FUNC_NOEXPAND);
gmk_add_function ("test-eval", func_test, 1, 1, GMK_FUNC_DEFAULT);
gmk_add_function ("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_.", func_test, 0, 0, 0);
- if (getenv ("TESTAPI_VERBOSE"))
- printf("testapi_gmk_setup\n");
+ if (verbose)
+ {
+ printf ("testapi_gmk_setup\n");
+
+ if (verbose[0] == '2')
+ printf ("%s:%lu\n", floc->filenm, floc->lineno);
+ }
if (getenv ("TESTAPI_KEEP"))
return -1;
.PHONY: force
", '', "testapi_gmk_setup\nhello\n#MAKE#: 'all' is up to date.\n");
+# sv 63100.
+# Test that make supplies the correct floc when the shared object is loaded
+# again.
+$ENV{TESTAPI_VERBOSE} = 2;
+run_make_test("
+load testapi.so
+$extra_loads
+all:; \$(info \$(test-expand hello))
+testapi.so: force; \$(info \$@)
+force:;
+.PHONY: force
+", '', "testapi_gmk_setup\n#MAKEFILE#:2\ntestapi.so\ntestapi_gmk_setup\n#MAKEFILE#:2\nhello\n#MAKE#: 'all' is up to date.\n");
}
unlink(qw(testapi.c testapi.so)) unless $keep;