mirror of
https://github.com/cc65/cc65.git
synced 2025-01-12 17:30:50 +00:00
Changed the order of directories that are searched for files.
This commit is contained in:
parent
be5a5e03d8
commit
af55b24593
@ -6,7 +6,7 @@
|
|||||||
/* */
|
/* */
|
||||||
/* */
|
/* */
|
||||||
/* */
|
/* */
|
||||||
/* (C) 2003-2010, Ullrich von Bassewitz */
|
/* (C) 2003-2013, Ullrich von Bassewitz */
|
||||||
/* Roemerstrasse 52 */
|
/* Roemerstrasse 52 */
|
||||||
/* D-70794 Filderstadt */
|
/* D-70794 Filderstadt */
|
||||||
/* EMail: uz@cc65.org */
|
/* EMail: uz@cc65.org */
|
||||||
@ -48,6 +48,10 @@ SearchPath* LibSearchPath; /* Library path */
|
|||||||
SearchPath* ObjSearchPath; /* Object file path */
|
SearchPath* ObjSearchPath; /* Object file path */
|
||||||
SearchPath* CfgSearchPath; /* Config file path */
|
SearchPath* CfgSearchPath; /* Config file path */
|
||||||
|
|
||||||
|
SearchPath* LibDefaultPath; /* Default Library path */
|
||||||
|
SearchPath* ObjDefaultPath; /* Default Object file path */
|
||||||
|
SearchPath* CfgDefaultPath; /* Default Config file path */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
@ -64,31 +68,35 @@ void InitSearchPaths (void)
|
|||||||
ObjSearchPath = NewSearchPath ();
|
ObjSearchPath = NewSearchPath ();
|
||||||
CfgSearchPath = NewSearchPath ();
|
CfgSearchPath = NewSearchPath ();
|
||||||
|
|
||||||
|
LibDefaultPath = NewSearchPath ();
|
||||||
|
ObjDefaultPath = NewSearchPath ();
|
||||||
|
CfgDefaultPath = NewSearchPath ();
|
||||||
|
|
||||||
/* Always search all stuff in the current directory */
|
/* Always search all stuff in the current directory */
|
||||||
AddSearchPath (LibSearchPath, "");
|
AddSearchPath (LibSearchPath, "");
|
||||||
AddSearchPath (ObjSearchPath, "");
|
AddSearchPath (ObjSearchPath, "");
|
||||||
AddSearchPath (CfgSearchPath, "");
|
AddSearchPath (CfgSearchPath, "");
|
||||||
|
|
||||||
/* Add some compiled in search paths if defined at compile time */
|
/* Add specific paths from the environment. */
|
||||||
|
AddSearchPathFromEnv (LibDefaultPath, "LD65_LIB");
|
||||||
|
AddSearchPathFromEnv (ObjDefaultPath, "LD65_OBJ");
|
||||||
|
AddSearchPathFromEnv (CfgDefaultPath, "LD65_CFG");
|
||||||
|
|
||||||
|
/* Add paths relative to a main directory defined in an env. var. */
|
||||||
|
AddSubSearchPathFromEnv (LibDefaultPath, "CC65_HOME", "lib");
|
||||||
|
AddSubSearchPathFromEnv (ObjDefaultPath, "CC65_HOME", "obj");
|
||||||
|
AddSubSearchPathFromEnv (CfgDefaultPath, "CC65_HOME", "cfg");
|
||||||
|
|
||||||
|
/* Add some compiled-in search paths if defined at compile time. */
|
||||||
#if defined(LD65_LIB)
|
#if defined(LD65_LIB)
|
||||||
AddSearchPath (LibSearchPath, STRINGIZE (LD65_LIB));
|
AddSearchPath (LibDefaultPath, STRINGIZE (LD65_LIB));
|
||||||
#endif
|
#endif
|
||||||
#if defined(LD65_OBJ)
|
#if defined(LD65_OBJ)
|
||||||
AddSearchPath (ObjSearchPath, STRINGIZE (LD65_OBJ));
|
AddSearchPath (ObjDefaultPath, STRINGIZE (LD65_OBJ));
|
||||||
#endif
|
#endif
|
||||||
#if defined(LD65_CFG)
|
#if defined(LD65_CFG)
|
||||||
AddSearchPath (CfgSearchPath, STRINGIZE (LD65_CFG));
|
AddSearchPath (CfgDefaultPath, STRINGIZE (LD65_CFG));
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Add specific paths from the environment */
|
|
||||||
AddSearchPathFromEnv (LibSearchPath, "LD65_LIB");
|
|
||||||
AddSearchPathFromEnv (ObjSearchPath, "LD65_OBJ");
|
|
||||||
AddSearchPathFromEnv (CfgSearchPath, "LD65_CFG");
|
|
||||||
|
|
||||||
/* Add paths relative to a main directory defined in an env var */
|
|
||||||
AddSubSearchPathFromEnv (LibSearchPath, "CC65_HOME", "lib");
|
|
||||||
AddSubSearchPathFromEnv (ObjSearchPath, "CC65_HOME", "obj");
|
|
||||||
AddSubSearchPathFromEnv (CfgSearchPath, "CC65_HOME", "cfg");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
/* */
|
/* */
|
||||||
/* */
|
/* */
|
||||||
/* */
|
/* */
|
||||||
/* (C) 2003-2010, Ullrich von Bassewitz */
|
/* (C) 2003-2013, Ullrich von Bassewitz */
|
||||||
/* Roemerstrasse 52 */
|
/* Roemerstrasse 52 */
|
||||||
/* D-70794 Filderstadt */
|
/* D-70794 Filderstadt */
|
||||||
/* EMail: uz@cc65.org */
|
/* EMail: uz@cc65.org */
|
||||||
@ -53,6 +53,10 @@ extern SearchPath* LibSearchPath; /* Library path */
|
|||||||
extern SearchPath* ObjSearchPath; /* Object file path */
|
extern SearchPath* ObjSearchPath; /* Object file path */
|
||||||
extern SearchPath* CfgSearchPath; /* Config file path */
|
extern SearchPath* CfgSearchPath; /* Config file path */
|
||||||
|
|
||||||
|
extern SearchPath* LibDefaultPath; /* Default Library path */
|
||||||
|
extern SearchPath* ObjDefaultPath; /* Default Object file path */
|
||||||
|
extern SearchPath* CfgDefaultPath; /* Default Config file path */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
/* */
|
/* */
|
||||||
/* */
|
/* */
|
||||||
/* */
|
/* */
|
||||||
/* (C) 1998-2010, Ullrich von Bassewitz */
|
/* (C) 1998-2013, Ullrich von Bassewitz */
|
||||||
/* Roemerstrasse 52 */
|
/* Roemerstrasse 52 */
|
||||||
/* D-70794 Filderstadt */
|
/* D-70794 Filderstadt */
|
||||||
/* EMail: uz@cc65.org */
|
/* EMail: uz@cc65.org */
|
||||||
@ -178,10 +178,16 @@ static void LinkFile (const char* Name, FILETYPE Type)
|
|||||||
|
|
||||||
case FILETYPE_LIB:
|
case FILETYPE_LIB:
|
||||||
PathName = SearchFile (LibSearchPath, Name);
|
PathName = SearchFile (LibSearchPath, Name);
|
||||||
|
if (PathName == 0) {
|
||||||
|
PathName = SearchFile (LibDefaultPath, Name);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case FILETYPE_OBJ:
|
case FILETYPE_OBJ:
|
||||||
PathName = SearchFile (ObjSearchPath, Name);
|
PathName = SearchFile (ObjSearchPath, Name);
|
||||||
|
if (PathName == 0) {
|
||||||
|
PathName = SearchFile (ObjDefaultPath, Name);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
@ -295,13 +301,15 @@ static void OptConfig (const char* Opt attribute ((unused)), const char* Arg)
|
|||||||
}
|
}
|
||||||
/* Search for the file */
|
/* Search for the file */
|
||||||
PathName = SearchFile (CfgSearchPath, Arg);
|
PathName = SearchFile (CfgSearchPath, Arg);
|
||||||
|
if (PathName == 0) {
|
||||||
|
PathName = SearchFile (CfgDefaultPath, Arg);
|
||||||
|
}
|
||||||
if (PathName == 0) {
|
if (PathName == 0) {
|
||||||
Error ("Cannot find config file `%s'", Arg);
|
Error ("Cannot find config file `%s'", Arg);
|
||||||
} else {
|
|
||||||
CfgSetName (PathName);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Read the config */
|
/* Read the config */
|
||||||
|
CfgSetName (PathName);
|
||||||
CfgRead ();
|
CfgRead ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -487,6 +495,9 @@ static void OptTarget (const char* Opt attribute ((unused)), const char* Arg)
|
|||||||
|
|
||||||
/* Search for the file */
|
/* Search for the file */
|
||||||
PathName = SearchFile (CfgSearchPath, SB_GetBuf (&FileName));
|
PathName = SearchFile (CfgSearchPath, SB_GetBuf (&FileName));
|
||||||
|
if (PathName == 0) {
|
||||||
|
PathName = SearchFile (CfgDefaultPath, SB_GetBuf (&FileName));
|
||||||
|
}
|
||||||
if (PathName == 0) {
|
if (PathName == 0) {
|
||||||
Error ("Cannot find config file `%s'", SB_GetBuf (&FileName));
|
Error ("Cannot find config file `%s'", SB_GetBuf (&FileName));
|
||||||
}
|
}
|
||||||
@ -715,4 +726,3 @@ int main (int argc, char* argv [])
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user