forked from osmocom/wireshark
- Rework the Makefile structure to generate external -cnf files
a protocol depends on. - Make sure we need to add asn files to only 1 Makefile instead of 3 (Makefile, Makefile.nmake, ../Makefile.am) - Change the Makefiles of the camel protocol to use the new structure. svn path=/trunk/; revision=22950
This commit is contained in:
parent
84b28f1399
commit
3b3f182b99
|
@ -21,6 +21,9 @@
|
|||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
|
||||
SUBDIRS = \
|
||||
camel
|
||||
|
||||
EXTRA_DIST = \
|
||||
Makefile.nmake \
|
||||
acp133/acp133.asn \
|
||||
|
@ -42,24 +45,6 @@ EXTRA_DIST = \
|
|||
ansi_map/Makefile.nmake \
|
||||
ansi_map/packet-ansi_map-template.c \
|
||||
ansi_map/packet-ansi_map-template.h \
|
||||
camel/camel.asn \
|
||||
camel/CAP-classes.asn \
|
||||
camel/CAP-datatypes.asn \
|
||||
camel/CAP-errorcodes.asn \
|
||||
camel/CAP-errortypes.asn \
|
||||
camel/CAP-GPRS-ReferenceNumber.asn \
|
||||
camel/CAP-gprsSSF-gsmSCF-ops-args.asn \
|
||||
camel/CAP-gsmSCF-gsmSRF-ops-args.asn \
|
||||
camel/CAP-gsmSSF-gsmSCF-ops-args.asn \
|
||||
camel/CAP-object-identifiers.asn \
|
||||
camel/CAP-operationcodes.asn \
|
||||
camel/CAP-SMS-ops-args.asn \
|
||||
camel/CAP-U-ABORT-Data.asn \
|
||||
camel/camel.cnf \
|
||||
camel/Makefile \
|
||||
camel/Makefile.nmake \
|
||||
camel/packet-camel-template.c \
|
||||
camel/packet-camel-template.h \
|
||||
cdt/cdt.asn \
|
||||
cdt/cdt.cnf \
|
||||
cdt/cdt-exp.cnf \
|
||||
|
|
|
@ -0,0 +1,47 @@
|
|||
# To be included into the asn1 Makefiles
|
||||
#
|
||||
# $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.
|
||||
|
||||
|
||||
all: generate_dissector
|
||||
|
||||
generate_dissector: $(DISSECTOR_FILES) $(EXTRA_CNF)
|
||||
|
||||
$(DISSECTOR_FILES): $(top_srcdir)/tools/asn2wrs.py $(SRC_FILES)
|
||||
python $(top_srcdir)/tools/asn2wrs.py \
|
||||
$(A2W_FLAGS) \
|
||||
-p $(PROTOCOL_NAME) \
|
||||
-c $(srcdir)/$(PROTOCOL_NAME).cnf \
|
||||
-s $(srcdir)/packet-$(PROTOCOL_NAME)-template \
|
||||
-D $(srcdir) \
|
||||
$(ASN_FILE_LIST) $(EXT_ASN_FILE_LIST)
|
||||
|
||||
copy_files: generate_dissector
|
||||
cp $(DISSECTOR_FILES) $(top_srcdir)/epan/dissectors/
|
||||
|
||||
CLEANFILES = \
|
||||
parsetab.py \
|
||||
parsetab.pyc \
|
||||
$(DISSECTOR_FILES) \
|
||||
*-exp.cnf \
|
||||
packet-*-{dis-tab,ettarr,ett,fn,hfarr,hf,table*,val}.[hc]
|
||||
|
|
@ -0,0 +1,71 @@
|
|||
# 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.
|
||||
|
||||
|
||||
UNIX2DOS=$(PERL) ../../tools/unix2dos.pl
|
||||
|
||||
all: generate_dissector
|
||||
|
||||
generate_dissector: $(DISSECTOR_FILES) $(EXTRA_CNF)
|
||||
|
||||
$(DISSECTOR_FILES): ../../tools/asn2wrs.py $(SRC_FILES)
|
||||
!IFDEF PYTHON
|
||||
$(PYTHON) "../../tools/asn2wrs.py" \
|
||||
$(A2W_FLAGS) \
|
||||
-p $(PROTOCOL_NAME) \
|
||||
-c $(PROTOCOL_NAME).cnf \
|
||||
-s packet-$(PROTOCOL_NAME)-template \
|
||||
$(ASN_FILE_LIST)
|
||||
!ELSE
|
||||
@echo Error: You need Python to use asn2wrs.py
|
||||
@exit 1
|
||||
!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
|
||||
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
|
||||
xcopy packet-$(PROTOCOL_NAME).c ..\..\epan\dissectors /d /y
|
||||
xcopy packet-$(PROTOCOL_NAME).h ..\..\epan\dissectors /d /y
|
||||
|
|
@ -2,6 +2,26 @@
|
|||
## Use: $(MAKE) /$(MAKEFLAGS) -f makefile.nmake
|
||||
#
|
||||
# $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.
|
||||
|
||||
|
||||
all: ber per
|
||||
|
||||
|
|
|
@ -1,19 +0,0 @@
|
|||
# $Id$
|
||||
|
||||
PROTOCOL_NAME=camel
|
||||
DISSECTOR_FILES=packet-$(PROTOCOL_NAME).c packet-$(PROTOCOL_NAME).h
|
||||
ROS_ASN= ../ros/Remote-Operations-Information-Objects.asn ../ros/Remote-Operations-Generic-ROS-PDUs.asn
|
||||
ASN_FILE_LIST=TCAPMessages.asn CAP-object-identifiers.asn CAP-classes.asn CAP-datatypes.asn CAP-errorcodes.asn CAP-errortypes.asn CAP-operationcodes.asn CAP-GPRS-ReferenceNumber.asn CAP-gsmSCF-gsmSRF-ops-args.asn CAP-gsmSSF-gsmSCF-ops-args.asn CAP-gprsSSF-gsmSCF-ops-args.asn CAP-SMS-ops-args.asn CAP-U-ABORT-Data.asn $(ROS_ASN)
|
||||
|
||||
all: generate_dissector
|
||||
|
||||
generate_dissector: $(DISSECTOR_FILES)
|
||||
|
||||
$(DISSECTOR_FILES): ../../tools/asn2wrs.py $(ASN_FILE_LIST) packet-$(PROTOCOL_NAME)-template.c packet-$(PROTOCOL_NAME)-template.h camel.cnf
|
||||
python ../../tools/asn2wrs.py -b -X -T -L -e -k -p $(PROTOCOL_NAME) -c camel.cnf -s packet-$(PROTOCOL_NAME)-template $(ASN_FILE_LIST)
|
||||
|
||||
clean:
|
||||
rm -f parsetab.py parsetab.pyc $(DISSECTOR_FILES)
|
||||
|
||||
copy_files: generate_dissector
|
||||
cp $(DISSECTOR_FILES) ../../epan/dissectors
|
|
@ -0,0 +1,25 @@
|
|||
# $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.
|
||||
|
||||
|
||||
include Makefile.common
|
||||
include ../Makefile.inc
|
||||
|
|
@ -0,0 +1,70 @@
|
|||
# $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.
|
||||
|
||||
|
||||
PROTOCOL_NAME=camel
|
||||
|
||||
DISSECTOR_FILES=packet-$(PROTOCOL_NAME).c \
|
||||
packet-$(PROTOCOL_NAME).h
|
||||
|
||||
EXT_ASN_FILE_LIST = \
|
||||
../ros/Remote-Operations-Information-Objects.asn \
|
||||
../ros/Remote-Operations-Generic-ROS-PDUs.asn
|
||||
|
||||
ASN_FILE_LIST = \
|
||||
TCAPMessages.asn \
|
||||
CAP-object-identifiers.asn \
|
||||
CAP-classes.asn \
|
||||
CAP-datatypes.asn \
|
||||
CAP-errorcodes.asn \
|
||||
CAP-errortypes.asn \
|
||||
CAP-operationcodes.asn \
|
||||
CAP-GPRS-ReferenceNumber.asn \
|
||||
CAP-gsmSCF-gsmSRF-ops-args.asn \
|
||||
CAP-gsmSSF-gsmSCF-ops-args.asn \
|
||||
CAP-gprsSSF-gsmSCF-ops-args.asn \
|
||||
CAP-SMS-ops-args.asn \
|
||||
CAP-U-ABORT-Data.asn
|
||||
|
||||
# The packet-$(PROTOCOL_NAME)-template.h and $(PROTOCOL_NAME).asn
|
||||
# files do not exist # for all protocols: Please add/remove as required.
|
||||
EXTRA_DIST = \
|
||||
$(ASN_FILE_LIST) \
|
||||
packet-$(PROTOCOL_NAME)-template.c \
|
||||
packet-$(PROTOCOL_NAME)-template.h \
|
||||
$(PROTOCOL_NAME).asn \
|
||||
$(PROTOCOL_NAME).cnf
|
||||
|
||||
SRC_FILES = \
|
||||
$(EXTRA_DIST) \
|
||||
$(EXT_ASN_FILE_LIST)
|
||||
|
||||
A2W_FLAGS= -b -X -T -L -e -k
|
||||
|
||||
EXTRA_CNF=../inap/inap-exp.cnf \
|
||||
../gsmmap/gsm_map-exp.cnf
|
||||
|
||||
../gsmmap/gsm_map-exp.cnf:
|
||||
(cd ../gsmmap && $(MAKE) $(MAKEFLAGS))
|
||||
|
||||
../inap/inap-exp.cnf:
|
||||
(cd ../inap && $(MAKE) $(MAKEFLAGS))
|
||||
|
|
@ -1,48 +1,28 @@
|
|||
## Use: $(MAKE) /$(MAKEFLAGS) -f makefile.nmake
|
||||
#
|
||||
# $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.
|
||||
|
||||
|
||||
include Makefile.common
|
||||
include ../../config.nmake
|
||||
include ../Makefile.inc.nmake
|
||||
|
||||
UNIX2DOS=$(PERL) ../../tools/unix2dos.pl
|
||||
|
||||
PROTOCOL_NAME=camel
|
||||
DISSECTOR_FILES=packet-$(PROTOCOL_NAME).c packet-$(PROTOCOL_NAME).h
|
||||
COTRACTS_ASN= ../tcap/TC-Notation-Extensions.asn CAP-gsmSCF-gsmSRF-pkgs-contracts-acs.asn CAP-gsmSSF-gsmSCF-pkgs-contracts-acs.asn CAP-gprsSSF-gsmSCF-pkgs-contracts-acs.asn CAP-smsSSF-gsmSCF-pkgs-contracts-acs.asn
|
||||
ROS_ASN= ../ros/Remote-Operations-Information-Objects.asn ../ros/Remote-Operations-Generic-ROS-PDUs.asn
|
||||
ASN_FILE_LIST=TCAPMessages.asn CAP-object-identifiers.asn CAP-classes.asn CAP-datatypes.asn CAP-errorcodes.asn CAP-errortypes.asn CAP-operationcodes.asn CAP-GPRS-ReferenceNumber.asn CAP-gsmSCF-gsmSRF-ops-args.asn CAP-gsmSSF-gsmSCF-ops-args.asn CAP-gprsSSF-gsmSCF-ops-args.asn CAP-SMS-ops-args.asn CAP-U-ABORT-Data.asn $(ROS_ASN)
|
||||
|
||||
all: generate_dissector
|
||||
|
||||
generate_dissector: $(DISSECTOR_FILES)
|
||||
|
||||
$(DISSECTOR_FILES): ../../tools/asn2wrs.py $(ASN_FILE_LIST) packet-$(PROTOCOL_NAME)-template.c packet-$(PROTOCOL_NAME)-template.h camel.cnf
|
||||
!IFDEF PYTHON
|
||||
$(PYTHON) "../../tools/asn2wrs.py" -b -X -T -L -e -k -p $(PROTOCOL_NAME) -c camel.cnf -s packet-$(PROTOCOL_NAME)-template $(ASN_FILE_LIST)
|
||||
!ELSE
|
||||
@echo Error: You need Python to use asn2wrs.py
|
||||
@exit 1
|
||||
!ENDIF
|
||||
|
||||
clean:
|
||||
rm -f parsetab.py parsetab.pyc $(DISSECTOR_FILES)
|
||||
|
||||
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
|
||||
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
|
||||
xcopy packet-$(PROTOCOL_NAME).c ..\..\epan\dissectors /d /y
|
||||
xcopy packet-$(PROTOCOL_NAME).h ..\..\epan\dissectors /d /y
|
||||
|
|
Loading…
Reference in New Issue