blob: f48ff0a84aa337c581e08fad9b1285fbdcc782d8 [file] [log] [blame]
Bryan Duxbury7173bd92010-05-02 22:54:22 +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#
19
Anthony F. Molinaro917d8982011-06-21 06:20:18 +000020THRIFT = ../../compiler/cpp/thrift
alisdair sullivan06d0fa02014-08-05 19:54:57 -070021THRIFT_FILES = $(wildcard test/*.thrift) \
Jens Geyer79f988c2014-10-03 20:42:54 +020022 ../../test/ThriftTest.thrift
Anthony F. Molinaro917d8982011-06-21 06:20:18 +000023
Jens Geyer57ac33e2015-07-28 23:12:10 +020024if ERLANG_OTP16
25.generated: $(THRIFT) $(THRIFT_FILES)
Jens Geyer79f988c2014-10-03 20:42:54 +020026 for f in $(THRIFT_FILES) ; do \
Jens Geyer57ac33e2015-07-28 23:12:10 +020027 $(THRIFT) --gen erl:otp16 -o test $$f ; \
28 done ;
29else
30.generated: $(THRIFT) $(THRIFT_FILES)
31 for f in $(THRIFT_FILES) ; do \
32 $(THRIFT) --gen erl -o test $$f ; \
Jens Geyer79f988c2014-10-03 20:42:54 +020033 done ; \
Jens Geyer5cf9d772015-07-02 21:01:52 +020034 $(THRIFT) --gen erl:maps -o test test/Thrift3214.thrift ; \
Jens Geyer79f988c2014-10-03 20:42:54 +020035 touch .generated
Jens Geyer57ac33e2015-07-28 23:12:10 +020036endif
Anthony F. Molinaro917d8982011-06-21 06:20:18 +000037
38all: .generated
Jens Geyer79f988c2014-10-03 20:42:54 +020039 ./rebar get-deps
40 ./rebar compile
Anthony F. Molinaro917d8982011-06-21 06:20:18 +000041
42check: .generated
Jens Geyer79f988c2014-10-03 20:42:54 +020043 ./rebar skip_deps=true eunit
Bryan Duxbury7173bd92010-05-02 22:54:22 +000044
Bryan Duxbury7173bd92010-05-02 22:54:22 +000045install: all
Jens Geyer79f988c2014-10-03 20:42:54 +020046 mkdir -p $(DESTDIR)$(ERLANG_INSTALL_LIB_DIR_thrift) ; \
47 mkdir -p $(DESTDIR)$(ERLANG_INSTALL_LIB_DIR_thrift)/ebin ; \
48 mkdir -p $(DESTDIR)$(ERLANG_INSTALL_LIB_DIR_thrift)/include ; \
49 mkdir -p $(DESTDIR)$(ERLANG_INSTALL_LIB_DIR_thrift)/src ; \
50 for p in ebin/*.app* ebin/*.beam include/*.hrl src/*.erl ; \
51 do $(INSTALL) $$p $(DESTDIR)$(ERLANG_INSTALL_LIB_DIR_thrift)/$$p ; \
52 done
Bryan Duxbury7173bd92010-05-02 22:54:22 +000053
54uninstall:
Jens Geyer79f988c2014-10-03 20:42:54 +020055 rm -rf $(DESTDIR)$(ERLANG_INSTALL_LIB_DIR_thrift)
Bryan Duxbury7173bd92010-05-02 22:54:22 +000056
Anthony F. Molinaro917d8982011-06-21 06:20:18 +000057clean:
Jens Geyer79f988c2014-10-03 20:42:54 +020058 rm -f .generated
59 rm -rf test/gen-erl/
60 ./rebar clean
Anthony F. Molinaroa6530672011-09-18 04:57:50 +000061
62maintainer-clean-local:
Jens Geyer79f988c2014-10-03 20:42:54 +020063 rm -rf ebin
Bryan Duxbury7173bd92010-05-02 22:54:22 +000064
jfarrell8fd8c632014-07-10 09:14:51 -040065EXTRA_DIST = \
Jens Geyer79f988c2014-10-03 20:42:54 +020066 include \
67 src \
68 rebar \
69 rebar.config \
70 test \
71 README.md
David Reiss653eada2010-10-05 02:38:58 +000072
Bryan Duxbury7173bd92010-05-02 22:54:22 +000073MAINTAINERCLEANFILES = Makefile.in