aboutsummaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2012-11-16 11:44:01 +0000
committerChristian Grothoff <christian@grothoff.org>2012-11-16 11:44:01 +0000
commit6f6f02b1ad22010c4381485b80e37641d7e70fd0 (patch)
treed33fb25cf386eeec33c7a9cc52b9f26a54521c6b /src/lib
parent54e8a8abe3841b4c0ba17ea50321ddbe18032867 (diff)
downloadgnunet-gtk-6f6f02b1ad22010c4381485b80e37641d7e70fd0.tar.gz
gnunet-gtk-6f6f02b1ad22010c4381485b80e37641d7e70fd0.zip
-more libexec fixes for OpenSUSE
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/os_installation.c53
1 files changed, 49 insertions, 4 deletions
diff --git a/src/lib/os_installation.c b/src/lib/os_installation.c
index d822b553..4b169302 100644
--- a/src/lib/os_installation.c
+++ b/src/lib/os_installation.c
@@ -522,9 +522,30 @@ GNUNET_GTK_installation_get_path (enum GNUNET_OS_InstallationPathKind dirkind)
522 break; 522 break;
523 case GNUNET_OS_IPK_LIBDIR: 523 case GNUNET_OS_IPK_LIBDIR:
524 if (isbasedir) 524 if (isbasedir)
525 {
525 dirname = 526 dirname =
526 DIR_SEPARATOR_STR "lib" DIR_SEPARATOR_STR "gnunet-gtk" 527 DIR_SEPARATOR_STR "lib" DIR_SEPARATOR_STR "gnunet-gtk" DIR_SEPARATOR_STR;
527 DIR_SEPARATOR_STR; 528 tmp = GNUNET_malloc (strlen (execpath) + strlen (dirname) + 1);
529 sprintf (tmp, "%s%s", execpath, dirname);
530 if ( (GNUNET_YES !=
531 GNUNET_DISK_directory_test (tmp, GNUNET_YES)) &&
532 (4 == sizeof (void *)) )
533 {
534 GNUNET_free (tmp);
535 dirname =
536 DIR_SEPARATOR_STR "lib32" DIR_SEPARATOR_STR "gnunet-gtk" DIR_SEPARATOR_STR;
537 tmp = GNUNET_malloc (strlen (execpath) + strlen (dirname) + 1);
538 sprintf (tmp, "%s%s", execpath, dirname);
539 }
540 if ( (GNUNET_YES !=
541 GNUNET_DISK_directory_test (tmp, GNUNET_YES)) &&
542 (8 == sizeof (void *)) )
543 {
544 dirname =
545 DIR_SEPARATOR_STR "lib64" DIR_SEPARATOR_STR "gnunet-gtk" DIR_SEPARATOR_STR;
546 }
547 GNUNET_free (tmp);
548 }
528 else 549 else
529 dirname = DIR_SEPARATOR_STR "gnunet-gtk" DIR_SEPARATOR_STR; 550 dirname = DIR_SEPARATOR_STR "gnunet-gtk" DIR_SEPARATOR_STR;
530 break; 551 break;
@@ -543,12 +564,36 @@ GNUNET_GTK_installation_get_path (enum GNUNET_OS_InstallationPathKind dirkind)
543 break; 564 break;
544 case GNUNET_OS_IPK_LIBEXECDIR: 565 case GNUNET_OS_IPK_LIBEXECDIR:
545 if (isbasedir) 566 if (isbasedir)
567 {
546 dirname = 568 dirname =
547 DIR_SEPARATOR_STR "lib" DIR_SEPARATOR_STR "gnunet" DIR_SEPARATOR_STR \ 569 DIR_SEPARATOR_STR "lib" DIR_SEPARATOR_STR "gnunet-gtk" DIR_SEPARATOR_STR \
548 "libexec" DIR_SEPARATOR_STR; 570 "libexec" DIR_SEPARATOR_STR;
571 tmp = GNUNET_malloc (strlen (execpath) + strlen (dirname) + 1);
572 sprintf (tmp, "%s%s", execpath, dirname);
573 if ( (GNUNET_YES !=
574 GNUNET_DISK_directory_test (tmp, GNUNET_YES)) &&
575 (4 == sizeof (void *)) )
576 {
577 GNUNET_free (tmp);
578 dirname =
579 DIR_SEPARATOR_STR "lib32" DIR_SEPARATOR_STR "gnunet-gtk" DIR_SEPARATOR_STR \
580 "libexec" DIR_SEPARATOR_STR;
581 tmp = GNUNET_malloc (strlen (execpath) + strlen (dirname) + 1);
582 sprintf (tmp, "%s%s", execpath, dirname);
583 }
584 if ( (GNUNET_YES !=
585 GNUNET_DISK_directory_test (tmp, GNUNET_YES)) &&
586 (8 == sizeof (void *)) )
587 {
588 dirname =
589 DIR_SEPARATOR_STR "lib64" DIR_SEPARATOR_STR "gnunet-gtk" DIR_SEPARATOR_STR \
590 "libexec" DIR_SEPARATOR_STR;
591 }
592 GNUNET_free (tmp);
593 }
549 else 594 else
550 dirname = 595 dirname =
551 DIR_SEPARATOR_STR "gnunet" DIR_SEPARATOR_STR \ 596 DIR_SEPARATOR_STR "gnunet-gtk" DIR_SEPARATOR_STR \
552 "libexec" DIR_SEPARATOR_STR; 597 "libexec" DIR_SEPARATOR_STR;
553 break; 598 break;
554 default: 599 default: