GNU make manual 翻譯( 一百零四)

繼續翻譯

4.7 Rules without Recipes or Prerequisites
==========================================If a rule has no prerequisites or recipe, and the target of the rule is
a nonexistent file, then `make' imagines this target to have been
updated whenever its rule is run.  This implies that all targets
depending on this one will always have their recipe run.An example will illustrate this:clean: FORCErm $(objects)FORCE:Here the target `FORCE' satisfies the special conditions, so the
target `clean' that depends on it is forced to run its recipe.  There
is nothing special about the name `FORCE', but that is one name
commonly used this way.As you can see, using `FORCE' this way has the same results as using
`.PHONY: clean'.
Using `.PHONY' is more explicit and more efficient.  However, other
versions of `make' do not support `.PHONY'; thus `FORCE' appears in
many makefiles.  *Note Phony Targets::.

4.7 沒有片段或前提條件的規則
==========================================

如果一個規則沒有前提條件或者片段,并且此規則的目的是一個尚未存在的文件,那么 make 將認為此目的在任何一次make 運行時都已經被更新。這暗示著每個依賴于此的目的都總是運行其片段。

例子是這樣的:

clean: FORCE
rm $(objects)
FORCE:

這里,目的 FORCE 滿足前面所述的特定的條件,于是依賴此 目的的 目的 clean 被強制執行。這里的名字 FORCE 沒有任何特殊之處,但是是一個通常被使用的名字。

如你所見,采用這種方法用 FORCE 和用 .PHONY: clean 是一樣的效果。

使用 .PHONY 更佳的明確和更有效率,但是其他版本的 make ,有的不支持 .PHONY 語法;因此你會在某些 makefile里面看到 FORCE 出現。 *Note Phony Targets::

后文待續

轉載于:https://www.cnblogs.com/gaojian/archive/2012/09/20/2695334.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/260386.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/260386.shtml
英文地址,請注明出處:http://en.pswp.cn/news/260386.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

mysql 數字 除以 一萬_騰訊股票接口、和訊網股票接口、新浪股票接口、雪球股票數據、網易股票數據...

騰訊股票接口:大單數據http://stock.finance.qq.com/sstock/list/view/dadan.php?tjs&csz002451&max80&p1&opt10&o0opt10 11 12 13 分別對應成交額大于等于(100萬 200萬 500萬 1000萬)opt1,2,3,4,5,6,7,8 分別對應成交量大于等于(100手 200手 …

asp.net url傳值,彈窗

一,<a>標簽鏈接式傳值 1&#xff0c; <a href"News_list.aspx?ClassID<%#((DataRowView)Container.DataItem)["ClassID"]%>&Editor<%#((DataRowView)Container.DataItem)["Editor"]%>" >傳值</a> 2, <a&g…

windows下python視頻加速調節_Windows下python+ffmpeg實現批量提取、切割視頻中的音頻...

廢話不說&#xff0c;直接上代碼 #遍歷所有mp4文件名->文件名改為字母形式->fffmpeg批量提取音頻、切割音頻->改回中文名 import os import subprocess current os.getcwd() dirs os.listdir(current) for i in dirs: if os.path.splitext(i)[1] ".mp4":…

(轉)千萬別熬夜:身體器官晚上工作時間表一覽

原文連接&#xff1a;http://jiuyinguan.blog.163.com/blog/static/20907903720126801015713/ 任何試圖更改生物鐘的行為&#xff0c;都將給身體留下莫名其妙的疾病&#xff0c;20、30年之后再后悔&#xff0c;已經來不及了。 一、晚上9-11點為免疫系統&#xff08;淋巴&#x…

伯納德?羅森伯格先生參加華為技術2016首屆國際光電連接技術研討會

近日&#xff0c;來自羅森伯格德國總部的CTO首席技術官伯納德羅森伯格先生參加了由華為技術組織的2016首屆國際光電連接技術研討會。本屆研討會華為共邀請了來自全球的約十家著名光電技術領先廠家及合作伙伴參與&#xff0c;共同探討未來數十年的光纖電子技術發展方向并分享最新…

如何使用python效率_Python的5中提高效率的用法

任何編程語言的高級特征通常都是通過大量的使用經驗才發現的。比如你在編寫一個復雜的項目&#xff0c;并在 stackoverflow 上尋找某個問題的答案。然后你突然發現了一個非常優雅的解決方案&#xff0c;它使用了你從不知道的 Python 功能&#xff01;這種學習方式太有趣了&…

記“debug alipay”一事

背景&#xff1a;客戶支付成功&#xff0c;無法返回支付結果 查找原因&#xff0c;追蹤代碼: verified AlipayNotify.verify(params,alipayConfig.sign_type,alipayConfig.partner,alipayConfig.key,alipayConfig.input_charset); if (!verified) { Debug.logError("##…

Xamarin 跨移動端開發系列(01) -- 搭建環境、編譯、調試、部署、運行

&#xff08;本文是基于老版本的VS和Xamarin&#xff0c;而VS2017已經集成了Xamarin&#xff0c;所以&#xff0c;本文已經過時&#xff0c;最新的Xamarin開發介紹請參見 使用 Xamarin開發手機聊天程序 。&#xff09; 如果是.NET開發人員&#xff0c;想學習手機應用開發&#…

內網穿透 無需公網ip_無需端口映射、無需公網IP,60秒實現FTP服務遠程訪問

互聯網的一大特點是實現信息共享&#xff0c;其中文件傳輸是信息共享十分重要的內容之一。科技公司更是離不開它。銷售、庫存、客戶資料等等數據需要隨時共享同步。當需要考慮到文件傳輸安全、傳輸質量、傳輸穩定性、訪問控制等諸多因素時&#xff0c;FTP服務器就成了解決文件傳…

mysql查詢的時候會涉及到鎖_Mysql 查詢 鎖的問題?

以下五種方法可以快速定位全局鎖的位置&#xff0c;僅供參考。方法1&#xff1a;利用 metadata_locks 視圖此方法僅適用于 MySQL 5.7 以上版本&#xff0c;該版本 performance_schema 新增了 metadata_locks&#xff0c;如果上鎖前啟用了元數據鎖的探針(默認是未啟用的)&#x…

Clojure:導入lein項目到IntelliJ IDEA

首先&#xff0c;我們需要先創建一個lein項目&#xff08;廢話。。&#xff09; lein new [項目名稱] 然后生成Maven的pom.xml文件 cd [項目目錄]lein pom 最后&#xff0c;在InteliJ IDEA中選擇導入Maven項目&#xff0c;選擇剛剛生成的pom.xml文件即可。 轉載于:https://www.…

git 工具_Github開源工具分享之自托管GIT服務工具Gogs

介紹Gogs項目旨在構建一種簡單&#xff0c;穩定和可擴展的自托管Git服務&#xff0c;該服務可以通過最輕松的方式進行設置。使用Go語言開發的git自托管服務&#xff0c;部署十分簡單&#xff0c;可以在Go支持的所有平臺(包括Linux&#xff0c;macOS&#xff0c;Windows和ARM)上…

Mariadb 二進制半自動安裝腳本

Mariadb 二進制半自動安裝腳本系統環境&#xff1a;centosx86_64Mariadb版本&#xff1a;mariadb-5.5.36-linux-x86_64#!/bin/bash#auth:code7#description:auto-mariadb#version:1.0groupadd -r -g 306 mysqluseradd -r -g 306 -u 306 mysql#創建mysql的組和用戶tar -xvf mari…

hdu 4414 Finding crosses

http://acm.hdu.edu.cn/showproblem.php?pid4414 簡單枚舉 代碼&#xff1a; #include <iostream> #include <cstdio> #include <cstring> #include <string> #include <queue> #include <vector> #include <algorithm>#define LL …

mysql皮秒轉成年月日時分秒_MySQL performance_schema 中 TIMER_*類字段 的易讀轉換

performance_schema中有很多的表(語句信息表&#xff0c;事務信息表等)記錄執行的SQL的具體信息&#xff0c;執行事務的具體信息&#xff0c;其中都會有一個叫做TIMER_START的字段&#xff0c;這個字段的值易讀性很差&#xff0c;官方文檔說是皮秒&#xff0c;但也沒說怎么轉成…

c++函數相關

1&#xff0c;內連函數 inline 返回值類型 函數名&#xff08;形參列表&#xff09; 普通函數成為內連函數&#xff1a;在普通函數聲明之前加上inline 成員函數成為內連函數&#xff1a;在類中定義的函數全部默認為內連函數&#xff0c;可以顯示加上inline或者不加&#xff1b;…

goto語句_11. Go語言流程控制:goto 無條件跳轉

本文原文&#xff1a;http://golang.iswbm.comGithub&#xff1a;https://github.com/iswbm/GolangCodingTimeGo里的流程控制方法還是挺豐富&#xff0c;整理了下有如下這么多種&#xff1a;if - else 條件語句switch - case 選擇語句for - range 循環語goto 無條件跳轉語句def…

[BT5]信息收集1-2 Dnsmap

0.工具介紹 dnsmap is mainly meant to be used by pentesters during the information gathering/enumeration phase of infrastructure security assessments. During the enumeration stage, the security consultant would typically discover the target companys IP netb…

httpf發送 json_Java用HttpClient3發送http/https協議get/post請求,發送map,json,xml,txt數據...

使用的是httpclient 3.1&#xff0c;使用"httpclient"4的寫法相對簡單點&#xff0c;百度&#xff1a;httpclient https post當不需要使用任何證書訪問https網頁時&#xff0c;只需配置信任任何證書其中信任任何證書的類MySSLProtocolSocketFactory主要代碼&#xff…

分頁優化的四種方式

轉自&#xff1a;http://www.orczhou.com/index.php/2009/03/four-way-pager-display/ 很久以前讀了一篇關于分頁的文章&#xff0c;后來越想越有道理&#xff0c;最近又重新找出來&#xff0c;并做了翻譯&#xff0c;原文參考:Four ways to optimize paginated displays. 翻譯…