netcdf-c/ncdap_test/t_srcdir.h

37 lines
878 B
C
Raw Normal View History

/*! \file
Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014,
2015, 2016, 2017, 2018
University Corporation for Atmospheric Research/Unidata.
See \ref copyright file for more info.
*/
#define XSTRINGIFY(s) #s
#define STRINGIFY(s) XSTRINGIFY(s)
static const char*
gettopsrcdir(void)
{
2018-05-19 10:28:51 +08:00
const char* topsrcdir = NULL;
#ifdef TOPSRCDIR
topsrcdir = STRINGIFY(TOPSRCDIR);
2018-05-19 10:28:51 +08:00
#else
static char tsd[4096];
extern char *getcwd(char *buf, size_t size);
tsd[0] = '\0';
getcwd(tsd,sizeof(tsd));
if(strlen(tsd) > 0) {
strcat(tsd,"/..");
topsrcdir = tsd;
}
#endif
if(topsrcdir == NULL) {
fprintf(stderr,"*** FAIL: $abs_top_srcdir not defined\n");
exit(1);
}
fprintf(stderr,"topsrcdir=%s\n",topsrcdir);
return topsrcdir;
}