ld: error: can't create dynamic relocation R_ARM_ABS32 against local symbol in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output
>>> defined in common/arm/mc-a-8.o
>>> referenced by common/arm/mc-a-8.o:(memcpy_table)
Example error:
/usr/bin/ld: error: can't create dynamic relocation R_386_PC32 against
symbol: gettimeofday in readonly segment; recompile object files
with -fPIC
This port links some non-PIC code, which fails with lld as it defaults
to disallowing relocations against read-only segments. For i386 we can
just add -znotext unconditionally: for GNU BFD ld it just affirms BFD's
existing default.
PR: 214864, 230214
Reviewed by: koobs
Approved by: koobs
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D17201
libx264 has relocations against readonly segment(s) and lld exits with
an error suggesting recompiling with -fPIC. As this may introduce a
performance impact, for now just fall back to GNU ld.bfd.
PR: 230214
Approved by: koobs (maintainer)
MFH: 2018Q3
Without FFmpeg-based demuxers x264 CLI can only read raw formats as
source. So, enable more options to allow the binary package not only
write but also read mp4/mkv.
PR: 220694
Approved by: koobs (maintainer)
MFH: 2017Q3 (usability improvement)
Differential Revision: https://reviews.freebsd.org/D11566
Before OpenCL can be used for lookahead install at least one
implementation: devel/freeocl, devel/pocl, lang/beignet or lang/clover.
$ x264 --fullhelp | fgrep opencl
--opencl Enable use of OpenCL
--opencl-clbin <string> Specify path of compiled OpenCL kernel cache
--opencl-device <integer> Specify OpenCL device ordinal
where the options also work in other apps e.g.,
$ ffmpeg -i <input-file> -codec:v libx264 -x264opts opencl:opencl-device=1 <output-file>
$ mpv --ovc libx264 --ovcopts-add x264opts=opencl:opencl-device=1 -o <output-file> <input-file>
Differential Revision: https://reviews.freebsd.org/D7958
Approved by: koobs (maintainer)
Remove "-march=i686 -mfpmath=sse -msse" and "-msse2" on later versions
when building C files. This doesn't affect hand-written assembly which
relies on CPUID but may pessimize compiler (around 2.3 % on Skylake).
Differential Revision: https://reviews.freebsd.org/D7958
Approved by: koobs (maintainer)
Switch to LSMASH by default to follow vendor configure behavior.
Approved by: koobs (maintainer, via private mail)
Differential Revision: https://reviews.freebsd.org/D5861
- Convert to option helpers
- Convert to USES=localbase + respect CPPFLAGS
- Convert to USES=shebangfix (can be zsh->bash symlink)
- Simplify SLAVE_PORT conditionals into ?=, += and !target()
- Drop unnecessary `cd` before PGO sample
- Drop no longer necessary .include <bsd.port.options.mk>
Approved by: koobs (maintainer, via private mail)
Differential Revision: https://reviews.freebsd.org/D5862
Move the libx264 patch for stdint.h handling on FreeBSD to the multimedia/x264
port, as FILESDIR is inherited from there, thus causing the patch not to be
applied.
Reported by: kwm
Reviewed by: kwm
Tested by: kwm
Differential Revision: https://reviews.freebsd.org/D3168
Delete distinfo from libx264 since it is s now subordinate to the x264 port.
Also correctly update distinfo for x264, including the example.y4m.bz2 video
file for profile guided optimization (OPTION: PGO).
PR: 201260
Reported by: Ajtim <lumiwa gmail com> (via email)
- Update to 0.144.2533 (from upstream stable branch) [1]
- Switch x264 and libx264 ports to master/slave ports respectively
- Bump PORTREVISION for dependent ports as the shared library version
has changed.
multimedia/x264:
- Clean up and update "updating instructions" in Makefile header
- Tweak COMMENT
- Only LIB_DEPENDS on libx264 and add PLIST_FILES if this isn't the
libx264 port.
- Allow COMMENT, USES, OPTIONS_*, CONFIGURE_ARGS to be overriden in
libx264 port.
- Place common configure arguments in a CONFIGURE_COMMON_ARGS variable
to make overriding values without duplication easier.
- Use --prefix configure argument over post-patch replacements
- Enable stripping of binaries and libraries if DEBUG is off. Remove
post-install target STRIP_CMD accordingly.
- Delete patch-Makefile in favour of patching WRKSRC/configure to
identify amd64, arm64 and mipsn32. powerpc and powerpc64 are now
covered upstream without needing patches.
- Patch out a bogus compiler argument check (cc_check) that results
in -Wno-maybe-uninitialized being added to CFLAGS causing causes
warnings when clang is cc. The cc_check function checks for basename
$CC to identify compiler type (icl, clang, gcc, etc).
multimedia/libx264:
- Remove all Makefile entries that are duplicated or common and found
in the master port (x264).
- Set lib as the PKGNAMEPREFIX
- Tweak COMMENT
- Delete upstreamed ARM patches [1]
- Delete all but one patch, as they duplicate those in x264.
- Dont remove pkgconfig/libdata directory
Changes:
https://git.videolan.org/?p=x264.git;a=shortlog;h=refs/heads/stable
Based on:
PR: 201260 [1]
Submitted by: Andrey Cherkashin <andoriyu gmail com> [1]
header guard of the sys/stdint.h file. Otherwise compiling software with the
x264.h header will generate a warning about the mismatch header guard.
Approved by: maintainer (koobs@)
Differential Revision: https://reviews.freebsd.org/D2863
- Revert options helpers for PGO and GCC .. *shakes fist*. We end up
setting USE_GCC=yes yes otherwise, and that's not valid.
- libx264 and x264 share the same distfiles, use the same DIST_SUBDIR
- Split x264 into two ports: the CLI application (x264), and the library
(libx264). This will allow x264 to use lavf and friends from ffmpeg for
decoding and demuxing while preventing a circular dependency between the
two: x264 can depend on ffmpeg, but ffmpeg will depend on libx264 rather
than x264.
- Add the LAVF option to the CLI port, making the dependency on ffmpeg
optional.
- Update to 0.142.2455.
- Amend fixes to local patches so that they can apply to the new upstream
files.
- Provide the git revision and other version information to the build
environment, allowing the CLI binary to display this information (like the
Windows builds).
- Remove unsupported build options (X11_OUTPUT).
- Ensure that the library and CLI ports each have the appropriate options.
- Add notes for future contributors who wish to update the ports.
- Bump PORTREVISION for all dependent ports.
PR: 187805
Differential Revision: https://reviews.freebsd.org/D1159
Submitted by: Andrew Berg <aberg010@my.hennepintech.edu>
Approved by: koobs (maintainer, mentor)