1. 25 Sep, 2012 1 commit
    • Mike Frysinger's avatar
      check for x32 targets · a75a9cf2
      Mike Frysinger authored
      Add configure detection of the new x32 ABI as well as support in asm.
      
      Change-Id: Ic66a069599adeb81062090e3f11b71ee1fb97cb8
      a75a9cf2
  2. 15 Aug, 2012 1 commit
    • Mike Frysinger's avatar
      Parse out arm isa targets from dumpmachine · 2b59e14a
      Mike Frysinger authored
      The current parsing logic of the dumpmachine tuple lacks any arm
      cases which means tgt_isa never gets set, so for all arm targets,
      we get detected as generic-gnu.  Add some basic arm checks here
      so the automatic detection logic works.
      
      Change-Id: Ie5e98142876025c6708604236bc519c0bdb09319
      2b59e14a
  3. 09 Aug, 2012 1 commit
  4. 27 Jul, 2012 1 commit
  5. 20 Jul, 2012 2 commits
  6. 11 Jul, 2012 1 commit
  7. 10 Jul, 2012 1 commit
  8. 25 Jun, 2012 1 commit
  9. 21 Jun, 2012 1 commit
    • John Koleszar's avatar
      Add support for downloading test data · 00748632
      John Koleszar authored
      The commit introduces a make target 'testdata' that downloads the
      required test data from the WebM project website. The data will also
      be downloaded if invoking `make test` but is not a strict requirement
      for only building the test executable.
      
      The download directory is taken from the LIBVPX_TEST_DATA_PATH
      environment variable, or may be specified as part of the make command.
      If unset, it defaults to the current directory. It's expected that
      most developers will want to set this environment variable to a place
      outside their source/build trees, to avoid having to download the data
      more than once.
      
      To add test data file:
      
        1) add a line to test/test.mk:
      
            LIBVPX_TEST_DATA-yes += foo-bar-file.y4m
      
        2) add its sha1sum to the test/test-data.sha1 file in the following
           format:
      
            528cc88c821e5f5b133c2b40f9c8e3f22eaacc4c  foo-bar-file.y4m
      
        3) upload the file to the website
      
            $ gsutil cp foo-bar-file.y4m gs://downloads.webmproject.org/test_data/libvpx
      
      This implementation will check the integrity of the test data
      automatically if the `sha1sum` executable is available.
      
      Change-Id: If6910fe304bb3f5cdcc5cb9e5f9afa5be74720d2
      00748632
  10. 20 Jun, 2012 1 commit
    • Attila Nagy's avatar
      Enables building examples with Android NDK · 5daaa838
      Attila Nagy authored
      Soft enable runtime cpu detect for armv7-android target, so that it
      can be disabled and remove dependency on 'cpufeatures' lib.
      Change the arm_cpu_caps implementation selection such that 'no rtcd' takes
      precedence over system type.
      
      Switch to use -mtune instead of -mcpu. NDK was complaining about
      -mcpu=cortex-a8 conflicting with -march=armv7-a, not sure why.
      
      Add a linker flag to fix some cortex-a8 bug, as suggested by NDK Dev
      Guide.
      
      Examples:
      Configure for armv7+neon:
      
      ./configure --target=armv7-android-gcc \
                  --sdk-path=/path/to/android/ndk \
                  --disable-runtime-cpu-detect \
                  --enable-realtime-only \
                  --disable-unit-tests
      
      ...armv7 w/o neon:
      
      ./configure --target=armv7-android-gcc \
                  --sdk-path=/path/to/android/ndk \
                  --disable-runtime-cpu-detect \
                  --enable-realtime-only \
                  --disable-neon \
                  --cpu=cortex-a9 \
                  --disable-unit-tests
      
      Change-Id: I37e2c0592745208979deec38f7658378d4bd6cfa
      5daaa838
  11. 15 Jun, 2012 1 commit
    • John Koleszar's avatar
      Remove threading dependencies with --disable-multithread · 8df79e9d
      John Koleszar authored
      Avoid a pthreads dependency via pthread_once() when compiled with
      --disable-multithread.
      
      In addition, this synchronization is disabled for Win32 as well, even
      though we can be sure that the required primatives exist, so that the
      requirements on the application when built with --disable-multithread
      are consistent across platforms.
      
      Users using libvpx built with --disable-multithread in a multithreaded
      context should provide their own synchronization. Updated the
      documentation to vpx_codec_enc_init_ver() and vpx_codec_dec_init_ver()
      to note this requirement. Moved the RTCD initialization call to match
      this description, as previously it didn't happen until the first
      frame.
      
      Change-Id: Id576f6bce2758362188278d3085051c218a56d4a
      8df79e9d
  12. 05 Jun, 2012 2 commits
    • Johann Koenig's avatar
      Skip AS detection for VS · 5d0174bc
      Johann Koenig authored
      Visual Studio doesn't use the assembler in $PATH
      
      Change-Id: I169f8492127cbc1d256a2fb2e749cd970040ccc8
      5d0174bc
    • Alpha Lam's avatar
      Fix windows build: obj_int_extract to extract numbrs from .rdata · 2926571b
      Alpha Lam authored
      The change in assembly offset files to define values as const int broke
      Windows build, because the variables are stored in .rdata section instead
      of .data section.
      
      This CL changes the integer peeking from .data to .rdata.
      
      Change-Id: I87e465ddcc78d39ec29f3720ea7df0ab807d5512
      2926571b
  13. 30 May, 2012 2 commits
  14. 22 May, 2012 1 commit
  15. 21 May, 2012 1 commit
  16. 14 May, 2012 1 commit
    • Alexis Ballier's avatar
      Allow target autodetection to work when cross-compiling. · 871bd23e
      Alexis Ballier authored
      Allow CHOST to override the gcc -dumpmachine output. This allows to
      use the target autodetection code when cross compiling by setting the
      CHOST variable.
      
      On Gentoo, we would like to support easy cross-compilation, and for
      libvpx this would basically mean copying the code in
      build/make/configure.sh to setup the right --target option. It seems a
      lot easier to let it guess by itself.
      
      Another option I considered was using CROSS-gcc instead but this would
      not work for our multilib setups: They use gcc -m32 to build 32bits
      binaries and gcc -m32 -dumpmachine will output the 64bits version,
      which would then make libvpx wrongly believe it is building for a
      64bits architecture.
      
      Change-Id: I05a19be402228f749e23be7473ca53ae74fd2186
      871bd23e
  17. 30 Apr, 2012 1 commit
    • Johann's avatar
      Update paths for iOS 5.1 · e918ed98
      Johann authored
      These values can be overridden with some poorly documented and
      overloaded options: --libc and --sdk-path
      
      ../libvpx/configure --target=armv7-darwin-gcc --sdk-path=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer --libc=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk/
      
      So for someone who still wants to build with the iOS 5 SDK, the last
      part of the path should be iPhoneOS5.0.sdk
      
      Change-Id: Ibe93d96ae828c619700dc3222983aa4c30456b88
      e918ed98
  18. 27 Apr, 2012 1 commit
  19. 12 Apr, 2012 2 commits
  20. 02 Apr, 2012 1 commit
    • Johann's avatar
      Allow disabling disabled codecs · c459d37c
      Johann authored
      When using 'make dist' after --disable-vp8[encoder|decoder] it would
      fail to recognize the option. This would only occur when also specifying
      --enable-install-docs and --enable-install-srcs but not
      --enable-codec-srcs
      
      Including vpx/ fixes builds with --enable-codec-srcs
      
      vpx_timer.h is also required for vpxenc.c
      
      Change-Id: Ie3e28b2f7ec7ee6d5961d3843f9eab869f79c35b
      c459d37c
  21. 16 Mar, 2012 1 commit
    • John Koleszar's avatar
      Update XCode SDK search paths · a05bf133
      John Koleszar authored
      Newer XCodes have moved the SDK path from /Developer/SDKs
      
      Use a suggestion from jorgenisaksson@gmail.com to locate it
      
      osx_sdk_dir is not required to be set. Apple now offers a set
      command line tools which do not require this. isysroot is also
      not required in newer versions of XCode so only set it when we
      are confident in the location.
      
      There remain issues with the iOS configure steps which will be
      addressed later
      
      Change-Id: I4f5d7e35175d0dea84faaa6bfb52a0153c72f84b
      a05bf133
  22. 14 Mar, 2012 1 commit
  23. 16 Feb, 2012 2 commits
    • Johann's avatar
      OS X shell is incompatible with echo -n · 5f0b303c
      Johann authored
      Built in echo in 'sh' on OS X does not support -n (exclude trailing
      newline). It's not necessary so just leave it off. Fixes issue 390.
      
      Build include guard using 'symbol' so that it is more likely to be
      unique.
      
      Change-Id: I4bc6aa1fc5e02228f71c200214b5ee4a16d56b83
      5f0b303c
    • Fritz Koenig's avatar
      Include path fix for building against Android NDK. · 3653fb47
      Fritz Koenig authored
      cpu-features.h is not in the common paths, add
      to the cflags for Android.
      
      Change-Id: Icbafc7600d72f6b59ffb030f6ab80ee6860332bb
      3653fb47
  24. 15 Feb, 2012 1 commit
  25. 08 Feb, 2012 1 commit
  26. 30 Jan, 2012 1 commit
    • John Koleszar's avatar
      New RTCD implementation · a910049a
      John Koleszar authored
      This is a proof of concept RTCD implementation to replace the current
      system of nested includes, prototypes, INVOKE macros, etc. Currently
      only the decoder specific functions are implemented in the new system.
      Additional functions will be added in subsequent commits.
      
      Overview:
        RTCD "functions" are implemented as either a global function pointer
        or a macro (when only one eligible specialization available).
        Functions which have RTCD specializations are listed using a simple
        DSL identifying the function's base name, its prototype, and the
        architecture extensions that specializations are available for.
      
      Advantages over the old system:
        - No INVOKE macros. A call to an RTCD function looks like an ordinary
          function call.
        - No need to pass vtables around.
        - If there is only one eligible function to call, the function is
          called directly, rather than indirecting through a function pointer.
        - Supports the notion of "required" extensions, so in combination with
          the above, on x86_64 if the best function available is sse2 or lower
          it will be called directly, since all x86_64 platforms implement
          sse2.
        - Elides all references to functions which will never be called, which
          could reduce binary size. For example if sse2 is required and there
          are both mmx and sse2 implementations of a certain function, the
          code will have no link time references to the mmx code.
        - Significantly easier to add a new function, just one file to edit.
      
      Disadvantages:
        - Requires global writable data (though this is not a new requirement)
        - 1 new generated source file.
      
      Change-Id: Iae6edab65315f79c168485c96872641c5aa09d55
      a910049a
  27. 20 Jan, 2012 1 commit
    • Fritz Koenig's avatar
      Disconnect ARM tgt_isa from dsp extensions · 89210284
      Fritz Koenig authored
      A processor with ARMv7 instructions does not
      necessarily have NEON dsp extensions.  This CL
      has the added side effect of allowing the ability
      to enable/disable the dsp extensions cleanly.
      
      Change-Id: Ie1e879b8fe131885bc3d4138a0acc9ffe73a36df
      89210284
  28. 18 Jan, 2012 1 commit
    • Fritz Koenig's avatar
      Add makefile for building libvpx for Android. · d8305731
      Fritz Koenig authored
      Android.mk file for using the Android NDK build
      system to compile. Adds option for SDK path to
      use the compiler that comes with android for testing
      compiler compliance.
      
      Change-Id: I5fd17cb76e3ed631758d3f392e62ae1a050d0d10
      d8305731
  29. 10 Jan, 2012 1 commit
    • Fritz Koenig's avatar
      Remove iwmmx target. · 55610053
      Fritz Koenig authored
      No optimized code present for target.
      
      Change-Id: If99bb37491b15c1093e8851430c060cb2466898c
      55610053
  30. 06 Jan, 2012 1 commit
  31. 04 Jan, 2012 1 commit
  32. 14 Dec, 2011 1 commit
    • Johann's avatar
      Use xcode 4.2 · 247e7343
      Johann authored
      Allow targeting darwin11 / 10.7
      
      Update arm paths for iPhoneOS 5.0
      
      Change-Id: I057156349311ec66a163c4c1cea60dc5aeaaa492
      247e7343
  33. 13 Dec, 2011 2 commits
    • Johann's avatar
      Fix incorrect PROC/ENDP match · 41e3da3a
      Johann authored
      The conversion script was incorrectly matching
      CONFIG_POSTPROC[_VISUALIZER] and generating an
      incorrect vpx_config.asm
      
      Match both PROC and ENDP on word boundaries
      
      Change-Id: Ic2788c3b522d4ee0afc5223b72e1b09fb52645be
      41e3da3a
    • Johann's avatar
      Fix iOS conversion script · 8bc60e47
      Johann authored
      Mach-O prefixes function calls with _
      
      Change-Id: I778c2ab91266887731a6a0316b42af7641826da4
      8bc60e47
  34. 18 Nov, 2011 1 commit