summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
cdf0e4f)
RMAC will now yell at you if you give it a bogus include path. Thanks
to ggn for the idea! Now at v2.0.11.
char * objfname; // Object filename pointer
char * firstfname; // First source filename
char * cmdlnexec; // Executable name, pointer to ARGV[0]
char * objfname; // Object filename pointer
char * firstfname; // First source filename
char * cmdlnexec; // Executable name, pointer to ARGV[0]
-char * searchpath; // Search path for include files
+char * searchpath = NULL; // Search path for include files
char defname[] = "noname.o"; // Default output filename
int optim_flags[OPT_COUNT]; // Specific optimisations on/off matrix
int optim_pc = 0; // Enforce PC relative
char defname[] = "noname.o"; // Default output filename
int optim_flags[OPT_COUNT]; // Specific optimisations on/off matrix
int optim_pc = 0; // Enforce PC relative
" p: P56 (use this for DSP56001 only)\n"
" l: LOD (use this for DSP56001 only)\n"
" x: com/exe/xex (Atari 800)\n"
" p: P56 (use this for DSP56001 only)\n"
" l: LOD (use this for DSP56001 only)\n"
" x: com/exe/xex (Atari 800)\n"
+ " r: absolute address\n"
" -i[path] Directory to search for include files\n"
" -l[filename] Create an output listing file\n"
" -l*[filename] Create an output listing file without pagination\n"
" -i[path] Directory to search for include files\n"
" -l[filename] Create an output listing file\n"
" -l*[filename] Create an output listing file without pagination\n"
break;
case 'i': // Set directory search path
case 'I':
break;
case 'i': // Set directory search path
case 'I':
searchpath = argv[argno] + 2;
searchpath = argv[argno] + 2;
+
+ // Check to see if include paths actually exist
+ if (strlen(searchpath) > 0)
+ {
+ DIR * test = opendir(searchpath);
+
+ if (test == NULL)
+ {
+ printf("Invalid include path: %s\n", searchpath);
+ errcnt++;
+ return errcnt;
+ }
+
+ closedir(test);
+ }
+
case 'l': // Produce listing file
case 'L':
if (*(argv[argno] + 2) == '*')
case 'l': // Produce listing file
case 'L':
if (*(argv[argno] + 2) == '*')
// Non-target specific stuff
//
#include <inttypes.h>
// Non-target specific stuff
//
#include <inttypes.h>
#include "symbol.h"
#define BYTE uint8_t
#include "symbol.h"
#define BYTE uint8_t
#define MAJOR 2 // Major version number
#define MINOR 0 // Minor version number
#define MAJOR 2 // Major version number
#define MINOR 0 // Minor version number
-#define PATCH 10 // Patch release number
+#define PATCH 11 // Patch release number