David Reiss | ea2cba8 | 2009-03-30 21:35:00 +0000 | [diff] [blame] | 1 | # |
| 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 Lipcon | 53ae9f3 | 2009-12-07 00:42:38 +0000 | [diff] [blame] | 19 | # |
| 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 Reiss | ea2cba8 | 2009-03-30 21:35:00 +0000 | [diff] [blame] | 23 | |
Mark Slee | eb0d024 | 2007-01-25 07:58:55 +0000 | [diff] [blame] | 24 | AM_YFLAGS = -d |
David Reiss | dd08f6d | 2008-06-30 20:24:24 +0000 | [diff] [blame] | 25 | BUILT_SOURCES = |
Mark Slee | eb0d024 | 2007-01-25 07:58:55 +0000 | [diff] [blame] | 26 | |
| 27 | bin_PROGRAMS = thrift |
| 28 | |
| 29 | thrift_OBJDIR = obj |
| 30 | |
| 31 | thrift_SOURCES = src/thrifty.yy \ |
| 32 | src/thriftl.ll \ |
| 33 | src/main.cc \ |
David Reiss | 8df6c82 | 2008-05-04 03:00:22 +0000 | [diff] [blame] | 34 | src/md5.c \ |
Mark Slee | eb0d024 | 2007-01-25 07:58:55 +0000 | [diff] [blame] | 35 | src/generate/t_generator.cc \ |
Mark Slee | efd37f1 | 2007-11-20 05:13:09 +0000 | [diff] [blame] | 36 | src/globals.h \ |
| 37 | src/main.h \ |
David Reiss | 204420f | 2008-01-11 20:59:03 +0000 | [diff] [blame] | 38 | src/platform.h \ |
Mark Slee | efd37f1 | 2007-11-20 05:13:09 +0000 | [diff] [blame] | 39 | src/md5.h \ |
| 40 | src/parse/t_doc.h \ |
| 41 | src/parse/t_type.h \ |
| 42 | src/parse/t_base_type.h \ |
| 43 | src/parse/t_enum.h \ |
| 44 | src/parse/t_enum_value.h \ |
| 45 | src/parse/t_typedef.h \ |
| 46 | src/parse/t_container.h \ |
| 47 | src/parse/t_list.h \ |
| 48 | src/parse/t_set.h \ |
| 49 | src/parse/t_map.h \ |
| 50 | src/parse/t_struct.h \ |
| 51 | src/parse/t_field.h \ |
| 52 | src/parse/t_service.h \ |
| 53 | src/parse/t_function.h \ |
| 54 | src/parse/t_program.h \ |
| 55 | src/parse/t_scope.h \ |
| 56 | src/parse/t_const.h \ |
| 57 | src/parse/t_const_value.h \ |
| 58 | src/generate/t_generator.h \ |
David Reiss | bba6928 | 2009-02-17 20:28:28 +0000 | [diff] [blame] | 59 | src/generate/t_oop_generator.h |
iproctor | 9a41a0c | 2007-07-16 21:59:24 +0000 | [diff] [blame] | 60 | |
David Reiss | 2258573 | 2008-02-27 01:55:33 +0000 | [diff] [blame] | 61 | if THRIFT_GEN_cpp |
| 62 | thrift_SOURCES += src/generate/t_cpp_generator.cc |
| 63 | endif |
David Reiss | e8a87de | 2008-02-27 02:39:25 +0000 | [diff] [blame] | 64 | if THRIFT_GEN_java |
| 65 | thrift_SOURCES += src/generate/t_java_generator.cc |
| 66 | endif |
David Reiss | ce4f4f0 | 2008-03-27 21:41:31 +0000 | [diff] [blame] | 67 | if THRIFT_GEN_csharp |
| 68 | thrift_SOURCES += src/generate/t_csharp_generator.cc |
| 69 | endif |
David Reiss | bfd26dc | 2008-03-27 21:41:49 +0000 | [diff] [blame] | 70 | if THRIFT_GEN_py |
| 71 | thrift_SOURCES += src/generate/t_py_generator.cc |
| 72 | endif |
David Reiss | ae25358 | 2008-03-27 21:42:11 +0000 | [diff] [blame] | 73 | if THRIFT_GEN_rb |
| 74 | thrift_SOURCES += src/generate/t_rb_generator.cc |
| 75 | endif |
David Reiss | fdc21aa | 2008-03-27 21:42:34 +0000 | [diff] [blame] | 76 | if THRIFT_GEN_perl |
| 77 | thrift_SOURCES += src/generate/t_perl_generator.cc |
| 78 | endif |
David Reiss | 32272d9 | 2009-02-17 20:28:30 +0000 | [diff] [blame] | 79 | if THRIFT_GEN_php |
| 80 | thrift_SOURCES += src/generate/t_php_generator.cc |
| 81 | endif |
David Reiss | f3b0db3 | 2009-02-17 20:28:01 +0000 | [diff] [blame] | 82 | if THRIFT_GEN_erl |
| 83 | thrift_SOURCES += src/generate/t_erl_generator.cc |
| 84 | endif |
David Reiss | 4b349aa | 2008-03-27 21:41:02 +0000 | [diff] [blame] | 85 | if THRIFT_GEN_cocoa |
| 86 | thrift_SOURCES += src/generate/t_cocoa_generator.cc |
| 87 | endif |
David Reiss | b3ac8a6 | 2008-03-27 21:40:42 +0000 | [diff] [blame] | 88 | if THRIFT_GEN_st |
| 89 | thrift_SOURCES += src/generate/t_st_generator.cc |
| 90 | endif |
David Reiss | 3d671b5 | 2008-03-27 21:40:11 +0000 | [diff] [blame] | 91 | if THRIFT_GEN_ocaml |
| 92 | thrift_SOURCES += src/generate/t_ocaml_generator.cc |
| 93 | endif |
David Reiss | 22812f8 | 2008-03-27 21:40:26 +0000 | [diff] [blame] | 94 | if THRIFT_GEN_hs |
| 95 | thrift_SOURCES += src/generate/t_hs_generator.cc |
| 96 | endif |
David Reiss | 782cb67 | 2009-02-17 20:28:13 +0000 | [diff] [blame] | 97 | if THRIFT_GEN_xsd |
| 98 | thrift_SOURCES += src/generate/t_xsd_generator.cc |
| 99 | endif |
David Reiss | dc0aada | 2008-10-21 00:09:23 +0000 | [diff] [blame] | 100 | if THRIFT_GEN_html |
| 101 | thrift_SOURCES += src/generate/t_html_generator.cc |
| 102 | endif |
T Jake Luciani | 322caa2 | 2010-02-15 03:24:55 +0000 | [diff] [blame^] | 103 | if THRIFT_GEN_js |
| 104 | thrift_SOURCES += src/generate/t_js_generator.cc |
| 105 | endif |
David Reiss | 2258573 | 2008-02-27 01:55:33 +0000 | [diff] [blame] | 106 | |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 107 | thrift_CXXFLAGS = -Wall -I$(srcdir)/src $(BOOST_CPPFLAGS) |
Mark Slee | 58dfb4f | 2007-07-06 02:45:25 +0000 | [diff] [blame] | 108 | thrift_LDFLAGS = -Wall $(BOOST_LDFLAGS) |
Mark Slee | eb0d024 | 2007-01-25 07:58:55 +0000 | [diff] [blame] | 109 | |
| 110 | thrift_LDADD = @LEXLIB@ |
| 111 | |
David Reiss | 832b262 | 2007-12-28 18:25:33 +0000 | [diff] [blame] | 112 | EXTRA_DIST = README |
David Reiss | b72d19f | 2007-09-18 19:46:00 +0000 | [diff] [blame] | 113 | |
Mark Slee | eb0d024 | 2007-01-25 07:58:55 +0000 | [diff] [blame] | 114 | clean-local: |
David Reiss | 466b3fa | 2008-11-20 21:24:32 +0000 | [diff] [blame] | 115 | $(RM) thriftl.cc thrifty.cc thrifty.h version.h |
David Reiss | dd08f6d | 2008-06-30 20:24:24 +0000 | [diff] [blame] | 116 | |
| 117 | src/main.cc: version.h |
| 118 | |
| 119 | # Adding this to BUILT_SOURCES will cause version.h to be |
| 120 | # regenerated on every "make all" or "make check", which is |
| 121 | # necessary because it changes whenever we "svn up" or similar. |
| 122 | # Ideally, we would like this to be regenerated whenever the |
| 123 | # compiler is rebuilt, but every way we could think of to do |
| 124 | # that caused unnecessary rebuilds of the compiler. |
| 125 | BUILT_SOURCES += regen_version_h |
| 126 | |
| 127 | THRIFT_VERSION=$(shell /bin/sh $(top_srcdir)/print_version.sh -v) |
| 128 | THRIFT_REVISION=$(shell /bin/sh $(top_srcdir)/print_version.sh -r) |
| 129 | |
| 130 | regen_version_h: |
David Reiss | 4d8edc5 | 2008-06-30 21:55:52 +0000 | [diff] [blame] | 131 | @printf "Regenerating version.h... " |
David Reiss | dd08f6d | 2008-06-30 20:24:24 +0000 | [diff] [blame] | 132 | @TMPFILE=`mktemp ./version_h.tmp_XXXXXX` ; \ |
| 133 | echo "// AUTOGENERATED, DO NOT EDIT" > $$TMPFILE ; \ |
David Reiss | aabfa63 | 2008-06-30 22:27:29 +0000 | [diff] [blame] | 134 | echo '#define THRIFT_VERSION "$(THRIFT_VERSION)"' >> $$TMPFILE ; \ |
| 135 | echo '#define THRIFT_REVISION "$(THRIFT_REVISION)"' >> $$TMPFILE ; \ |
David Reiss | dd08f6d | 2008-06-30 20:24:24 +0000 | [diff] [blame] | 136 | if cmp $$TMPFILE version.h >/dev/null ; \ |
| 137 | then \ |
| 138 | rm -f $$TMPFILE ; \ |
| 139 | echo "No changes." ; \ |
| 140 | else \ |
| 141 | mv $$TMPFILE version.h ; \ |
| 142 | echo "Updated." ; \ |
| 143 | fi |