From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Alan Third Newsgroups: gmane.emacs.devel Subject: [PATCH] Fix GNUstep build Date: Mon, 22 May 2017 20:21:03 +0100 Message-ID: <20170522192103.GA50892@breton.holly.idiocy.org> References: <16003c01-1b84-677d-51c3-12646503cb59@cs.ucla.edu> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: blaine.gmane.org 1495480881 6338 195.159.176.226 (22 May 2017 19:21:21 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Mon, 22 May 2017 19:21:21 +0000 (UTC) User-Agent: Mutt/1.7.2 (2016-11-26) Cc: Philipp Stephani , Anders Lindgren , emacs-devel@gnu.org To: Paul Eggert Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon May 22 21:21:17 2017 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dCstH-0001Um-5t for ged-emacs-devel@m.gmane.org; Mon, 22 May 2017 21:21:15 +0200 Original-Received: from localhost ([::1]:44498 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dCstM-0001Ef-I0 for ged-emacs-devel@m.gmane.org; Mon, 22 May 2017 15:21:20 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:35254) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dCstA-0001Do-K9 for emacs-devel@gnu.org; Mon, 22 May 2017 15:21:10 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dCst9-0003Ec-Lk for emacs-devel@gnu.org; Mon, 22 May 2017 15:21:08 -0400 Original-Received: from mail-wm0-x241.google.com ([2a00:1450:400c:c09::241]:33199) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dCst9-0003EM-E6 for emacs-devel@gnu.org; Mon, 22 May 2017 15:21:07 -0400 Original-Received: by mail-wm0-x241.google.com with SMTP id b84so19178401wmh.0 for ; Mon, 22 May 2017 12:21:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20161025; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=CdmYtZSjBGd3pmGRVLw0z81t6UL0ukDCP3UCx7VjUUo=; b=qUaIgvM2CdnKRXV+ZTmOgavI8xgNDw/PsiEChH8uq0zV7734XoD4Luke48vQVqxkhJ XzYjpZcuz79cHrHRpwtHOdJmCbD6cTDkWtbHFdDEqc5xdTaaT0ODdNTzln04Mu1qE3Cf MhDw4MfmdVA7cx4xVqbHXuM73kUOT3Vh2hfO1X5Jd9r1FUZGa7N6HGlzw6FwETs6Z+1U XEu1bIjS6UCCi1UcYsbYAWQw6VnMOXy5MlV10OHojTAk8Xg73qs3021ItFkcFBXepeWS mhu6i8mJ4kkgey6xnHv+oWkWzumHXnqdJonpJF5sBobDOgAO+RZ/6t3kA/E9Kt4Dqinj gq1A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:date:from:to:cc:subject:message-id :references:mime-version:content-disposition:in-reply-to:user-agent; bh=CdmYtZSjBGd3pmGRVLw0z81t6UL0ukDCP3UCx7VjUUo=; b=mulEGLtlLMow0DRnh2yTYrz3rXUTRDSk0W8EJ0ZBtSB29tMzEzssmWMUuWIIXU45PD 9Re4xMd69+n5gjhBHtfGIHnyFAzGbjBE07tbd+bMNpoF1Vq+tTEiQRt2kfMD0IBjsWpm /AgyfyFQYAOvvEqd0gMkB6EFJROSZFvFkGXVoO3PmIi5mmPuTjqM9o9hWtydgqA66jxv 7pde6CFW79ozLK5mOUnpK+Yi6KHJaBakM4i+ujPnC7ziqfyFzsrsJLIi4pHwKvTSc3ju P5kV3ObdlXnUbeRl9JHEpxNZKG8VX+tq14XYprtW5+B7yl6QHlKeN/x7TfaWKD9Lwmso 0fGQ== X-Gm-Message-State: AODbwcC6uaO+v0vJdTn2Q2JbAq8O4E9i5fitoHP/dcWzkLRb7zCntZ8w zwW6Xo3Idhiq4g== X-Received: by 10.28.31.16 with SMTP id f16mr26341457wmf.118.1495480866125; Mon, 22 May 2017 12:21:06 -0700 (PDT) Original-Received: from breton.holly.idiocy.org (ip6-2001-08b0-03f8-8129-1c23-04ca-53b1-12e4.holly.idiocy.org. [2001:8b0:3f8:8129:1c23:4ca:53b1:12e4]) by smtp.gmail.com with ESMTPSA id k22sm13001300wrc.12.2017.05.22.12.21.04 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 22 May 2017 12:21:05 -0700 (PDT) Content-Disposition: inline In-Reply-To: <16003c01-1b84-677d-51c3-12646503cb59@cs.ucla.edu> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::241 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:215104 Archived-At: * src/nsterm.h [NS_IMPL_GNUSTEP]: Add typedefs for Cocoa-only types. (NSWindowStyleMaskUtilityWindow): #define to NSUtilityWindowMask in GNUstep and old versions of macOS. * src/nsfns.m (ns-set-mouse-absolute-pixel-position): Function only works in cocoa, not GNUstep. --- src/nsfns.m | 4 ++++ src/nsterm.h | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/src/nsfns.m b/src/nsfns.m index 00310c051f..3833ee75ac 100644 --- a/src/nsfns.m +++ b/src/nsfns.m @@ -3046,6 +3046,9 @@ value is a list of the form (LEFT, TOP, RIGHT, BOTTOM). All values are \(0, 0) of the selected frame's display. */) (Lisp_Object x, Lisp_Object y) { +#ifdef NS_IMPL_COCOA + /* GNUstep doesn't support CGWarpMouseCursorPosition, so none of + this will work. */ struct frame *f = SELECTED_FRAME (); EmacsView *view = FRAME_NS_VIEW (f); NSScreen *screen = [[view window] screen]; @@ -3072,6 +3075,7 @@ value is a list of the form (LEFT, TOP, RIGHT, BOTTOM). All values are CGPoint mouse_pos = CGPointMake(mouse_x, mouse_y); CGWarpMouseCursorPosition (mouse_pos); +#endif /* NS_IMPL_COCOA */ return Qnil; } diff --git a/src/nsterm.h b/src/nsterm.h index 5da949e1fb..443a40ed6f 100644 --- a/src/nsterm.h +++ b/src/nsterm.h @@ -62,6 +62,13 @@ typedef CGFloat EmacsCGFloat; typedef float EmacsCGFloat; #endif +/* FIXME: It looks as though instancetype will be supported in GNUstep + at some point, but I'm not sure what version. */ +#ifdef NS_IMPL_GNUSTEP +typedef id instancetype; +typedef int NSWindowStyleMask; +#endif + /* ========================================================================== Trace support @@ -1290,6 +1297,7 @@ extern char gnustep_base_version[]; /* version tracking */ #define NSWindowStyleMaskMiniaturizable NSMiniaturizableWindowMask #define NSWindowStyleMaskResizable NSResizableWindowMask #define NSWindowStyleMaskTitled NSTitledWindowMask +#define NSWindowStyleMaskUtilityWindow NSUtilityWindowMask #define NSAlertStyleCritical NSCriticalAlertStyle #define NSControlSizeRegular NSRegularControlSize #endif -- I think this should do the trick. -- Alan Third