From owner-freebsd-ports@FreeBSD.ORG Mon Apr 26 15:12:22 2004 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 19FC916A4CE for ; Mon, 26 Apr 2004 15:12:22 -0700 (PDT) Received: from basement.kutulu.org (pcp03610121pcs.longhl01.md.comcast.net [68.49.239.235]) by mx1.FreeBSD.org (Postfix) with ESMTP id 627CD43D2D for ; Mon, 26 Apr 2004 15:12:19 -0700 (PDT) (envelope-from kutulu@kutulu.org) Received: from wombat.localnet (wombat.localnet [192.168.69.3]) by basement.kutulu.org (Postfix) with ESMTP id 86D82A961 for ; Mon, 26 Apr 2004 18:12:18 -0400 (EDT) Received: by wombat.localnet (Postfix, from userid 1001) id ED590B836; Mon, 26 Apr 2004 18:12:17 -0400 (EDT) Date: Mon, 26 Apr 2004 18:12:17 -0400 From: Michael Edenfield To: ports@freebsd.org Message-ID: <20040426221217.GA40770@wombat.localnet> Mail-Followup-To: ports@freebsd.org Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="pWyiEgJYm5f9v55/" Content-Disposition: inline X-Mailer: Mutt http://www.mutt.org/ X-Accept-Language: en X-PGP-Key: http://www.kutulu.org/pgp/kutulu.asc X-PGP-Fingerprint: 1CE0 3C31 7013 D529 406D 37DC 09CC CD84 A46C 878F User-Agent: Mutt/1.5.6i Subject: The ongoing saga of lsof-4.71.1 X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 26 Apr 2004 22:12:22 -0000 --pWyiEgJYm5f9v55/ Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable I am one of the people having problems building lsof's latest release on -CURRENT and have spent a few hours trying to figure out why. I managed to get the program to build but I can't figure out what went wrong in the first place, or more specifically, why *everyone* isn't having this problem. My ports tree was cvsup's immediately before I began. I also deleted /usr/includes and did a `make buildincludes; make installincludes` in /usr/src before beginning. The error, as usual, was in machine.h in the lsof work directory. This is a symlink to dialiects/freebsd/machine.h and contains the following code: #include #if FREEBSDV>=3D520 /* * In FreeBSD >=3D 5.2 the cpumask_t typedef is only made in = if * _KERNEL is predefined. However, predefining _KERNEL before #include'ing * causes redefinition errors for boolean_t and vm_page_t when * is #include'd with _KERNEL predefined. Since lsof must have * _KERNEL predefined when is #include'd, the expedient choice has * been made to do the cpumask_t typedef here. */ typedef __cpumask_t cpumask_t; #endif /* FREEBSDV>=3D520 */ The build error is complaining that __cpumask_t has no storage class or size, so it obviously can't use it in a typedef. So I went looking for __cpumask_t on my system and came up empty. It's never defined anywhere, neither in the system headers nor or the lsof source itself. The only place it appears is in machine.h where it's used as the source of a typedef. root@basement:/usr/ports/sysutils/lsof/work/lsof_4.72A.freebsd$ find / -nam= e "*.h" | xargs grep "__cpumask_t" /usr/ports/sysutils/lsof/work/lsof_4.72A.freebsd/dialects/freebsd/machine.h= :typedef __cpumask_t cpumask_t; /usr/ports/sysutils/lsof/work/lsof_4.72A.freebsd/machine.h:typedef __cpumas= k_t cpumask_t; root@basement:/usr/ports/sysutils/lsof/work/lsof_4.72A.freebsd$=20 My next step was to look for the system's definition of cpumask_t, with the intent to ''fix'' machine.h. But I also can't find that type defined anywhere. The funny thing is, cpumask_t isn't actually *used* in the lsof source tree. I commented out the typedef and now everything builds fine. So my question is now, where *should* __cpumask_t and/or cpumask_t g= et defined, why don't I have those definitions, and why does everyone else seem to have them? --Mike --pWyiEgJYm5f9v55/ Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (FreeBSD) iD8DBQFAjYlBCczNhKRsh48RAn3uAKDW6hgLwxuHMAqST0Nuj0/WjRW/ywCfZ8sg b4qsEPJiFITmcOdeX7aj2V8= =6e5b -----END PGP SIGNATURE----- --pWyiEgJYm5f9v55/--