1. 12 Jan, 2019 1 commit
    • Michael Pyne's avatar
      Fix cxxflags being set to a space when globally empty. · b01505be
      Michael Pyne authored
      When cxxflags is globally set to an empty value, the getOption magic
      that appends module values to global values for cxxflags causes it the
      result to equal ' ' (i.e. one space). This is because the space is a
      separator between two empty values.
      
      This causes code testing against cxxflags to think it's actually been
      set to a value and to add it in the cmake calls.
      
      I fix this and add a test case, but also add some insurance by trimming
      leading/trailing white space so that the existing check for empty
      cxxflags would have had a chance to catch this.
      
      Differential Revision: https://phabricator.kde.org/D18165
      b01505be
  2. 25 Dec, 2018 1 commit
    • Michael Pyne's avatar
      Fix broken cmdline parsing when --stop-on-failure in use. · e743b5bb
      Michael Pyne authored
      As reported in bug 402509, as position of command line argument changes
      the module build list.
      
      What was happening was --stop-on-failure in particular could 'eat' the
      next command line argument, because even though it was manually
      specified as a 'flag' argument to Getopt::Long, the 'stop-on-failure'
      entry was then overridden in the function call to read options by
      including the options in ksb::BuildContext::defaultGlobalFlags.
      
      A coding error on my part caused this inclusion of options to treat the
      options as requiring string values instead of boolean flags. As a result
      Getopt::Long would read the next non-option value and assign it to the
      'stop-on-failure' result.
      
      Fixed by treating the included flags as boolean flags instead of string
      valued, and by ensuring that the two sources for cmdline options are
      fully disjoint. I also added a test that fails with the old code and
      works with the new.
      
      Fixes #8
      
      BUG:402509
      FIXED-IN:19.01
      e743b5bb
  3. 23 Nov, 2018 1 commit
  4. 03 Nov, 2018 1 commit
    • Michael Pyne's avatar
      test: Add a test case for the 2 bugs added by FindBin removal. · b3a5dd7e
      Michael Pyne authored
      This is the barest "does kdesrc-build --version even work" test, done 3
      ways over:
      
      1. Direct call to the kdesrc-build script
      2. Symlinked "kdesrc-build" pointing to kdesrc-build script run from a
      directory in PATH
      3. Call to installed version of kdesrc-build (installing to a temp dir)
      
      Note: Anyone can run the test suite with Perl's Test::Harness module set
      installed, using the command "prove -I modules" from the kdesrc-build
      source dir. "prove" may have different names on some distros to allow
      for multiple versions.
      b3a5dd7e
  5. 22 Oct, 2018 1 commit
    • Michael Pyne's avatar
      first-run: Make --initial-setup work in minimal env, impl sample-rc. · a6bbfba1
      Michael Pyne authored
      We still don't install packages (although infra exists for it), but we
      can at least install a simple sample configuration.
      
      With the opensuse/unknown packages installed in the opensuse-leap:latest
      Docker container (separately), kdesrc-build can go straight from base
      image to being able to run "kdesrc-build --initial-setup" and then
      immediately after run "kdesrc-build --metadata-only".
      
      Progress!....
      a6bbfba1
  6. 14 Oct, 2018 1 commit
  7. 01 Jul, 2018 1 commit
    • Michael Pyne's avatar
      Don't double-set CMAKE_PREFIX_PATH if set by user. · 7f92da7b
      Michael Pyne authored
      This fixes bug 395627, where the error is actually that we set
      CMAKE_PREFIX_PATH twice if qtdir is set to a non-system path and the
      user is also setting CMAKE_PREFIX_PATH.
      
      Unfortunately the second value overrides the first (the one the user
      set).
      
      Also added a test for this, which fails before the fix and passes
      afterwards. The full test suite (all 5...) pass.
      
      BUG:395627
      FIXED-IN:18.08
      7f92da7b
  8. 27 May, 2018 1 commit
    • Michael Pyne's avatar
      Add testcase for bug 394497 (ignore-modules/include-dependencies). · ca30f09b
      Michael Pyne authored
      This adds a testcase that would fail without the bugfix for bug 394497
      and now passes.
      
      This did require undoing some of the changes to generateModuleList but
      the only real behavior change (beside merging duplicate ignored module
      checks) was to move the step that generates module dependencies to occur
      earlier so that it can happen before the filter steps
      
      CCBUG:394497
      ca30f09b
  9. 01 May, 2018 1 commit
    • Michael Pyne's avatar
      Reboot a small test suite. · 829624eb
      Michael Pyne authored
      Run "prove -Imodules" from the kdesrc-build source directory base to
      run.  You need Test::More, TAP::Harness, hopefully not much else.
      829624eb