aboutsummaryrefslogtreecommitdiffstats
path: root/asn1/h245
diff options
context:
space:
mode:
authorLars Roland <Lars.Roland@gmx.net>2005-01-16 23:26:02 +0000
committerLars Roland <Lars.Roland@gmx.net>2005-01-16 23:26:02 +0000
commit13bf5539af20a4c372bbcb58c0a0f8d051ab3dbc (patch)
tree6729af791c3a980a4455c5271cb71657d4587889 /asn1/h245
parentce032dd5cf1248a0611ae61902c721eed04888e0 (diff)
When using Cygwin's python asn2eth.py
generates dissectors with mixed EOL! SVN doesn't allow you to commit such files. Add a target to all nmake makefiles in asn1 subdirectory which will fix these files. svn path=/trunk/; revision=13077
Diffstat (limited to 'asn1/h245')
-rw-r--r--asn1/h245/Makefile.nmake31
1 files changed, 25 insertions, 6 deletions
diff --git a/asn1/h245/Makefile.nmake b/asn1/h245/Makefile.nmake
index d7dfb3c4b3..400f472d6c 100644
--- a/asn1/h245/Makefile.nmake
+++ b/asn1/h245/Makefile.nmake
@@ -4,20 +4,39 @@
include ../../config.nmake
-DISSECTOR_FILES=packet-h245.c packet-h245.h
+UNIX2DOS=$(PERL) ../../tools/unix2dos.pl
+
+PROTOCOL_NAME=h245
+DISSECTOR_FILES=packet-$(PROTOCOL_NAME).c packet-$(PROTOCOL_NAME).h
all: generate_dissector
generate_dissector: $(DISSECTOR_FILES)
-$(DISSECTOR_FILES): ../../tools/asn2eth.py packet-h245-template.c packet-h245-template.h h245.cnf
+$(DISSECTOR_FILES): ../../tools/asn2eth.py $(PROTOCOL_NAME).asn $(PROTOCOL_NAME).cnf packet-$(PROTOCOL_NAME)-template.c packet-$(PROTOCOL_NAME)-template.h
!IFDEF PYTHON
- $(PYTHON) ../../tools/asn2eth.py -X -e -p h245 -c h245.cnf -s packet-h245-template h245.asn
+ $(PYTHON) ../../tools/asn2eth.py -X -e -p $(PROTOCOL_NAME) -c $(PROTOCOL_NAME).cnf -s packet-$(PROTOCOL_NAME)-template $(PROTOCOL_NAME).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-h245.c ..\..\epan\dissectors /d /y
- xcopy packet-h245.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
+