Skip to content
Snippets Groups Projects

Draft: buildsystem: add meson support

1 unresolved thread

Add a meson.build file to be able to use meson instead of autotools when building libcloudstorage.

Todo:

  • initial support
  • option for disabling example / cloudbrowser
  • feature support
  • split meson.build
  • non-linux support

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • Jean-Baptiste Kempf
  • meson.build 0 → 100644
    34
    35 dep_thread = dependency('threads')
    36 dep_rt = []
    37
    38 optional_arguments = [
    39 '-Wall',
    40 '-Wsign-compare',
    41 '-Wextra',
    42 '-Wstrict-aliasing',
    43 '-Wstrict-overflow' ]
    44
    45 add_project_arguments(
    46 cxx.get_supported_arguments(optional_arguments),
    47 language: 'cpp')
    48
    49 # TODO: libcloudstorage has some non-exposed public symbols
    • g++  -o commandlinebrowser commandlinebrowser.p/examples_commandlinebrowser_main.cpp.o -Wl,--as-needed -Wl,--no-undefined -Wl,-O1 -Wl,--start-group libcloudstorage.so.3.1.0 -pthread /usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/../../../../lib/libjsoncpp.so -Wl,--end-group '-Wl,-rpath,$ORIGIN/' -Wl,-rpath-link,/home/alexandre/workspace/videolabs/libcloudstorage/build/
      /usr/bin/ld: commandlinebrowser.p/examples_commandlinebrowser_main.cpp.o: warning: relocation against `_ZN12cloudstorage5IItem16UnknownTimeStampE' in read-only section `.text.startup'
      /usr/bin/ld: commandlinebrowser.p/examples_commandlinebrowser_main.cpp.o: in function `read_token(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
      main.cpp:(.text+0x899): undefined reference to `cloudstorage::util::json::from_stream(std::istream&&)'
      /usr/bin/ld: commandlinebrowser.p/examples_commandlinebrowser_main.cpp.o: in function `Callback::done(cloudstorage::ICloudProvider const&, cloudstorage::Either<cloudstorage::Error, void>)':
      main.cpp:(.text._ZN8Callback4doneERKN12cloudstorage14ICloudProviderENS0_6EitherINS0_5ErrorEvEE[_ZN8Callback4doneERKN12cloudstorage14ICloudProviderENS0_6EitherINS0_5ErrorEvEE]+0x2a5): undefined reference to `cloudstorage::util::json::from_stream(std::istream&&)'
      /usr/bin/ld: commandlinebrowser.p/examples_commandlinebrowser_main.cpp.o: in function `main':
      main.cpp:(.text.startup+0xd96): undefined reference to `cloudstorage::IItem::UnknownTimeStamp'
      /usr/bin/ld: main.cpp:(.text.startup+0xdc0): undefined reference to `cloudstorage::util::gmtime(long)'
      /usr/bin/ld: main.cpp:(.text.startup+0x11cc): undefined reference to `cloudstorage::ICloudStorage::create()'
      /usr/bin/ld: main.cpp:(.text.startup+0x15ce): undefined reference to `cloudstorage::ICloudStorage::create()'
      /usr/bin/ld: warning: creating DT_TEXTREL in a PIE
      collect2: error: ld returned 1 exit status
      [77/81] Compiling C++ object libcloudbrowser.so.p/bin_cloudbrowser_src_CloudContext.cpp.o
    • This should be fixed, IMHO.

    • Please register or sign in to reply
  • Jean-Baptiste Kempf
  • added 3 commits

    Compare with previous version

  • Please register or sign in to reply
    Loading