aboutsummaryrefslogtreecommitdiffstats
path: root/asn1/pkixcmp/Makefile.nmake
diff options
context:
space:
mode:
Diffstat (limited to 'asn1/pkixcmp/Makefile.nmake')
-rw-r--r--asn1/pkixcmp/Makefile.nmake29
1 files changed, 24 insertions, 5 deletions
diff --git a/asn1/pkixcmp/Makefile.nmake b/asn1/pkixcmp/Makefile.nmake
index 2c924d0061..fc5970ec6b 100644
--- a/asn1/pkixcmp/Makefile.nmake
+++ b/asn1/pkixcmp/Makefile.nmake
@@ -4,7 +4,10 @@
include ../../config.nmake
-DISSECTOR_FILES=packet-cmp.c packet-cmp.h
+UNIX2DOS=$(PERL) ../../tools/unix2dos.pl
+
+PROTOCOL_NAME=cmp
+DISSECTOR_FILES=packet-$(PROTOCOL_NAME).c packet-$(PROTOCOL_NAME).h
all: generate_dissector
@@ -12,12 +15,28 @@ generate_dissector: $(DISSECTOR_FILES)
$(DISSECTOR_FILES): ../../tools/asn2eth.py CMP.asn packet-cmp-template.c packet-cmp-template.h cmp.cnf
!IFDEF PYTHON
- $(PYTHON) ../../tools/asn2eth.py -X -b -e -p cmp -c cmp.cnf -s packet-cmp-template CMP.asn
+ $(PYTHON) ../../tools/asn2eth.py -X -b -e -p $(PROTOCOL_NAME) -c cmp.cnf -s packet-cmp-template CMP.asn
+!ELSE
+ @echo Error: You need Python to use asn2eth.py
+ @exit 1
!ENDIF
clean:
rm -f parsetab.py $(DISSECTOR_FILES)
-copy_files: generate_dissector
- xcopy packet-cmp.c ..\..\epan\dissectors /d /y
- xcopy packet-cmp.h ..\..\epan\dissectors /d /y
+# Fix EOL in generated dissectors. Cygwin's python generates files with
+# mixed EOL styles, which can't be commited to the SVN repository.
+# Stuff included from template and "cnf" files has "\r\n" on windows, while
+# the generated stuff has "\n".
+
+fix_eol: generate_dissector
+ move packet-$(PROTOCOL_NAME).c packet-$(PROTOCOL_NAME).c.tmp
+ move packet-$(PROTOCOL_NAME).h packet-$(PROTOCOL_NAME).h.tmp
+ $(UNIX2DOS) < packet-$(PROTOCOL_NAME).c.tmp > packet-$(PROTOCOL_NAME).c
+ $(UNIX2DOS) < packet-$(PROTOCOL_NAME).h.tmp > packet-$(PROTOCOL_NAME).h
+ del /f packet-$(PROTOCOL_NAME).c.tmp packet-$(PROTOCOL_NAME).h.tmp
+
+copy_files: generate_dissector fix_eol
+ xcopy packet-$(PROTOCOL_NAME).c ..\..\epan\dissectors /d /y
+ xcopy packet-$(PROTOCOL_NAME).h ..\..\epan\dissectors /d /y
+