blob: b6ad9a5294c206443146c70e8fad348868ad214b [file] [log] [blame]
Jens Geyer0e87c462013-06-18 22:25:07 +02001#
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
taozle5c302e02017-07-23 15:21:44 +020020if GOVERSION_LT_17
21COMPILER_EXTRAFLAG=":legacy_context"
22endif
23
Jens Geyer0e87c462013-06-18 22:25:07 +020024THRIFT = $(top_builddir)/compiler/cpp/thrift
25
26gen-go/tutorial/calculator.go gen-go/shared/shared_service.go: $(top_srcdir)/tutorial/tutorial.thrift
taozle5c302e02017-07-23 15:21:44 +020027 $(THRIFT) --gen go$(COMPILER_EXTRAFLAG) -r $<
Jens Geyer0e87c462013-06-18 22:25:07 +020028
29all-local: gen-go/tutorial/calculator.go
30
taozlec0d384a2017-07-17 18:40:42 +020031check: src/git.apache.org/thrift.git/lib/go/thrift thirdparty-dep
taozle5c302e02017-07-23 15:21:44 +020032 $(THRIFT) -r --gen go$(COMPILER_EXTRAFLAG) $(top_srcdir)/tutorial/tutorial.thrift
Jens Geyer79f988c2014-10-03 20:42:54 +020033 cp -r gen-go/* src/
taozlec0d384a2017-07-17 18:40:42 +020034 GOPATH=`pwd` $(GO) build -o go-tutorial ./src
Jens Geyer79f988c2014-10-03 20:42:54 +020035 GOPATH=`pwd` $(GO) build -o calculator-remote src/tutorial/calculator-remote/calculator-remote.go
Jens Geyer0e87c462013-06-18 22:25:07 +020036
37src/git.apache.org/thrift.git/lib/go/thrift:
Jens Geyer79f988c2014-10-03 20:42:54 +020038 mkdir -p src/git.apache.org/thrift.git/lib/go
39 ln -sf $(realpath $(top_srcdir)/lib/go/thrift) src/git.apache.org/thrift.git/lib/go/thrift
Jens Geyer0e87c462013-06-18 22:25:07 +020040
taozlec0d384a2017-07-17 18:40:42 +020041thirdparty-dep:
42 mkdir -p src/golang.org/x/net
43 GOPATH=`pwd`/gopath $(GO) get golang.org/x/net/context
44 ln -sf `pwd`/gopath/src/golang.org/x/net/context src/golang.org/x/net/context
45
Jens Geyer0e87c462013-06-18 22:25:07 +020046tutorialserver: all
Jens Geyer79f988c2014-10-03 20:42:54 +020047 GOPATH=`pwd` $(GO) run src/*.go -server=true
Jens Geyer0e87c462013-06-18 22:25:07 +020048
49tutorialclient: all
taozlec0d384a2017-07-17 18:40:42 +020050 GOPATH=`pwd` $(GO) run src/*.go
Jens Geyer4c835952013-08-13 21:34:17 +020051
52tutorialsecureserver: all
Jens Geyer79f988c2014-10-03 20:42:54 +020053 GOPATH=`pwd` $(GO) run src/*.go -server=true -secure=true
Jens Geyer4c835952013-08-13 21:34:17 +020054
55tutorialsecureclient: all
Jens Geyer79f988c2014-10-03 20:42:54 +020056 GOPATH=`pwd` $(GO) run src/*.go -secure=true
Jens Geyer0e87c462013-06-18 22:25:07 +020057
58clean-local:
Jens Geyer79f988c2014-10-03 20:42:54 +020059 $(RM) -r gen-* src/shared src/tutorial src/git.apache.org go-tutorial calculator-remote
Jens Geyer0e87c462013-06-18 22:25:07 +020060
61EXTRA_DIST = \
Jens Geyer79f988c2014-10-03 20:42:54 +020062 src/client.go \
63 src/handler.go \
64 src/server.go \
65 src/main.go \
66 server.crt \
67 server.key
jfarrell102c6002013-08-15 21:20:19 -040068