示例#1
0
文件: token.c 项目: ioan-chera/acc
void TK_AddProgramIncludePath(char *progname)
{
	if(NumIncludePaths < MAX_INCLUDE_PATHS)
	{
#ifdef _WIN32
#ifdef _MSC_VER
#if _MSC_VER >= 1300
		if (_get_pgmptr(&progname) != 0)
		{
			return;
		}
#else
		progname = _pgmptr;
#endif
#else
		char progbuff[1024];
		GetModuleFileName(0, progbuff, sizeof(progbuff));
		progbuff[sizeof(progbuff)-1] = '\0';
		progname = progbuff;
#endif
#else
		char progbuff[PATH_MAX];
		if (realpath(progname, progbuff) != NULL)
		{
			progname = progbuff;
		}
#endif
		strcpy(IncludePaths[NumIncludePaths], progname);
		if(MS_StripFilename(IncludePaths[NumIncludePaths]))
		{
			MS_Message(MSG_DEBUG, "Program include path is %d: \"%s\"\n", NumIncludePaths, IncludePaths[NumIncludePaths]);
			NumIncludePaths++;
		}
	}
}
示例#2
0
文件: token.c 项目: ioan-chera/acc
static void SetLocalIncludePath(char *sourceName)
{
	strcpy(IncludePaths[0], sourceName);
	if(MS_StripFilename(IncludePaths[0]) == NO)
	{
		IncludePaths[0][0] = 0;
	}
}
示例#3
0
static char *ErrorFileName(void)
{
	static char errFileName[MAX_FILE_NAME_LENGTH];

	strcpy(errFileName, acs_SourceFileName);
	if(MS_StripFilename(errFileName) == NO)
	{
		strcpy(errFileName, ERROR_FILE_NAME);
	}
	else
	{
		strcat(errFileName, DIRECTORY_DELIMITER ERROR_FILE_NAME);
	}
	return errFileName;
}