diff options
author | Remi Collet <fedora@famillecollet.com> | 2011-02-10 13:51:09 +0100 |
---|---|---|
committer | Remi Collet <fedora@famillecollet.com> | 2011-02-10 13:51:09 +0100 |
commit | c848b9af57da305109c32788a0d98d5305d74048 (patch) | |
tree | 86f808279c515d4d20aa72054b0874be816fecb3 /scriptstub.c | |
parent | 4192184e43dadb39b71af29126825312b539ae26 (diff) |
move mysql 5.5 stuff to new dir
Diffstat (limited to 'scriptstub.c')
-rw-r--r-- | scriptstub.c | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/scriptstub.c b/scriptstub.c new file mode 100644 index 0000000..de942c1 --- /dev/null +++ b/scriptstub.c @@ -0,0 +1,32 @@ +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <unistd.h> + +/* Translate call of myself into call of same-named script in LIBDIR */ +/* The macro LIBDIR must be defined as a double-quoted string */ + +int main (int argc, char **argv) +{ + char *basename; + char *fullname; + char **newargs; + int i; + + basename = strrchr(argv[0], '/'); + if (basename) + basename++; + else + basename = argv[0]; + fullname = malloc(strlen(LIBDIR) + strlen(basename) + 2); + sprintf(fullname, "%s/%s", LIBDIR, basename); + newargs = malloc((argc+1) * sizeof(char *)); + newargs[0] = fullname; + for (i = 1; i < argc; i++) + newargs[i] = argv[i]; + newargs[argc] = NULL; + + execvp(fullname, newargs); + + return 1; +} |