svn commit: r335880 - in head/sys: conf kern
Bryan Drewery
bdrewery at FreeBSD.org
Tue Jul 3 18:23:07 UTC 2018
On 7/3/2018 11:21 AM, Matthew Macy wrote:
> What is the "correct" way to make sure that offset.inc is visible to modules?
>
Can you answer my question though? Was it a mistake or are you intending
there to be a machine-specific genoffset.c?
> On Tue, Jul 3, 2018 at 10:39 AM, Bryan Drewery <bdrewery at freebsd.org> wrote:
>> On 7/2/2018 7:50 PM, Matt Macy wrote:
>>> Author: mmacy
>>> Date: Tue Jul 3 02:50:07 2018
>>> New Revision: 335880
>>> URL: https://svnweb.freebsd.org/changeset/base/335880
>>>
>>> Log:
>>> expose thread_lite definition to tied modules
>>>
>>> Modified:
>>> head/sys/conf/kmod.mk
>>> head/sys/kern/genoffset.sh
>>>
>>> Modified: head/sys/conf/kmod.mk
>>> ==============================================================================
>>> --- head/sys/conf/kmod.mk Tue Jul 3 01:55:09 2018 (r335879)
>>> +++ head/sys/conf/kmod.mk Tue Jul 3 02:50:07 2018 (r335880)
>>> @@ -463,9 +463,10 @@ acpi_quirks.h: ${SYSDIR}/tools/acpi_quirks2h.awk ${SYS
>>> .endif
>>>
>>> .if !empty(SRCS:Massym.inc) || !empty(DPSRCS:Massym.inc)
>>> -CLEANFILES+= assym.inc genassym.o
>>> -DEPENDOBJS+= genassym.o
>>> +CLEANFILES+= assym.inc genassym.o genoffset.o
>>> +DEPENDOBJS+= genassym.o genoffset.o
>>> assym.inc: genassym.o
>>> +offset.inc: genoffset.o
>>> .if defined(KERNBUILDDIR)
>>> genassym.o: opt_global.h
>>> .endif
>>> @@ -475,6 +476,12 @@ genassym.o: ${SYSDIR}/${MACHINE}/${MACHINE}/genassym.c
>>> genassym.o: ${SRCS:Mopt_*.h}
>>> ${CC} -c ${CFLAGS:N-flto:N-fno-common} \
>>> ${SYSDIR}/${MACHINE}/${MACHINE}/genassym.c
>>> +offset.inc: ${SYSDIR}/kern/genoffset.sh genoffset.o
>>> + sh ${SYSDIR}/kern/genoffset.sh genoffset.o > ${.TARGET}
>>> +genoffset.o: ${SYSDIR}/${MACHINE}/${MACHINE}/genoffset.c
>>> +genoffset.o: ${SRCS:Mopt_*.h}
>>> + ${CC} -c ${CFLAGS:N-flto:N-fno-common} \
>>> + ${SYSDIR}/${MACHINE}/${MACHINE}/genoffset.c
>>
>> Why is this using machine-specific genoffset.c but kern.post.mk uses the
>> global genoffset.c?
>>
>> And what even generates the machine-specific genoffset.c file? I see no
>> rule for it anywhere.
>>
>>> .endif
>>>
>>> .if defined(KERNBUILDDIR)
>>>
>>> Modified: head/sys/kern/genoffset.sh
>>> ==============================================================================
>>> --- head/sys/kern/genoffset.sh Tue Jul 3 01:55:09 2018 (r335879)
>>> +++ head/sys/kern/genoffset.sh Tue Jul 3 02:50:07 2018 (r335880)
>>> @@ -39,7 +39,7 @@ work()
>>> {
>>> echo "#ifndef _OFFSET_INC_"
>>> echo "#define _OFFSET_INC_"
>>> - echo "#if !defined(GENOFFSET) && !defined(KLD_MODULE)"
>>> + echo "#if !defined(GENOFFSET) && (!defined(KLD_MODULE) || defined(KLD_TIED))"
>>> ${NM:='nm'} ${NMFLAGS} "$1" | ${AWK:='awk'} '
>>> / C .*_datatype_*/ {
>>> type = substr($3, match($3, "_datatype_") + length("_datatype_"))
>>>
>>
>>
>> --
>> Regards,
>> Bryan Drewery
>>
--
Regards,
Bryan Drewery
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freebsd.org/pipermail/svn-src-all/attachments/20180703/657822a3/attachment.sig>
More information about the svn-src-all
mailing list