blob: 427062c28a1533265c185751f5117dd74c008305 [file] [log] [blame]
David Reissea2cba82009-03-30 21:35:00 +00001#
2# Licensed to the Apache Software Foundation (ASF) under one
3# or more contributor license agreements. See the NOTICE file
4# distributed with this work for additional information
5# regarding copyright ownership. The ASF licenses this file
6# to you under the Apache License, Version 2.0 (the
7# "License"); you may not use this file except in compliance
8# with the License. You may obtain a copy of the License at
9#
10# http://www.apache.org/licenses/LICENSE-2.0
11#
12# Unless required by applicable law or agreed to in writing,
13# software distributed under the License is distributed on an
14# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15# KIND, either express or implied. See the License for the
16# specific language governing permissions and limitations
17# under the License.
18#
Todd Lipcon53ae9f32009-12-07 00:42:38 +000019#
20# Contains some contributions under the Thrift Software License.
21# Please see doc/old-thrift-license.txt in the Thrift distribution for
22# details.
David Reissea2cba82009-03-30 21:35:00 +000023
Mark Sleeeb0d0242007-01-25 07:58:55 +000024AM_YFLAGS = -d
Jake Farrell69935692011-08-29 18:22:11 +000025LIBS =
Jens Geyer86777192015-07-25 15:59:46 +020026BUILT_SOURCES = src/thrifty.cc
Mark Sleeeb0d0242007-01-25 07:58:55 +000027
28bin_PROGRAMS = thrift
29
Christian Lavoieaf65f1b2010-11-24 21:58:05 +000030noinst_LIBRARIES = libparse.a
31
Mark Sleeeb0d0242007-01-25 07:58:55 +000032thrift_OBJDIR = obj
33
Christian Lavoieaf65f1b2010-11-24 21:58:05 +000034thrift_SOURCES = src/main.cc \
David Reiss8df6c822008-05-04 03:00:22 +000035 src/md5.c \
Mark Sleeeb0d0242007-01-25 07:58:55 +000036 src/generate/t_generator.cc \
Bryan Duxburyc412a2f2010-08-04 18:51:57 +000037 src/generate/t_generator_registry.h \
Mark Sleeefd37f12007-11-20 05:13:09 +000038 src/globals.h \
39 src/main.h \
David Reiss204420f2008-01-11 20:59:03 +000040 src/platform.h \
jfarrell8fd8c632014-07-10 09:14:51 -040041 src/logging.h \
Mark Sleeefd37f12007-11-20 05:13:09 +000042 src/md5.h \
Ben Craig262cfb42015-07-08 20:37:15 -050043 src/audit/t_audit.cpp \
jfarrellf13e4312015-08-25 00:39:29 -040044 src/audit/t_audit.h \
Mark Sleeefd37f12007-11-20 05:13:09 +000045 src/parse/t_doc.h \
46 src/parse/t_type.h \
47 src/parse/t_base_type.h \
48 src/parse/t_enum.h \
49 src/parse/t_enum_value.h \
50 src/parse/t_typedef.h \
jfarrelle0e83162014-04-08 22:45:01 -040051 src/parse/t_typedef.cc \
Mark Sleeefd37f12007-11-20 05:13:09 +000052 src/parse/t_container.h \
53 src/parse/t_list.h \
54 src/parse/t_set.h \
55 src/parse/t_map.h \
56 src/parse/t_struct.h \
57 src/parse/t_field.h \
58 src/parse/t_service.h \
59 src/parse/t_function.h \
60 src/parse/t_program.h \
61 src/parse/t_scope.h \
62 src/parse/t_const.h \
63 src/parse/t_const_value.h \
David Reiss9e7ba8c2010-10-05 16:39:27 +000064 src/parse/parse.cc \
Mark Sleeefd37f12007-11-20 05:13:09 +000065 src/generate/t_generator.h \
Jake Farrelle0c53162011-11-16 12:58:36 +000066 src/generate/t_oop_generator.h \
Jake Farrell7c7a5e02012-10-11 00:29:11 +000067 src/generate/t_html_generator.h \
Jake Farrelle0c53162011-11-16 12:58:36 +000068 src/windows/config.h \
69 src/windows/version.h
iproctor9a41a0c2007-07-16 21:59:24 +000070
Jake Farrelldec8c542011-09-21 00:15:27 +000071# Specific client generator source
72thrift_SOURCES += src/generate/t_c_glib_generator.cc \
73 src/generate/t_cpp_generator.cc \
74 src/generate/t_java_generator.cc \
Roger Meier1a74d9c2014-10-12 23:35:43 +020075 src/generate/t_json_generator.cc \
Jake Farrelldec8c542011-09-21 00:15:27 +000076 src/generate/t_as3_generator.cc \
Mark Erickson932c4702015-08-29 10:46:51 -050077 src/generate/t_dart_generator.cc \
Jens Geyerbd52f1a2014-07-28 01:25:30 +020078 src/generate/t_haxe_generator.cc \
Jake Farrelldec8c542011-09-21 00:15:27 +000079 src/generate/t_csharp_generator.cc \
80 src/generate/t_py_generator.cc \
81 src/generate/t_rb_generator.cc \
82 src/generate/t_perl_generator.cc \
83 src/generate/t_php_generator.cc \
84 src/generate/t_erl_generator.cc \
85 src/generate/t_cocoa_generator.cc \
Jens Geyer56e5b9b2015-10-09 22:01:55 +020086 src/generate/t_swift_generator.cc \
Jake Farrelldec8c542011-09-21 00:15:27 +000087 src/generate/t_st_generator.cc \
88 src/generate/t_ocaml_generator.cc \
89 src/generate/t_hs_generator.cc \
90 src/generate/t_xsd_generator.cc \
91 src/generate/t_html_generator.cc \
92 src/generate/t_js_generator.cc \
93 src/generate/t_javame_generator.cc \
Jake Farrell7ae13e12011-10-18 14:35:26 +000094 src/generate/t_delphi_generator.cc \
Jake Farrellb95b0ff2012-03-22 21:49:10 +000095 src/generate/t_go_generator.cc \
Jens Geyerd7b45792013-05-13 22:11:46 +020096 src/generate/t_gv_generator.cc \
Roger Meier6cf0ffc2014-04-05 00:45:42 +020097 src/generate/t_d_generator.cc \
98 src/generate/t_lua_generator.cc
David Reiss22585732008-02-27 01:55:33 +000099
Christian Lavoieaf65f1b2010-11-24 21:58:05 +0000100thrift_CPPFLAGS = -I$(srcdir)/src
Roger Meierec300e32014-10-13 02:13:35 +0200101thrift_CXXFLAGS = -Wall -Wextra -pedantic
Christian Lavoieaf65f1b2010-11-24 21:58:05 +0000102thrift_LDADD = @LEXLIB@ libparse.a
Mark Sleeeb0d0242007-01-25 07:58:55 +0000103
Christian Lavoieaf65f1b2010-11-24 21:58:05 +0000104libparse_a_CPPFLAGS = -I$(srcdir)/src
105libparse_a_CXXFLAGS = -Wall -Wno-sign-compare -Wno-unused
106
107libparse_a_SOURCES = src/thrifty.yy \
108 src/thriftl.ll
Mark Sleeeb0d0242007-01-25 07:58:55 +0000109
Jake Farrelle0c53162011-11-16 12:58:36 +0000110WINDOWS_DIST = \
111 compiler.sln \
112 compiler.vcxproj \
Roger Meierdb372ac2014-06-16 07:32:12 +0200113 compiler.vcxproj.filters
Jake Farrelle0c53162011-11-16 12:58:36 +0000114
115EXTRA_DIST = \
jfarrellf13e4312015-08-25 00:39:29 -0400116 coding_standards.md \
Roger Meierdb372ac2014-06-16 07:32:12 +0200117 README.md \
jfarrell8fd8c632014-07-10 09:14:51 -0400118 CMakeLists.txt \
Jake Farrelle0c53162011-11-16 12:58:36 +0000119 $(WINDOWS_DIST)
David Reissb72d19f2007-09-18 19:46:00 +0000120
Mark Sleeeb0d0242007-01-25 07:58:55 +0000121clean-local:
Jens Geyer79f988c2014-10-03 20:42:54 +0200122 $(RM) thriftl.cc thrifty.cc thrifty.h thrifty.hh version.h windows/version.h
David Reissdd08f6d2008-06-30 20:24:24 +0000123
124src/main.cc: version.h
Konrad Grochowski16a23a62014-11-13 15:33:38 +0100125
126style-local:
127 $(CPPSTYLE_CMD)