diff options
author | jan.nijtmans <nijtmans@users.sourceforge.net> | 2012-08-17 07:21:34 (GMT) |
---|---|---|
committer | jan.nijtmans <nijtmans@users.sourceforge.net> | 2012-08-17 07:21:34 (GMT) |
commit | 655c8c52be3b109ab737475210e3cd877921076c (patch) | |
tree | 47adf467a2fc873553c03f1fae51e3e07baf031e | |
parent | 50d80bc71893acbc27ec158d7fc0607e1c8e50b6 (diff) | |
parent | 53c3622234fd4f6f0942c48e474c2ca166c3c6bd (diff) | |
download | tcl-655c8c52be3b109ab737475210e3cd877921076c.zip tcl-655c8c52be3b109ab737475210e3cd877921076c.tar.gz tcl-655c8c52be3b109ab737475210e3cd877921076c.tar.bz2 |
nmakehlp: Add "-V<num>" option, in order to be able to detect partial version numbers.
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | win/nmakehlp.c | 10 |
2 files changed, 11 insertions, 4 deletions
@@ -1,3 +1,8 @@ +2012-08-17 Jan Nijtmans <nijtmans@users.sf.net> + + * win/nmakehlp.c: Add "-V<num>" option, in order to be able + to detect partial version numbers. + 2012-08-15 Jan Nijtmans <nijtmans@users.sf.net> * win/buildall.vc.bat: Only build the threaded builds by default diff --git a/win/nmakehlp.c b/win/nmakehlp.c index 2868857..d0edcf0 100644 --- a/win/nmakehlp.c +++ b/win/nmakehlp.c @@ -47,7 +47,7 @@ static int CheckForLinkerFeature(const char *option); static int IsIn(const char *string, const char *substring); static int SubstituteFile(const char *substs, const char *filename); static int QualifyPath(const char *path); -static const char *GetVersionFromFile(const char *filename, const char *match); +static const char *GetVersionFromFile(const char *filename, const char *match, int numdots); static DWORD WINAPI ReadFromPipe(LPVOID args); /* globals */ @@ -153,7 +153,7 @@ main( &dwWritten, NULL); return 0; } - printf("%s\n", GetVersionFromFile(argv[2], argv[3])); + printf("%s\n", GetVersionFromFile(argv[2], argv[3], *(argv[1]+2) - '0')); return 0; case 'Q': if (argc != 3) { @@ -479,7 +479,8 @@ IsIn( static const char * GetVersionFromFile( const char *filename, - const char *match) + const char *match, + int numdots) { size_t cbBuffer = 100; static char szBuffer[100]; @@ -509,7 +510,8 @@ GetVersionFromFile( */ q = p; - while (*q && (isalnum(*q) || *q == '.')) { + while (*q && (strchr("0123456789.ab", *q)) && ((!strchr(".ab", *q) + && (!strchr("ab", q[-1])) || --numdots))) { ++q; } |