nixpkgs/pkgs/development/libraries/c-library/mingw.patch

115 lines
2.8 KiB
Diff
Raw Normal View History

diff -rc c-library-1.2/statistics/rsrc-usage.c c-library-1.2-new/statistics/rsrc-usage.c
*** c-library-1.2/statistics/rsrc-usage.c 2008-11-10 14:09:47.000000000 +0100
--- c-library-1.2-new/statistics/rsrc-usage.c 2010-08-24 09:09:13.000000000 +0200
***************
*** 2,81 ****
#include <unistd.h>
#include <stdio.h>
- #include <sys/time.h>
- #include <sys/resource.h>
#include "rsrc-usage.h"
/*static int AT_calcAllocatedSize();*/
- static struct rusage rsrc_usage;
- static struct rusage flt_rsrc_usage;
void printrusage(struct rusage *rusage) {
- fprintf(stderr, "maxrss %ld\n", rusage->ru_maxrss);
- fprintf(stderr, "ixrss %ld\n", rusage->ru_ixrss);
- fprintf(stderr, "idrss %ld\n", rusage->ru_idrss);
- fprintf(stderr, "isrss %ld\n", rusage->ru_isrss);
- fprintf(stderr, "minflt %ld\n", rusage->ru_minflt);
- fprintf(stderr, "majflt %ld\n", rusage->ru_majflt);
- fprintf(stderr, "nswap %ld\n", rusage->ru_nswap);
- fprintf(stderr, "inblock %ld\n", rusage->ru_inblock);
- fprintf(stderr, "oublock %ld\n", rusage->ru_oublock);
- fprintf(stderr, "msgsnd %ld\n", rusage->ru_msgsnd);
- fprintf(stderr, "msgrcv %ld\n", rusage->ru_msgrcv);
- fprintf(stderr, "nsignals %ld\n", rusage->ru_nsignals);
- fprintf(stderr, "nvcsw %ld\n", rusage->ru_nvcsw);
- fprintf(stderr, "nivcsw %ld\n", rusage->ru_nivcsw);
}
double STATS_Timer(void) {
! static double cur = 0;
! double prev;
!
! prev = cur;
! if (getrusage(RUSAGE_SELF, &rsrc_usage) == -1) {
! perror("getrusage");
! return (double)0;
! }
!
! cur = (double) (rsrc_usage.ru_utime.tv_sec) +
! (double) ((rsrc_usage.ru_utime.tv_usec) * 1.0e-06);
!
! prev = cur - prev;
! return prev > 0 ? prev: 0;
}
void STATS_PageFlt(long *maj, long *min) {
! static long ma, mi, ma_prev, mi_prev;
!
!
! ma_prev = ma;
! mi_prev = mi;
! getrusage(RUSAGE_SELF, &flt_rsrc_usage);
!
! /* printrusage(&flt_rsrc_usage); */
!
! mi = flt_rsrc_usage.ru_minflt - mi_prev;
! ma = flt_rsrc_usage.ru_majflt - ma_prev;
!
! *maj = ma;
! *min = mi;
}
long STATS_Allocated(void) {
! static long allocated = 0L;
! long tmp;
!
! tmp = allocated;
! /** \todo: AT_calcAllocatedSize() is unreachable. Fix. */
! /*allocated = AT_calcAllocatedSize();*/
!
! return allocated - tmp;
}
long STATS_ResidentSetSize(void) {
! getrusage(RUSAGE_SELF, &rsrc_usage);
!
! return rsrc_usage.ru_maxrss;
}
--- 2,29 ----
#include <unistd.h>
#include <stdio.h>
#include "rsrc-usage.h"
/*static int AT_calcAllocatedSize();*/
void printrusage(struct rusage *rusage) {
}
double STATS_Timer(void) {
! return 0;
}
void STATS_PageFlt(long *maj, long *min) {
! *maj = 0;
! *min = 0;
}
long STATS_Allocated(void) {
! return 0;
}
long STATS_ResidentSetSize(void) {
! return 0;
}