aboutsummaryrefslogtreecommitdiffstats
path: root/asn1/Makefile.inc.nmake
blob: 76e320e10780757597521c488a9075249c693a2c (plain)
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# To be included into the asn1 Makefiles for Windows builds
#
# $Id$
#
#
# Wireshark - Network traffic analyzer
# By Gerald Combs <gerald@wireshark.org>
# Copyright 1998 Gerald Combs
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.

generate_dissector: $(DISSECTOR_FILES)

generate_export: $(EXPORT_FILES)

!IFNDEF PROTO_OPT
PROTO_OPT = -p $(PROTOCOL_NAME)
!ENDIF

$(DISSECTOR_FILES): ../../tools/asn2wrs.py $(SRC_FILES) $(EXTRA_CNF)
!IFDEF PYTHON
	$(PYTHON) "../../tools/asn2wrs.py" \
		$(A2W_FLAGS) \
		$(PROTO_OPT) \
		-c ./$(PROTOCOL_NAME).cnf \
		-s ./packet-$(PROTOCOL_NAME)-template \
		-D . \
		$(EXT_ASN_FILE_LIST) $(ASN_FILE_LIST) $(EXT_ASN_FILE_LIST_LATE)
!ELSE
	@echo Error: You need Python to use asn2wrs.py
	@exit 1
!ENDIF

!IFDEF EXPORT_FILES
$(EXPORT_FILES): ../../tools/asn2wrs.py $(SRC_FILES)
!IFDEF PYTHON
	$(PYTHON) "../../tools/asn2wrs.py" \
		-E $(A2W_FLAGS) \
		$(PROTO_OPT) \
		-c ./$(PROTOCOL_NAME).cnf \
		-D . \
		$(EXT_ASN_FILE_LIST) $(ASN_FILE_LIST) $(EXT_ASN_FILE_LIST_LATE)
!ELSE
	@echo Error: You need Python to use asn2wrs.py
	@exit 1
!ENDIF
!ENDIF

clean:
	rm -f parsetab.py \
		parsetab.pyc \
		$(DISSECTOR_FILES) \
		*-exp.cnf \
		packet-*-{dis-tab,ettarr,ett,fn,hfarr,hf,table*,val}.[hc]


distclean: clean

maintainer-clean: distclean

# 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
	u2d $(DISSECTOR_FILES)

copy_files: generate_dissector
   @<<copy_files.bat
@FOR %%A IN ($(DISSECTOR_FILES)) DO xcopy %%A ..\..\epan\dissectors /d /y
<<

compare_files: generate_dissector
   @<<compare_files.bat
@setlocal
@set CYGWIN=%CYGWIN% nodosfilewarning
@FOR %%A IN ($(DISSECTOR_FILES)) DO @diff -U 0 -I '\^#line' -I '[[:blank:]]\*[[:blank:]]\^$Id:[[:blank:]]' ..\..\epan\dissectors\%%A %%A
@exit /b 0
<<