1# @(#)Makefile 8.2 (Berkeley) 1/4/94 2# $FreeBSD$ 3# 4# Doing a "make install" builds /usr/include. 5 6.include <src.opts.mk> 7 8PACKAGE=runtime 9CLEANFILES= osreldate.h version 10SUBDIR= arpa protocols rpcsvc rpc xlocale 11.if ${MACHINE_CPUARCH} == "amd64" 12SUBDIR+= i386 13.endif 14SUBDIR_PARALLEL= 15INCS= a.out.h ar.h assert.h bitstring.h complex.h cpio.h _ctype.h ctype.h \ 16 db.h \ 17 dirent.h dlfcn.h elf.h elf-hints.h err.h fmtmsg.h fnmatch.h fstab.h \ 18 fts.h ftw.h getopt.h glob.h grp.h \ 19 ieeefp.h ifaddrs.h \ 20 inttypes.h iso646.h kenv.h langinfo.h libgen.h limits.h link.h \ 21 locale.h malloc.h malloc_np.h memory.h monetary.h mpool.h mqueue.h \ 22 ndbm.h netconfig.h \ 23 netdb.h nl_types.h nlist.h nss.h nsswitch.h paths.h \ 24 printf.h proc_service.h pthread.h \ 25 pthread_np.h pwd.h ranlib.h readpassphrase.h regex.h \ 26 res_update.h resolv.h runetype.h sched.h \ 27 search.h semaphore.h setjmp.h \ 28 signal.h spawn.h stab.h stdalign.h stdbool.h stddef.h \ 29 stdnoreturn.h stdio.h stdlib.h string.h stringlist.h \ 30 strings.h sysexits.h tar.h termios.h tgmath.h \ 31 time.h timeconv.h timers.h ttyent.h \ 32 uchar.h ulimit.h unistd.h utime.h utmpx.h uuid.h varargs.h \ 33 wchar.h wctype.h wordexp.h xlocale.h 34 35.PATH: ${SRCTOP}/contrib/libc-vis 36INCS+= vis.h 37 38MHDRS= float.h floatingpoint.h stdarg.h 39 40PHDRS= _semaphore.h 41 42LHDRS= aio.h errno.h fcntl.h linker_set.h poll.h stdatomic.h stdint.h \ 43 syslog.h ucontext.h 44 45LDIRS= geom net net80211 netgraph netinet netinet6 \ 46 netipsec netlink netsmb nfs nfsclient nfsserver sys vm 47 48LSUBDIRS= dev/acpica dev/agp dev/ciss dev/filemon dev/firewire \ 49 dev/hwpmc dev/hyperv \ 50 dev/ic dev/iicbus dev/io dev/mfi dev/mmc dev/nvme \ 51 dev/ofw dev/pbio dev/pci ${_dev_powermac_nvram} dev/ppbus dev/pwm \ 52 dev/smbus dev/speaker dev/tcp_log dev/veriexec dev/vkbd \ 53 fs/devfs fs/fdescfs fs/msdosfs fs/nfs fs/nullfs \ 54 fs/procfs fs/smbfs fs/udf fs/unionfs \ 55 geom/cache geom/concat geom/eli geom/gate geom/journal geom/label \ 56 geom/mirror geom/mountver geom/multipath geom/nop \ 57 geom/raid geom/raid3 geom/shsec geom/stripe geom/union geom/virstor \ 58 net/altq \ 59 net/route \ 60 netgraph/atm netgraph/netflow \ 61 netinet/cc \ 62 netinet/netdump \ 63 netinet/tcp_stacks \ 64 netlink/route \ 65 security/mac_biba security/mac_bsdextended security/mac_lomac \ 66 security/mac_mls security/mac_partition \ 67 security/mac_veriexec \ 68 sys/disk \ 69 ufs/ffs ufs/ufs 70 71LSUBSUBDIRS= dev/mpt/mpilib 72 73.PATH: ${SRCTOP}/sys/dev/acpica 74ACPICA= acpi_hpet.h \ 75 acpiio.h 76ACPICADIR= ${INCLUDEDIR}/dev/acpica 77 78.PATH: ${SRCTOP}/sys/dev/agp 79AGP= agpreg.h 80AGPDIR= ${INCLUDEDIR}/dev/agp 81 82.PATH: ${SRCTOP}/sys/bsm 83BSM= audit.h \ 84 audit_errno.h \ 85 audit_internal.h \ 86 audit_record.h \ 87 audit_domain.h \ 88 audit_fcntl.h \ 89 audit_kevents.h \ 90 audit_socket_type.h 91BSMPACKAGE= libbsm 92BSMDIR= ${INCLUDEDIR}/bsm 93 94.PATH: ${SRCTOP}/sys/security/audit 95SECAUDIT= audit.h \ 96 audit_ioctl.h \ 97 audit_private.h 98SECAUDITPACKAGE= libbsm 99SECAUDITDIR= ${INCLUDEDIR}/security/audit 100 101.PATH: ${SRCTOP}/sys/cam 102CAM= cam.h \ 103 cam_ccb.h \ 104 cam_compat.h \ 105 cam_debug.h \ 106 cam_iosched.h \ 107 cam_periph.h \ 108 cam_queue.h \ 109 cam_sim.h \ 110 cam_xpt.h \ 111 cam_xpt_internal.h \ 112 cam_xpt_periph.h \ 113 cam_xpt_sim.h 114CAMDIR= ${INCLUDEDIR}/cam 115 116.PATH: ${SRCTOP}/sys/cam/ata 117CAMATA= ata_all.h 118CAMATADIR= ${INCLUDEDIR}/cam/ata 119 120.PATH: ${SRCTOP}/sys/cam/mmc 121CAMMMC= mmc.h \ 122 mmc_bus.h \ 123 mmc_all.h 124CAMMMCDIR= ${INCLUDEDIR}/cam/mmc 125 126.PATH: ${SRCTOP}/sys/cam/nvme 127CAMNVME= nvme_all.h 128CAMNVMEDIR= ${INCLUDEDIR}/cam/nvme 129 130.PATH: ${SRCTOP}/sys/cam/scsi 131CAMSCSI= scsi_all.h \ 132 scsi_cd.h \ 133 scsi_ch.h \ 134 scsi_da.h \ 135 scsi_enc.h \ 136 scsi_enc_internal.h \ 137 scsi_iu.h \ 138 scsi_message.h \ 139 scsi_pass.h \ 140 scsi_pt.h \ 141 scsi_sa.h \ 142 scsi_ses.h \ 143 scsi_sg.h \ 144 scsi_targetio.h \ 145 smp_all.h 146CAMSCSIDIR= ${INCLUDEDIR}/cam/scsi 147 148.PATH: ${SRCTOP}/sys/fs/cd9660 149FS9660= cd9660_mount.h \ 150 cd9660_node.h \ 151 cd9660_rrip.h \ 152 iso.h \ 153 iso_rrip.h 154FS9660DIR= ${INCLUDEDIR}/isofs/cd9660 155 156.PATH: ${SRCTOP}/sys/dev/evdev 157EVDEV= input.h \ 158 input-event-codes.h \ 159 uinput.h 160EVDEVDIR= ${INCLUDEDIR}/dev/evdev 161 162.PATH: ${SRCTOP}/sys/dev/hid 163HID= hid.h \ 164 hidraw.h 165HIDDIR= ${INCLUDEDIR}/dev/hid 166 167.PATH: ${SRCTOP}/sys/dev/hyperv/include ${SRCTOP}/sys/dev/hyperv/utilities 168HYPERV= hv_snapshot.h \ 169 hyperv.h 170HYPERVDIR= ${INCLUDEDIR}/dev/hyperv 171 172.PATH: ${SRCTOP}/sys/opencrypto 173OPENCRYPTO= cryptodev.h 174OPENCRYPTODIR= ${INCLUDEDIR}/crypto 175 176.PATH: ${SRCTOP}/sys/dev/pci 177PCI= pcireg.h 178PCIDIR= ${INCLUDEDIR}/dev/pci 179 180.PATH: ${SRCTOP}/sys/dev/veriexec 181VERIEXEC= veriexec_ioctl.h 182VERIEXECDIR= ${INCLUDEDIR}/dev/veriexec 183 184.PATH: ${SRCTOP}/sys/netpfil/ipfilter/netinet 185IPFILTER= ip_auth.h \ 186 ip_compat.h \ 187 ip_dstlist.h \ 188 ip_fil.h \ 189 ip_frag.h \ 190 ip_htable.h \ 191 ip_lookup.h \ 192 ip_nat.h \ 193 ip_pool.h \ 194 ip_proxy.h \ 195 ip_rules.h \ 196 ip_scan.h \ 197 ip_state.h \ 198 ip_sync.h \ 199 ipf_rb.h \ 200 ipl.h \ 201 radix_ipf.h 202IPFILTERDIR= ${INCLUDEDIR}/netinet 203 204.PATH: ${SRCTOP}/sys/netpfil/pf 205PF= pf.h \ 206 pf_altq.h \ 207 pf_mtag.h 208PFPACKAGE= pf 209PFDIR= ${INCLUDEDIR}/netpfil/pf 210 211.PATH: ${SRCTOP}/sys/rpc 212RPC= rpcsec_tls.h \ 213 types.h 214RPCDIR= ${INCLUDEDIR}/rpc 215 216.PATH: ${SRCTOP}/sys/teken 217TEKEN= teken.h 218TEKENDIR= ${INCLUDEDIR}/teken 219 220.PATH: ${SRCTOP}/sys/contrib/openzfs/include/sys 221NVPAIR= nvpair.h 222NVPAIRDIR= ${INCLUDEDIR}/sys 223 224.PATH: ${SRCTOP}/sys/dev/mlx5 225MLX5= mlx5io.h 226MLX5DIR= ${INCLUDEDIR}/dev/mlx5 227 228INCSGROUPS= INCS \ 229 ACPICA \ 230 AGP \ 231 BSM \ 232 CAM \ 233 CAMATA \ 234 CAMMMC \ 235 CAMNVME \ 236 CAMSCSI \ 237 CRYPTO \ 238 EVDEV \ 239 FS9660 \ 240 HID \ 241 HYPERV \ 242 OPENCRYPTO \ 243 PCI \ 244 RPC \ 245 SECAUDIT \ 246 TEKEN \ 247 VERIEXEC 248 249.if ${MK_IPFILTER} != "no" 250INCSGROUPS+= IPFILTER 251.endif 252 253.if ${MK_PF} != "no" 254INCSGROUPS+= PF 255.endif 256 257.if ${MK_CDDL} != "no" 258INCSGROUPS+= NVPAIR 259.endif 260 261.if ${MK_MLX5TOOL} != "no" 262INCSGROUPS+= MLX5 263.endif 264 265.if ${MK_BLUETOOTH} != "no" 266LSUBSUBDIRS+= netgraph/bluetooth/include 267.endif 268 269.if ${MK_CUSE} != "no" 270LSUBDIRS+= fs/cuse 271.endif 272 273.if ${MK_GSSAPI} != "no" 274SUBDIR+= gssapi 275INCS+= gssapi.h 276.endif 277 278.if ${MK_HESIOD} != "no" 279INCS+= hesiod.h 280.endif 281 282# Handle the #define aliases for libiconv 283.if ${MK_ICONV} == "yes" 284INCS+= iconv.h 285.endif 286 287.if ${MK_USB} != "no" 288LSUBDIRS+= dev/usb 289.endif 290 291.if ${MACHINE_CPUARCH} == "powerpc" && ${MACHINE_ARCH} != "powerpcspe" 292_dev_powermac_nvram= dev/powermac_nvram 293.endif 294 295# Define SHARED to indicate whether you want symbolic links to the system 296# source (``symlinks''), or a separate copy (``copies''). ``symlinks'' is 297# probably only useful for developers and should be avoided if you do not 298# wish to tie your /usr/include and /usr/src together. 299#SHARED= symlinks 300SHARED?= copies 301 302INCS+= osreldate.h 303 304SYSDIR= ${SRCTOP}/sys 305NEWVERS_SH= ${SYSDIR}/conf/newvers.sh 306PARAM_H= ${SYSDIR}/sys/param.h 307MK_OSRELDATE_SH= ${.CURDIR}/mk-osreldate.sh 308 309SYMLINKS+= ${LIBDIR:C,[^/]+,..,g:C,^/,,}${INCLUDEDIR} ${LIBDIR}/include 310 311osreldate.h: ${NEWVERS_SH} ${PARAM_H} ${MK_OSRELDATE_SH} 312 env NEWVERS_SH=${NEWVERS_SH} PARAMFILE=${PARAM_H} SYSDIR=${SYSDIR} \ 313 sh ${MK_OSRELDATE_SH} 314 315.for i in ${LHDRS} 316INCSLINKS+= sys/$i ${INCLUDEDIR}/$i 317.endfor 318.for i in ${MHDRS} 319INCSLINKS+= machine/$i ${INCLUDEDIR}/$i 320.endfor 321.for i in ${PHDRS} 322INCSLINKS+= sys/$i ${INCLUDEDIR}/$i 323.endfor 324 325.if ${MACHINE} != ${MACHINE_CPUARCH} 326_MARCHS= ${MACHINE_CPUARCH} 327.endif 328.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" 329_MARCHS+= x86 330.endif 331 332META_TARGETS+= compat 333stage_includes: ${SHARED} 334SDESTDIR= ${SYSROOT:U${DESTDIR}} 335 336# Take care of stale directory-level symlinks. 337# Note: The "|| true" after find is needed in case one of the directories does 338# not exist (yet). 339compat: 340 cd ${SDESTDIR}${INCLUDEDIR}; find ${LDIRS} ${LSUBDIRS} machine ${_MARCHS} \ 341 crypto -maxdepth 0 -mindepth 0 -type l -print -delete || true 342 mtree -deU ${NO_ROOT:D-W} ${MTREE_FOLLOWS_SYMLINKS} \ 343 -f ${SRCTOP}/etc/mtree/BSD.include.dist \ 344 -p ${SDESTDIR}${INCLUDEDIR} > /dev/null 345.if ${MACHINE_CPUARCH} == "amd64" 346 ${INSTALL} -d ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m 755 \ 347 ${SDESTDIR}${INCLUDEDIR}/i386 348.endif 349 350copies: .PHONY .META 351 cd ${SDESTDIR}${INCLUDEDIR}; find ${LDIRS} ${LSUBDIRS} ${LSUBSUBDIRS} crypto \ 352 machine machine/pc ${_MARCHS} -maxdepth 1 -mindepth 1 -type l \ 353 -name "*.h" -print -delete || true 354.for i in ${LDIRS} ${LSUBDIRS:Ndev/agp:Ndev/acpica:Ndev/evdev:Ndev/hid:Ndev/hyperv:Ndev/pci:Ndev/veriexec} ${LSUBSUBDIRS} 355 cd ${SRCTOP}/sys; \ 356 ${INSTALL} -C ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m 444 $i/*.h \ 357 ${SDESTDIR}${INCLUDEDIR}/$i 358.endfor 359 cd ${SRCTOP}/sys/${MACHINE}/include; \ 360 ${INSTALL} -C ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 361 ${SDESTDIR}${INCLUDEDIR}/machine 362.if exists(${SRCTOP}/sys/${MACHINE}/include/pc) 363 cd ${SRCTOP}/sys/${MACHINE}/include/pc; \ 364 ${INSTALL} -C ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 365 ${SDESTDIR}${INCLUDEDIR}/machine/pc 366.endif 367.for _MARCH in ${_MARCHS} 368.if exists(${SRCTOP}/sys/${_MARCH}/include) 369 ${INSTALL} -d ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m 755 \ 370 ${SDESTDIR}${INCLUDEDIR}/${_MARCH}; \ 371 cd ${SRCTOP}/sys/${_MARCH}/include; \ 372 ${INSTALL} -C ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 373 ${SDESTDIR}${INCLUDEDIR}/${_MARCH} 374.if exists(${SRCTOP}/sys/${_MARCH}/include/pc) 375 ${INSTALL} -d ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m 755 \ 376 ${SDESTDIR}${INCLUDEDIR}/${_MARCH}/pc; \ 377 cd ${SRCTOP}/sys/${_MARCH}/include/pc; \ 378 ${INSTALL} -C ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m 444 *.h \ 379 ${SDESTDIR}${INCLUDEDIR}/${_MARCH}/pc 380.endif 381.endif 382.endfor 383 384symlinks: .PHONY .META 385 @${ECHO} "Setting up symlinks to kernel source tree..." 386.for i in ${LDIRS} 387 cd ${SRCTOP}; ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} \ 388 $$(printf '../../../%s ' sys/$i/*.h) ${SDESTDIR}${INCLUDEDIR}/$i 389.endfor 390.for i in ${LSUBDIRS:Ndev/agp:Ndev/acpica:Ndev/evdev:Ndev/hid:Ndev/hyperv:Ndev/pci:Ndev/veriexec} 391 cd ${SRCTOP}; ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} \ 392 $$(printf '../../../../%s ' sys/$i/*.h) ${SDESTDIR}${INCLUDEDIR}/$i 393.endfor 394 ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} \ 395 $$(printf '../../../../sys/dev/acpica/%s ' acpiio.h acpi_hpet.h) \ 396 ${SDESTDIR}${INCLUDEDIR}/dev/acpica; \ 397 ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} ../../../../sys/dev/agp/agpreg.h \ 398 ${SDESTDIR}${INCLUDEDIR}/dev/agp; \ 399 ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} \ 400 $$(printf '../../../../sys/dev/evdev/%s ' input.h input-event-codes.h uinput.h) \ 401 ${SDESTDIR}${INCLUDEDIR}/dev/evdev; 402 ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} \ 403 $$(printf '../../../../sys/dev/hid/%s ' hid.h hidraw.h) \ 404 ${SDESTDIR}${INCLUDEDIR}/dev/hid; \ 405 ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} ../../../../sys/dev/hyperv/include/hyperv.h \ 406 ${SDESTDIR}${INCLUDEDIR}/dev/hyperv; \ 407 ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} ../../../../sys/dev/hyperv/utilities/hv_snapshot.h \ 408 ${SDESTDIR}${INCLUDEDIR}/dev/hyperv; \ 409 ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} ../../../../sys/dev/pci/pcireg.h \ 410 ${SDESTDIR}${INCLUDEDIR}/dev/pci; \ 411 ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} ../../../../sys/dev/veriexec/veriexec_ioctl.h \ 412 ${SDESTDIR}${INCLUDEDIR}/dev/veriexec; 413.for i in ${LSUBSUBDIRS} 414 cd ${SRCTOP}; ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} \ 415 $$(printf '../../../../../%s ' sys/$i/*.h) ${SDESTDIR}${INCLUDEDIR}/$i 416.endfor 417.if ${MK_IPFILTER} != "no" 418 cd ${SRCTOP}; ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} \ 419 $$(printf '../../../%s ' sys/netpfil/ipfilter/netinet/*.h) \ 420 ${SDESTDIR}${INCLUDEDIR}/netinet; 421.endif 422.if ${MK_PF} != "no" 423 cd ${SRCTOP}; ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} \ 424 $$(printf '../../../../%s ' sys/netpfil/pf/*.h) \ 425 ${SDESTDIR}${INCLUDEDIR}/netpfil/pf; 426.endif 427 ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} ../../../sys/opencrypto/cryptodev.h \ 428 ${SDESTDIR}${INCLUDEDIR}/crypto; \ 429 cd ${SRCTOP}; ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} \ 430 $$(printf '../../../%s ' sys/${MACHINE}/include/*.h) \ 431 ${SDESTDIR}${INCLUDEDIR}/machine; 432.if exists(${SRCTOP}/sys/${MACHINE}/include/pc) 433 cd ${SRCTOP}; ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} \ 434 $$(printf '../../../../%s ' sys/${MACHINE}/include/pc/*.h) \ 435 ${SDESTDIR}${INCLUDEDIR}/machine/pc; 436.endif 437.for _MARCH in ${_MARCHS} 438.if exists(${SRCTOP}/sys/${_MARCH}/include) 439 ${INSTALL} -d ${TAG_ARGS:D${TAG_ARGS},dev} -o ${BINOWN} -g ${BINGRP} -m 755 \ 440 ${SDESTDIR}${INCLUDEDIR}/${_MARCH}; \ 441 cd ${SRCTOP}; ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} \ 442 $$(printf '../../../%s ' sys/${_MARCH}/include/*.h) \ 443 ${SDESTDIR}${INCLUDEDIR}/${_MARCH}; 444.if exists(${SRCTOP}/sys/${_MARCH}/include/pc) 445 ${INSTALL} -d ${TAG_ARGS:D${TAG_ARGS},dev} -o ${BINOWN} -g ${BINGRP} -m 755 \ 446 ${SDESTDIR}${INCLUDEDIR}/${_MARCH}/pc; \ 447 cd ${SRCTOP}; ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} \ 448 $$(printf '../../../../%s ' sys/${_MARCH}/include/pc/*.h) \ 449 ${SDESTDIR}${INCLUDEDIR}/${_MARCH}/pc; 450.endif 451.endif 452.endfor 453 cd ${SRCTOP}; ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} \ 454 $$(printf '../../../../%s ' sys/fs/cd9660/*.h) \ 455 ${SDESTDIR}${INCLUDEDIR}/isofs/cd9660; \ 456 cd ${SRCTOP}; ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} \ 457 $$(printf '../../../sys/rpc/%s ' rpcsec_tls.h types.h) \ 458 ${SDESTDIR}${INCLUDEDIR}/rpc; 459 cd ${SRCTOP}/sys/rpc; 460.if ${MK_CDDL} != "no" 461 ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} \ 462 ../../../sys/contrib/openzfs/include/sys/nvpair.h \ 463 ${SDESTDIR}${INCLUDEDIR}/sys 464.endif 465.if ${MK_MLX5TOOL} != "no" 466 ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},dev} ../../../../sys/dev/mlx5/mlx5io.h \ 467 ${SDESTDIR}${INCLUDEDIR}/dev/mlx5 468.endif 469 470.include <bsd.prog.mk> 471 472installincludes: ${SHARED} 473${SHARED}: compat 474 475.if ${MACHINE} == "host" && !defined(_SKIP_BUILD) 476# we're here because we are building a sysroot... 477# we need MACHINE et al set correctly 478HOST_MACHINE!= uname -m 479HOST_MACHINE_ARCH!= uname -p 480MACHINE:= ${HOST_MACHINE} 481MACHINE_ARCH:= ${HOST_MACHINE_ARCH} 482.endif 483