Changeset 50a6c5 in git


Ignore:
Timestamp:
Jun 17, 2014, 5:09:14 PM (10 years ago)
Author:
Hans Schoenemann <hannes@…>
Branches:
(u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
Children:
cbb7532c858edb13f6b986e888868ff61d03394eedc416b44656d35f356464a6169a30f16686a2d7
Parents:
f8df35286530f57c88ffeb98595d16aa5edd60f4
Message:
fix: qsort_r

qsort_r is non-standard, esp. BSD and (newer) LINUX define it differently.
At least one has to test for it (testing OS is not enough).
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • Singular/dyn_modules/syzextra/syzextra.cc

    rf8df35 r50a6c5  
    388388{
    389389  const int sizeNew = IDELEMS(id);
    390 
     390  typedef int(*cmp_fct)(const void *, const void *);
     391
     392#ifdef HAVE_QSORT_R
    391393#if (defined __APPLE__ || defined __MACH__ || defined __DARWIN__ || defined __FREEBSD__ || defined __BSD__ || defined OpenBSD3_1 || defined OpenBSD3_9)
    392394#define qsort_my(m, s, ss, r, cmp) qsort_r(m, s, ss, r, cmp)
     
    394396#define qsort_my(m, s, ss, r, cmp) qsort_r(m, s, ss, cmp, r)
    395397#else
    396 #define qsort_my(m, s, ss, r, cmp) qsort(m, s, ss, cmp)
     398#define qsort_my(m, s, ss, r, cmp) qsort(m, s, ss, (cmp_fct)(cmp))
     399#endif
     400#else
     401#define qsort_my(m, s, ss, r, cmp) qsort(m, s, ss, (cmp_fct)(cmp))
    397402#endif
    398403
  • configure.ac

    rf8df35 r50a6c5  
    4242AC_CHECK_HEADERS(unistd.h iostream.h sys/time.h sys/times.h asm/sigcontext.h)
    4343
    44 AC_CHECK_FUNCS(readlink getcwd getwd setenv putenv)
     44AC_CHECK_FUNCS(readlink getcwd getwd setenv putenv qsort_r)
    4545
    4646
Note: See TracChangeset for help on using the changeset viewer.