summaryrefslogtreecommitdiffstats
path: root/soltools/checkdll/checkdll.c
diff options
context:
space:
mode:
Diffstat (limited to 'soltools/checkdll/checkdll.c')
-rw-r--r--soltools/checkdll/checkdll.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/soltools/checkdll/checkdll.c b/soltools/checkdll/checkdll.c
index 85f526c4632f..722aa7ba979b 100644
--- a/soltools/checkdll/checkdll.c
+++ b/soltools/checkdll/checkdll.c
@@ -47,33 +47,39 @@ static const char *psymbol = "GetVersionInfo";
void usage()
{
- fprintf(stderr, "usage: %s <dllname>\n", pprog_name);
+ fprintf(stderr, "usage: %s [-s] <dllname>\n", pprog_name);
return;
}
int main(int argc, char *argv[])
{
int rc;
+ int silent=0;
void *phandle;
char *(*pfun)(void);
- if ( argc < 2 || argc > 3) {
+ if ( argc < 2 || argc > 4) {
usage();
return 1;
}
+ if ( !strcmp(argv[1],"-s") ) {
+ silent = 1;
+ ++argv, --argc;
+ }
+
if ( (rc = access( argv[1], R_OK )) == -1 ) {
fprintf(stderr, "%s: ERROR: %s: %s\n",
pprog_name, argv[1], strerror(errno));
return 2;
}
- printf("Checking DLL %s ...", argv[1]);
+ if (!silent) printf("Checking DLL %s ...", argv[1]);
fflush(stdout);
if ( (phandle = dlopen(argv[1], RTLD_NOW)) != NULL ) {
if ( (pfun = (char *(*)(void))dlsym(phandle, psymbol)) != NULL ) {
- printf(": ok\n");
+ if (!silent) printf(": ok\n");
}
else
{