X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=homescreen%2Fmeson.build;h=9b39d5099aaa5883b428a91e9b60f7c593a2b1c7;hb=refs%2Fchanges%2F98%2F29598%2F1;hp=fc93d06bb9b7d6eab9283f43f86bede86afd2390;hpb=d4f3ddfbad7a64937f00f13ba964e18d33effbb0;p=apps%2Fhomescreen.git diff --git a/homescreen/meson.build b/homescreen/meson.build index fc93d06..9b39d50 100644 --- a/homescreen/meson.build +++ b/homescreen/meson.build @@ -9,6 +9,10 @@ dep_qtappfw = [ dependency('qtappfw-applauncher') ] +grpcpp_reflection_dep = cpp.find_library('grpc++_reflection') +protoc = find_program('protoc') +grpc_cpp = find_program('grpc_cpp_plugin') + qt_defines = [] qpa_header_path = join_paths(qt5_dep.version(), 'QtGui') qpa_header = join_paths(qpa_header_path, 'qpa/qplatformnativeinterface.h') @@ -20,14 +24,40 @@ if cpp.has_header(qpa_header, dependencies : qt5_dep) endif dep_scanner = dependency('wayland-scanner') -prog_scanner = find_program(dep_scanner.get_pkgconfig_variable('wayland_scanner')) -agl_compositor_dep = dependency('agl-compositor-0.0.20-protocols') -dir_agl_compositor_base = agl_compositor_dep.get_pkgconfig_variable('pkgdatadir') +prog_scanner = find_program('wayland-scanner') +agl_compositor_version = '0.0.22' +agl_compositor_dep = dependency('agl-compositor-' + agl_compositor_version + '-protocols') +dir_agl_compositor_base = agl_compositor_dep.get_variable(pkgconfig: 'pkgdatadir') + +protoc_gen = generator(protoc, \ + output : ['@BASENAME@.pb.cc', '@BASENAME@.pb.h'], + arguments : ['--proto_path=@CURRENT_SOURCE_DIR@/proto', + '--cpp_out=@BUILD_DIR@', + '@INPUT@']) + +generated_protoc_sources = protoc_gen.process('proto/agl_shell.proto') + +grpc_gen = generator(protoc, \ + output : ['@BASENAME@.grpc.pb.cc', '@BASENAME@.grpc.pb.h'], + arguments : ['--proto_path=@CURRENT_SOURCE_DIR@/proto', + '--grpc_out=@BUILD_DIR@', + '--plugin=protoc-gen-grpc=' + grpc_cpp.path(), + '@INPUT@']) +generated_grpc_sources = grpc_gen.process('proto/agl_shell.proto') + +grpc_deps = [ + dependency('protobuf'), + dependency('grpc'), + dependency('grpc++'), + grpcpp_reflection_dep, +] + homescreen_dep = [ qt5_dep, dep_wayland_client, dep_qtappfw, + grpc_deps ] homescreen_resources = [ @@ -83,22 +113,24 @@ homescreen_src_headers = [ 'src/statusbarmodel.h', 'src/statusbarserver.h', 'src/homescreenhandler.h', - 'src/shell.h' + 'src/AglShellGrpcClient.h', ] moc_files = qt5.compile_moc(headers: homescreen_src_headers, dependencies: qt5_dep) homescreen_src = [ - 'src/shell.cpp', 'src/statusbarserver.cpp', 'src/statusbarmodel.cpp', 'src/applicationlauncher.cpp', 'src/mastervolume.cpp', 'src/homescreenhandler.cpp', + 'src/AglShellGrpcClient.cpp', 'src/main.cpp', agl_shell_client_protocol_h, - agl_shell_protocol_c + agl_shell_protocol_c, + generated_protoc_sources, + generated_grpc_sources ] executable('homescreen', homescreen_src, resource_files, moc_files,