blob: f5de26e6f29d7b9274c7e1d744bfaa1d417f5a89 [file] [log] [blame]
Jens Geyera7da4882013-07-18 00:33:05 +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 +020020THRIFTARGS = -out gopath/src/ --gen go:thrift_import=thrift$(COMPILER_EXTRAFLAG)
Jens Geyera7da4882013-07-18 00:33:05 +020021THRIFTTEST = $(top_srcdir)/test/ThriftTest.thrift
22
23# Thrift for GO has problems with complex map keys: THRIFT-2063
Roger Meier41ad4342015-03-24 22:30:40 +010024gopath: $(THRIFT) $(THRIFTTEST) \
Jens Geyer79f988c2014-10-03 20:42:54 +020025 IncludesTest.thrift \
26 NamespacedTest.thrift \
27 MultiplexedProtocolTest.thrift \
28 OnewayTest.thrift \
29 OptionalFieldsTest.thrift \
Craig Wickesser5c1ecb62018-10-16 02:40:13 -040030 RequiredFieldTest.thrift \
Jens Geyer79f988c2014-10-03 20:42:54 +020031 ServicesTest.thrift \
32 GoTagTest.thrift \
33 TypedefFieldTest.thrift \
Jens Geyer527b6d92014-11-30 15:07:18 +010034 RefAnnotationFieldsTest.thrift \
Jens Geyer0f17e152015-09-15 21:22:42 +020035 UnionDefaultValueTest.thrift \
D. Can Celasun88591e32018-05-17 08:52:11 +020036 UnionBinaryTest.thrift \
Jens Geyer28c1c192015-03-07 14:18:01 +010037 ErrorTest.thrift \
Jens Geyer1d1bca22015-03-14 16:28:27 +020038 NamesTest.thrift \
Jens Geyer70219e12015-05-20 22:00:25 +020039 InitialismsTest.thrift \
40 DontExportRWTest.thrift \
Jens Geyer86a51e72015-06-01 20:41:41 +020041 dontexportrwtest/compile_test.go \
John Boilesd9019fc2019-06-28 23:07:10 -070042 IgnoreInitialismsTest.thrift \
43 ConflictNamespaceTestA.thrift \
44 ConflictNamespaceTestB.thrift \
45 ConflictNamespaceTestC.thrift \
46 ConflictNamespaceTestD.thrift \
47 ConflictNamespaceTestSuperThing.thrift \
Duru Can Celasunf4475ff2019-11-20 15:31:35 +000048 ConflictNamespaceServiceTest.thrift \
49 DuplicateImportsTest.thrift
Jens Geyer79f988c2014-10-03 20:42:54 +020050 mkdir -p gopath/src
51 grep -v list.*map.*list.*map $(THRIFTTEST) | grep -v 'set<Insanity>' > ThriftTest.thrift
Jens Geyer9f74f322015-04-17 23:33:48 +020052 $(THRIFT) $(THRIFTARGS) -r IncludesTest.thrift
53 $(THRIFT) $(THRIFTARGS) BinaryKeyTest.thrift
54 $(THRIFT) $(THRIFTARGS) MultiplexedProtocolTest.thrift
55 $(THRIFT) $(THRIFTARGS) OnewayTest.thrift
56 $(THRIFT) $(THRIFTARGS) OptionalFieldsTest.thrift
Craig Wickesser5c1ecb62018-10-16 02:40:13 -040057 $(THRIFT) $(THRIFTARGS) RequiredFieldTest.thrift
Jens Geyer9f74f322015-04-17 23:33:48 +020058 $(THRIFT) $(THRIFTARGS) ServicesTest.thrift
59 $(THRIFT) $(THRIFTARGS) GoTagTest.thrift
60 $(THRIFT) $(THRIFTARGS) TypedefFieldTest.thrift
61 $(THRIFT) $(THRIFTARGS) RefAnnotationFieldsTest.thrift
Jens Geyer0f17e152015-09-15 21:22:42 +020062 $(THRIFT) $(THRIFTARGS) UnionDefaultValueTest.thrift
D. Can Celasun88591e32018-05-17 08:52:11 +020063 $(THRIFT) $(THRIFTARGS) UnionBinaryTest.thrift
Jens Geyer9f74f322015-04-17 23:33:48 +020064 $(THRIFT) $(THRIFTARGS) ErrorTest.thrift
65 $(THRIFT) $(THRIFTARGS) NamesTest.thrift
66 $(THRIFT) $(THRIFTARGS) InitialismsTest.thrift
Jens Geyer70219e12015-05-20 22:00:25 +020067 $(THRIFT) $(THRIFTARGS),read_write_private DontExportRWTest.thrift
Jens Geyer86a51e72015-06-01 20:41:41 +020068 $(THRIFT) $(THRIFTARGS),ignore_initialisms IgnoreInitialismsTest.thrift
John Boilesd9019fc2019-06-28 23:07:10 -070069 $(THRIFT) $(THRIFTARGS) ConflictNamespaceTestA.thrift
70 $(THRIFT) $(THRIFTARGS) ConflictNamespaceTestB.thrift
71 $(THRIFT) $(THRIFTARGS) ConflictNamespaceTestC.thrift
72 $(THRIFT) $(THRIFTARGS) ConflictNamespaceTestD.thrift
73 $(THRIFT) $(THRIFTARGS) ConflictNamespaceTestSuperThing.thrift
74 $(THRIFT) $(THRIFTARGS) ConflictNamespaceServiceTest.thrift
Duru Can Celasunf4475ff2019-11-20 15:31:35 +000075 $(THRIFT) $(THRIFTARGS) -r DuplicateImportsTest.thrift
James E. King, III0ad20bd2017-09-30 15:44:16 -070076 GOPATH=`pwd`/gopath $(GO) get github.com/golang/mock/gomock || true
77 sed -i 's/\"context\"/\"golang.org\/x\/net\/context\"/g' gopath/src/github.com/golang/mock/gomock/controller.go || true
78 GOPATH=`pwd`/gopath $(GO) get github.com/golang/mock/gomock
Jens Geyer79f988c2014-10-03 20:42:54 +020079 ln -nfs ../../../thrift gopath/src/thrift
80 ln -nfs ../../tests gopath/src/tests
Jens Geyer70219e12015-05-20 22:00:25 +020081 cp -r ./dontexportrwtest gopath/src
Jens Geyer79f988c2014-10-03 20:42:54 +020082 touch gopath
Jens Geyera7da4882013-07-18 00:33:05 +020083
84check: gopath
Jens Geyer79f988c2014-10-03 20:42:54 +020085 GOPATH=`pwd`/gopath $(GO) build \
86 includestest \
87 binarykeytest \
88 servicestest \
89 typedeffieldtest \
Jens Geyer527b6d92014-11-30 15:07:18 +010090 refannotationfieldstest \
Jens Geyer28c1c192015-03-07 14:18:01 +010091 errortest \
Jens Geyer1d1bca22015-03-14 16:28:27 +020092 namestest \
Jens Geyer70219e12015-05-20 22:00:25 +020093 initialismstest \
Jens Geyer86a51e72015-06-01 20:41:41 +020094 dontexportrwtest \
D. Can Celasun88591e32018-05-17 08:52:11 +020095 ignoreinitialismstest \
John Boilesd9019fc2019-06-28 23:07:10 -070096 unionbinarytest \
97 conflictnamespacetestsuperthing \
John Boiles59694a72019-11-09 11:22:26 -080098 conflict/context/conflict_service-remote \
Duru Can Celasunf4475ff2019-11-20 15:31:35 +000099 servicestest/container_test-remote \
100 duplicateimportstest
Jens Geyer70219e12015-05-20 22:00:25 +0200101 GOPATH=`pwd`/gopath $(GO) test thrift tests dontexportrwtest
Jens Geyera7da4882013-07-18 00:33:05 +0200102
103clean-local:
Jens Geyer79f988c2014-10-03 20:42:54 +0200104 $(RM) -r gopath ThriftTest.thrift gen-go
Jens Geyera7da4882013-07-18 00:33:05 +0200105
106client: stubs
Jens Geyer79f988c2014-10-03 20:42:54 +0200107 $(GO) run TestClient.go
jfarrell32d323e2013-08-15 20:39:58 -0400108
109EXTRA_DIST = \
jfarrellf13e4312015-08-25 00:39:29 -0400110 dontexportrwtest \
Jens Geyer79f988c2014-10-03 20:42:54 +0200111 tests \
112 BinaryKeyTest.thrift \
113 GoTagTest.thrift \
114 IncludesTest.thrift \
115 MultiplexedProtocolTest.thrift \
116 NamespacedTest.thrift \
117 OnewayTest.thrift \
118 OptionalFieldsTest.thrift \
Craig Wickesser5c1ecb62018-10-16 02:40:13 -0400119 RequiredFieldTest.thrift \
Jens Geyer79f988c2014-10-03 20:42:54 +0200120 RefAnnotationFieldsTest.thrift \
Jens Geyer0f17e152015-09-15 21:22:42 +0200121 UnionDefaultValueTest.thrift \
D. Can Celasun88591e32018-05-17 08:52:11 +0200122 UnionBinaryTest.thrift \
Jens Geyer79f988c2014-10-03 20:42:54 +0200123 ServicesTest.thrift \
Jens Geyer527b6d92014-11-30 15:07:18 +0100124 TypedefFieldTest.thrift \
Jens Geyer28c1c192015-03-07 14:18:01 +0100125 ErrorTest.thrift \
Jens Geyer1d1bca22015-03-14 16:28:27 +0200126 NamesTest.thrift \
Jens Geyer70219e12015-05-20 22:00:25 +0200127 InitialismsTest.thrift \
Jens Geyer86a51e72015-06-01 20:41:41 +0200128 DontExportRWTest.thrift \
John Boilesd9019fc2019-06-28 23:07:10 -0700129 IgnoreInitialismsTest.thrift \
130 ConflictNamespaceTestA.thrift \
131 ConflictNamespaceTestB.thrift \
132 ConflictNamespaceTestC.thrift \
133 ConflictNamespaceTestD.thrift \
John Boiles59694a72019-11-09 11:22:26 -0800134 ConflictNamespaceTestSuperThing.thrift \
John Boilesd9019fc2019-06-28 23:07:10 -0700135 ConflictNamespaceServiceTest.thrift