⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 probe_pmake.c

📁 基于Blas CLapck的.用过的人知道是干啥的
💻 C
字号:
#include "atlconf.h"void GetPmake(int verb, enum OSTYPE OS, int ncpu, char *pmake){   if (ncpu == 0) ncpu = 1;   if (!OSIsWin(OS)&&CmndResults(NULL, "make DoNothing --version | fgrep GNU"))   { /* using gnu make */      if (ncpu == 1) sprintf(pmake, "$(MAKE) -j 2");      else sprintf(pmake, "$(MAKE) -j %d", ncpu);   }   else   {  /* AIX, HP-UX, SunOS make do not have parallel option */      switch(OS)      {      case OSIRIX:         strcpy(pmake, "$(MAKE) -P");         break;      case OSFreeBSD:         if (ncpu == 1) sprintf(pmake, "$(MAKE) -j 2");         else sprintf(pmake, "$(MAKE) -j %d", ncpu);         break;      default:         strcpy(pmake, "$(MAKE)");      }   }}void PrintUsage(char *name, int iarg, char *arg){   fprintf(stderr, "\nERROR around arg %d (%s).\n", iarg,           arg ? arg : "unknown");   fprintf(stderr, "USAGE: %s [flags] where flags are:\n", name);   fprintf(stderr, "   -v <verb> : verbosity level\n");   fprintf(stderr, "   -O <enum OSTYPE #>  : set OS type\n");   fprintf(stderr,           "   -t <#> : set # of threads (-1: autodect; 0: no threading)\n");   fprintf(stderr,      "NOTE: enum #s can be found by : make xprint_enums ; ./xprint_enums\n");   exit(iarg);}void GetFlags(int nargs,                /* nargs as passed into main */              char **args,              /* args as passed into main */              int *verb,                /* verbosity setting */              enum OSTYPE *OS,          /* OS to assume */              int *nthreads,           /* # of threads */              char **targ             /* mach to ssh to*/             ){   int i, k, k0, kn, DoInt;   char *sp, *sp0;   *verb = 0;   *targ = NULL;   *nthreads = 0;   *OS = 0;   *verb = 0;   *nthreads = -1;   for (i=1; i < nargs; i++)   {      if (args[i][0] != '-')         PrintUsage(args[0], i, args[i]);      switch(args[i][1])      {      case 't':         if (++i >= nargs)            PrintUsage(args[0], i, "out of arguments");         *nthreads = atoi(args[i]);         break;      case 'O':         if (++i >= nargs)            PrintUsage(args[0], i, "out of arguments");         *OS = atoi(args[i]);         break;      case 'v':         if (++i >= nargs)            PrintUsage(args[0], i, "out of arguments");         *verb = atoi(args[i]);         break;      case 'T':         if (++i >= nargs)            PrintUsage(args[0], i, "out of arguments");         *targ = args[i];         break;      default:         PrintUsage(args[0], i, args[i]);      }   }}main(int nargs, char **args){   int verb, OS, arch, ncpu;   char *targ;   char pmake[256];   GetFlags(nargs, args, &verb, &OS, &ncpu, &targ);   GetPmake(verb, OS, ncpu, pmake);   printf("PMAKE='%s'\n", pmake);   exit(0);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -