Summary: | emulators/open-vm-tools emulators/open-vm-tools-nox11: Fix build with clang 3.9.0 | ||||||
---|---|---|---|---|---|---|---|
Product: | Ports & Packages | Reporter: | Dimitry Andric <dim> | ||||
Component: | Individual Port(s) | Assignee: | Steve Wills <swills> | ||||
Status: | Closed FIXED | ||||||
Severity: | Affects Some People | CC: | ngie | ||||
Priority: | --- | Flags: | bugzilla:
maintainer-feedback?
(swills) |
||||
Version: | Latest | ||||||
Hardware: | Any | ||||||
OS: | Any | ||||||
Bug Depends on: | |||||||
Bug Blocks: | 212343 | ||||||
Attachments: |
|
A commit references this bug: Author: swills Date: Mon Sep 12 01:37:19 UTC 2016 New revision: 421892 URL: https://svnweb.freebsd.org/changeset/ports/421892 Log: emulators/open-vm-tools: Fix build with clang 3.9.0 PR: 212426 Submitted by: dim Changes: head/emulators/open-vm-tools/files/patch-lib_include_vm__basic__defs.h Committed, thanks! *** Bug 215366 has been marked as a duplicate of this bug. *** |
Created attachment 174432 [details] Make definition of __IS_FREEBSD__ more portable While testing the clang390-import branch, building emulators/open-vm-tools or emulators/open-vm-tools-nox11 results in the following -Werror warnings: hgfsServerLinux.c:1989:8: error: macro expansion producing 'defined' has undefined behavior [-Werror,-Wexpansion-to-defined] # if __IS_FREEBSD_VER__(500043) ^ /wrkdirs/usr/ports/emulators/open-vm-tools-nox11/work/open-vm-tools-9.4.0-1280544/lib/include/vm_basic_defs.h:85:34: note: expanded from macro '__IS_FREEBSD_VER__' #define __IS_FREEBSD_VER__(ver) (__IS_FREEBSD__ && __FreeBSD_version >= (ver)) ^ /wrkdirs/usr/ports/emulators/open-vm-tools-nox11/work/open-vm-tools-9.4.0-1280544/lib/include/vm_basic_defs.h:84:26: note: expanded from macro '__IS_FREEBSD__' #define __IS_FREEBSD__ (!defined(VMKERNEL) && defined(__FreeBSD__)) ^ hgfsServerLinux.c:1989:8: error: macro expansion producing 'defined' has undefined behavior [-Werror,-Wexpansion-to-defined] /wrkdirs/usr/ports/emulators/open-vm-tools-nox11/work/open-vm-tools-9.4.0-1280544/lib/include/vm_basic_defs.h:85:34: note: expanded from macro '__IS_FREEBSD_VER__' #define __IS_FREEBSD_VER__(ver) (__IS_FREEBSD__ && __FreeBSD_version >= (ver)) ^ --- hgfsDirNotifyStub.lo --- mv -f .deps/hgfsDirNotifyStub.Tpo .deps/hgfsDirNotifyStub.Plo --- hgfsServerLinux.lo --- /wrkdirs/usr/ports/emulators/open-vm-tools-nox11/work/open-vm-tools-9.4.0-1280544/lib/include/vm_basic_defs.h:84:47: note: expanded from macro '__IS_FREEBSD__' #define __IS_FREEBSD__ (!defined(VMKERNEL) && defined(__FreeBSD__)) ^ 2 errors generated. This is because the macro __IS_FREEBSD__ expands to something with defined() in it, which is undefined. Fix it by using a more portable way of defining __IS_FREEBSD__.