uppc kmod installation problem on amd64
Please see a discussion thread starting with the following message: http://lists.freebsd.org/pipermail/freebsd-ports/2007-August/042999.html It seems that installation action of uppc-kmod port (do-install target) uses incorrect tool to put uppc.ko in its destination. It seems that the tool (${INSTALL_PROGRAM}) corrupts the .ko, so that it is not a valid kernel module anymore. If I put uppc.ko into /boot/kernel and do kldxref then kldxref complains about missing symbol table in uppc.ko and dumps core. If the module is loaded then it crashes my system. On the other hand, if I simply copy uppc.ko from work directory then it works ok. Essentially this is the same issue as described in the following PR only with another port: http://www.freebsd.org/cgi/query-pr.cgi?pr=100703 Kostik Belousov confirms the issue with stripping kernel modules on amd64: You cannot strip kernel modules on amd64, because modules are elf object files, as opposed to shared objects on all other archs. Strip strips the object file symbol table, that is used by the static linker and in-kernel linker on amd64. On the other hand, shared object contains also a dynamic symbol table, that is not stripped and used by in-kernel linker on !amd64. PR: ports/115517 Submitted by: Andriy Gapon <avg@icyb.net.ua>
This commit is contained in:
parent
d88e80efec
commit
e141b3c45d
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=199105
@ -24,6 +24,11 @@ IGNORE= Requires kernel source (/usr/src/sys) to build
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
|
||||
# Don't strip module on amd64 systems
|
||||
.if ${ARCH} == "amd64"
|
||||
STRIP=
|
||||
.endif
|
||||
|
||||
post-build:
|
||||
@${REINPLACE_CMD} -e 's|%%INITIAL_INSTALLDIR%%|${PREFIX}/lib|g' ${BUILD_WRKSRC}/uppcsetup
|
||||
@${REINPLACE_CMD} -e 's|%%INITIAL_MODDIR%%|${KMODDIR}|g' ${WRKSRC}/uppcsetup
|
||||
|
Loading…
Reference in New Issue
Block a user