From nobody Wed Feb 07 09:21:00 2024 X-Original-To: questions@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TVF3X2n2gz59CKR for ; Wed, 7 Feb 2024 09:21:12 +0000 (UTC) (envelope-from dpchrist@holgerdanske.com) Received: from holgerdanske.com (holgerdanske.com [IPv6:2001:470:0:19b::b869:801b]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "holgerdanske.com", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TVF3W0y1sz4tln for ; Wed, 7 Feb 2024 09:21:11 +0000 (UTC) (envelope-from dpchrist@holgerdanske.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=holgerdanske.com header.s=nov-20210719-112354 header.b=1f06sLv3; dmarc=pass (policy=none) header.from=holgerdanske.com; spf=pass (mx1.freebsd.org: domain of dpchrist@holgerdanske.com designates 2001:470:0:19b::b869:801b as permitted sender) smtp.mailfrom=dpchrist@holgerdanske.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=holgerdanske.com; s=nov-20210719-112354; t=1707297661; bh=7E/g4h34nIFa6aGqdKDnnCvsLNzur4aV5oOjy2I5qmo=; h=Received:Message-ID:Date:MIME-Version:User-Agent:Subject: Content-Language:To:References:From:In-Reply-To:Content-Type: Content-Transfer-Encoding; b=1f06sLv3v/qi2QuMh826YUwZQXlJYZ/EoA8tCYLwQ0ZIPZw7eb1vkZ6z0meLT9sba zwCj+t7+Z0pa9jgkyBGhd8OQIwVqEw7RAQF81HHyRaXMEpB/Hv1ADkevwwpnh4NUsB 0StlGlHSbUmPONl4q2CBBnieV5v3vH70tafAaWEZEGk8pQ2wNOnqiQQdpTD4p/2jD7 fpp2249YcvTGdpXe9BTVvTh20SikJ55Vu+4H59WO+LkJ6foVw6pJmXRRfbFicheK0T EbTMLOFXITQ2h/sj2aIh6H7XC37TEGfczNXj2+5HHCkly3LB1Au2SDf8SFN60k9kF/ FfDQ+eV+/ly9FqpJcxqBWFChCEKW9p9mufSz076HmeM2NQWyJI8OFAHwkZ6SeAhRuQ j2nQGS2n6fVZf6skMRijam/RCTebTCNJGGln7oxPS1Dob5xC/GG1aJCaCixwZvi9iA raK5yxPtl1v+ALB+hnMIytKQohUo9d61TwLTiPOnUDzWE0OFt1kCSidRWEZeOSxkw2 7ns0nJxmQ3bbLRzqoI3RBf7tzQhW/w3guK4BjDCIfx1/m1mk/O81mAlc20NlXaoHiA QCoXniuvz4yw8TcCaqU/WTWMTpiUzSh39DV7kmAgeHZyU5vWvDUZB7SlrG2Z3+gVmH sMDjZTbpEIYju1iI/zd2MVlc= Received: from 99.100.19.101 (99-100-19-101.lightspeed.frokca.sbcglobal.net [99.100.19.101]) by holgerdanske.com with ESMTPSA (TLS_AES_128_GCM_SHA256:TLSv1.3:Kx=any:Au=any:Enc=AESGCM(128):Mac=AEAD) (SMTP-AUTH username dpchrist@holgerdanske.com, mechanism PLAIN) for ; Wed, 7 Feb 2024 01:21:01 -0800 Message-ID: <306e2061-2914-4cd0-86a0-3668f0deb83e@holgerdanske.com> Date: Wed, 7 Feb 2024 01:21:00 -0800 List-Id: User questions List-Archive: https://lists.freebsd.org/archives/freebsd-questions List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-questions@freebsd.org X-BeenThere: freebsd-questions@freebsd.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: Need help with a makefile Content-Language: en-US To: questions@freebsd.org References: From: David Christensen In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spamd-Bar: --- X-Spamd-Result: default: False [-3.89 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-1.000]; DMARC_POLICY_ALLOW(-0.50)[holgerdanske.com,none]; R_SPF_ALLOW(-0.20)[+a:november.he.net]; R_DKIM_ALLOW(-0.20)[holgerdanske.com:s=nov-20210719-112354]; ONCE_RECEIVED(0.10)[]; MIME_GOOD(-0.10)[text/plain]; XM_UA_NO_VERSION(0.01)[]; RCPT_COUNT_ONE(0.00)[1]; RCVD_VIA_SMTP_AUTH(0.00)[]; ASN(0.00)[asn:6939, ipnet:2001:470::/32, country:US]; MIME_TRACE(0.00)[0:+]; RCVD_COUNT_ONE(0.00)[1]; RCVD_TLS_ALL(0.00)[]; MLMMJ_DEST(0.00)[questions@freebsd.org]; ARC_NA(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; TO_DN_NONE(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[questions@freebsd.org]; TO_MATCH_ENVRCPT_ALL(0.00)[]; DKIM_TRACE(0.00)[holgerdanske.com:+] X-Rspamd-Queue-Id: 4TVF3W0y1sz4tln On 2/6/24 19:21, Jonathan Adams wrote: > Hi all, > I'm having a heck of a time getting my makefile conditional statements to not cause `make` to have fits. Could sure use some help on this. This is a makefile that works great _without_ the conditions, and my program compiles and runs on FBSD and Linux. > ... I also had problems attempting to write one Makefile that worked with both BSD make(1) and GNU make(1) (e.g. Linux). My solution was to choose GNU make(1) for the programming language, install gmake(1) on BSD, rename Makefile to GNUmakefile, and write a BSDmakefile that forwards invocations to gmake(1): $ cat BSDmakefile .PHONY : update update : @gmake -s $@ .DEFAULT : @gmake -s $@ ("update" is the default target in GNUmakefile.) The following invocations work on either platform: $ make $ make update $ make TARGET RTFM GNU make(1) documents GNUmakefile. RTFM BSD make(1) on my machine does not document BSDmakefile (?), but it works. David