Re: Weird conditional logic in lib/libpmc/Makefile

2018-06-02 Thread Mark Millard
Shawn Webb shawn.webb at hardenedbsd.org wrote on
Sun Jun 3 01:08:19 UTC 2018 :

> Below is some logic pasted from lib/libpmc/Makefile:
> 
> .if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386"
> 
> .if ${MACHINE_ARCH} == "aarch64"
> EVENT_ARCH="arm64"
> .elif ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386"
> EVENT_ARCH="x86"
> .elif ${MACHINE_ARCH} == "powerpc"
> EVENT_ARCH="powerpc"
> .endif
> 
> JEVENTS= ${BTOOLSPATH:U.}/pmu-events/jevents
> # This file is built in a subdirectory so never try to rebuild
> # it here due to missing meta file.
> ${JEVENTS}: .NOMETA
> 
> libpmc_events.c: ${JEVENTS}
>   ${JEVENTS} ${EVENT_ARCH} ${.CURDIR}/pmu-events/arch libpmc_events.c
> SRCS+= libpmc_events.c
> .endif
> 
> Why perform the conditionals for aarch64 and powerpc when it can't be
> those? "Am I missing something?
> 
> I'm looping in Matt Macy, who was the last person to touch the file.



It appears that every version of lib/libpmc/Makefile from head -r334242
and later has some variation of the odd nesting/value combinations that
has "EVENT_ARCH" examples that are impossible to select as the code is
structured.

(The file version prior to -r334242 is from -r298107 .)

===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)

___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Weird conditional logic in lib/libpmc/Makefile

2018-06-02 Thread Shawn Webb
Hey all,

Below is some logic pasted from lib/libpmc/Makefile:

.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386"

.if ${MACHINE_ARCH} == "aarch64"
EVENT_ARCH="arm64"
.elif ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386"
EVENT_ARCH="x86"
.elif ${MACHINE_ARCH} == "powerpc"
EVENT_ARCH="powerpc"
.endif

JEVENTS= ${BTOOLSPATH:U.}/pmu-events/jevents
# This file is built in a subdirectory so never try to rebuild
# it here due to missing meta file.
${JEVENTS}: .NOMETA

libpmc_events.c: ${JEVENTS}
${JEVENTS} ${EVENT_ARCH} ${.CURDIR}/pmu-events/arch libpmc_events.c
SRCS+= libpmc_events.c
.endif

Why perform the conditionals for aarch64 and powerpc when it can't be
those? "Am I missing something?

I'm looping in Matt Macy, who was the last person to touch the file.

Thanks,

-- 
Shawn Webb
Cofounder and Security Engineer
HardenedBSD

Tor-ified Signal:+1 443-546-8752
Tor+XMPP+OTR:latt...@is.a.hacker.sx
GPG Key ID:  0x6A84658F52456EEE
GPG Key Fingerprint: 2ABA B6BD EF6A F486 BE89  3D9E 6A84 658F 5245 6EEE


signature.asc
Description: PGP signature