# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-UNIX2DOS=$(PERL) ../../tools/unix2dos.pl
+DISSECTOR=../../epan/dissectors/packet-$(PROTOCOL_NAME).c
+# This header file need not exist/get generated. It is only used when cleaning.
+DISSECTOR_HEADER=../../epan/dissectors/packet-$(PROTOCOL_NAME).h
-
-generate_dissector: $(DISSECTOR_FILES)
+all: $(DISSECTOR)
generate_export: $(EXPORT_FILES)
PROTO_OPT = -p $(PROTOCOL_NAME)
!ENDIF
-$(DISSECTOR_FILES): ../../tools/asn2wrs.py $(SRC_FILES) $(EXTRA_CNF)
+$(DISSECTOR): ../../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 \
+ -c ./$(PROTOCOL_NAME).cnf \
+ -s ./packet-$(PROTOCOL_NAME)-template \
+ -D . \
+ -O ../../epan/dissectors \
$(EXT_ASN_FILE_LIST) $(ASN_FILE_LIST) $(EXT_ASN_FILE_LIST_LATE)
!ELSE
@echo Error: You need Python to use asn2wrs.py
$(PYTHON) "../../tools/asn2wrs.py" \
-E $(A2W_FLAGS) \
$(PROTO_OPT) \
- -c $(PROTOCOL_NAME).cnf \
+ -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
!ENDIF
!ENDIF
+# Don't clean these up until/unless we start building them...
+# $(DISSECTOR) \
+# $(DISSECTOR_HEADER)
clean:
rm -f parsetab.py \
parsetab.pyc \
- $(DISSECTOR_FILES) \
*-exp.cnf \
packet-*-{dis-tab,ettarr,ett,fn,hfarr,hf,table*,val}.[hc]
# 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
- $(UNIX2DOS) < packet-$(PROTOCOL_NAME).c.tmp > packet-$(PROTOCOL_NAME).c
- del /f packet-$(PROTOCOL_NAME).c.tmp
-!IFDEF NEED_PACKET_PROTO_H
- move packet-$(PROTOCOL_NAME).h packet-$(PROTOCOL_NAME).h.tmp
- $(UNIX2DOS) < packet-$(PROTOCOL_NAME).h.tmp > packet-$(PROTOCOL_NAME).h
- del /f packet-$(PROTOCOL_NAME).h.tmp
-!ENDIF
-
-copy_files: generate_dissector
- xcopy packet-$(PROTOCOL_NAME).c ..\..\epan\dissectors /d /y
-!IFDEF NEED_PACKET_PROTO_H
- xcopy packet-$(PROTOCOL_NAME).h ..\..\epan\dissectors /d /y
-!ENDIF
+fix_eol: $(DISSECTOR)
+ u2d $(DISSECTOR) $(DISSECTOR_HEADER)