aboutsummaryrefslogtreecommitdiff
path: root/ports/winnt/vs2013/ntpd/gen-ntp_keyword.bat
blob: b56632738f8bb0d33c85a725fc7b566e4b40cf2b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
@echo off
REM gen-ntp_keyword.bat
REM helper to invoke keyword-gen and possibly update ntp_keyword.h
REM Usage:
REM   gen-ntp_keyword dir_containing_keyword-gen.exe
REM

set HDR_FILE=..\..\..\..\ntpd\ntp_keyword.h
set UTD_FILE=..\..\..\..\ntpd\keyword-gen-utd

if "{%1}" == "{}" goto Usage
if not exist "%1\keyword-gen.exe" goto ExeNotFound
"%1\keyword-gen.exe" ..\..\..\..\ntpd\ntp_parser.h > new_keyword.h

REM check if we must create both files from scratch
if not exist "%HDR_FILE%" goto createFiles
if not exist "%UTD_FILE%" goto createFiles

findstr /v diff_ignore_line new_keyword.h > new_keyword_cmp.h
findstr /v diff_ignore_line "%HDR_FILE%"  > ntp_keyword_cmp.h
set meat_changed=0
fc /L ntp_keyword_cmp.h new_keyword_cmp.h > NUL
if errorlevel 1 set meat_changed=1
del ntp_keyword_cmp.h new_keyword_cmp.h
if "0"=="%meat_changed%" goto SkipUpdate

:createFiles
copy /y /v new_keyword.h "%HDR_FILE%"  > NUL
findstr diff_ignore_line new_keyword.h > "%UTD_FILE%"
echo updated keyword-gen-utd and ntp_keyword.h
goto SkipSkipMsg

:skipUpdate
echo ntp_keyword.h is unchanged
REM 'touch' the files by replacing them with a concatenation of itself and NUL:
copy /b "%HDR_FILE%" + NUL "%HDR_FILE%" > NUL
copy /b "%UTD_FILE%" + NUL "%UTD_FILE%" > NUL

:SkipSkipMsg
set meat_changed=
del new_keyword.h
goto Exit

:Usage
echo Usage:
echo   gen-ntp_keyword dir_containing_keyword-gen.exe
goto Exit

:ExeNotFound
echo keyword-gen.exe not found at %1\keyword-gen.exe
goto Exit

:Exit