並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 265件

新着順 人気順

makefileの検索結果1 - 40 件 / 265件

  • Makefileを自己文書化する | POSTD

    私たちのプロジェクトではいつも、非常に長い Makefile を使用して、インストールやビルド、テスト、デプロイメントの処理を自動化しています。ターゲット名はほとんど標準化されていますが( make install 、 make deploy )、中には説明が必要なものもあります( make run-dev 、 make restart-api )。そして、詳細なmakeターゲットを追加するほど、それらの処理内容をテキスト形式で大量に記載しなければなりません。私たちのプロジェクトでは通常、このような文書を README ファイルに書いています。 しかしCLI(コマンドラインインタフェース)を用いる場合は、主に自己文書化ツールを使っています。 make と打つだけで、利用可能なコマンドとその説明が一覧表示されたら便利だと思いませんか? それを実現するのは、実はとても簡単です。まずは各ターゲッ

      Makefileを自己文書化する | POSTD
    • Make と Makefile の説明

      まだ完成途中です back 注意: このページの内容には、おそらく多くの間違いがあります。 リンクされているので残しておきますが、利用には注意してください。(2008年3月、新山) ここではおもに make の使い方 と Makefile の書き方について 説明しています。じつは make の種類にはいろいろあり、ここでは GNU make (gmake というコマンド名のこともある) を 対象にしています (BSD の pmake でも基本的な部分は同じですが、 マクロ定義などは違うところもあるので注意してください)。 わかりにくい箇所とか、まちがってる箇所がある場合はメールください。 Contents make はどんなときに使うか Makefile を作る make の実行 Makefile の文法リファレンス 多段 make について (未完成) Makefile の例 (未完成)

      • Makefileの書き方 - $ cat /var/log/shin

        まえがき その昔、Makefileの書き方という非常にわかりやすいMakefileの入門ページがあったのですが、seiichirou氏の卒業(?)とともにページが消えてしまいました。 私も大変お世話になったページだった、というかこれからもお世話になりそうなので、そこでWebArchiveから引っ張りだしてきたものを、はてな記法で書き直したものがこの記事になります。 元々自分用に書き直したのですが、せっかくなので公開してみます。 なので、以下の著作はseiichirou氏に帰属します*1。 Makefileの書き方 はじめに ここでは、Makefileの中でもGNU makeにかぎって説明します。 makeって何? ソースファイルを分割して大規模なプログラムを作成していると、コマンドでコンパイルするのが面倒です。また、一部のソースファイルを書き換えただけなのに全部をコンパイルし直すのは時間の

          Makefileの書き方 - $ cat /var/log/shin
        • Makefileの書き方 - スキルアップ輪講

          makeって何? † ソースファイルを分割して大規模なプログラムを作成していると、コマンドでコンパイルするのが面倒です。また、一部のソースファイルを書き換えただけなのに全部をコンパイルし直すのは時間の無駄です。 そんな問題を解決するのがmakeです。Makefileと呼ばれるテキストファイルに必要なファイルと各ファイルのコンパイルのコマンド、ファイル間の依存関係を記します。そして、“make”というコマンドを実行するだけで、自動的にコマンドを実行してコンパイルしてくれます。これだけではスクリプトと大差がないのですが、makeはMakefileに記された依存関係に基づいて更新されたファイルの内関連のあるものだけを更新することで、コンパイル時間を短くします。 makeは特定のプログラミング言語に依存したものではありません。C言語のソースファイルのコンパイルにも使えますし、Verilog-HDL

          • C/C++中規模プロジェクトのための超シンプルなMakefile | POSTD

            私は多くの小規模プロジェクトで Make を使ってきましたが、より大きな規模のプロジェクトになると、それは非常にうんざりするようなものでした。最近までは、自分のビルドシステムに行いたいことが4つあったのですが、Makeでの方法が分かりませんでした。 out-of-sourceビルド(オブジェクトファイルが、ソースとは分離されたディレクトリにダンプ出力されます) 自動生成される(かつ正確!)ヘッダの依存関係 オブジェクト/ソースファイルのリストの自動的な決定 インクルードディレクトリのフラグの自動生成 以下にこれらの全てを行える、C、C++、およびアセンブリで動作するシンプルなMakefileを紹介します。 MAKEFILE TARGET_EXEC ?= a.out BUILD_DIR ?= ./build SRC_DIRS ?= ./src SRCS := $(shell find $(S

              C/C++中規模プロジェクトのための超シンプルなMakefile | POSTD
            • トリビアなmakefile入門

              make/makefileは,大きいプログラムのどの断片が再コンパイルされる必要があるかという事と,それらを再コンパイルする発行コマンドを自動的に決定するユーティリティ/設定ファイルです. コンピュータサイエンスの基本的な考え方のひとつに冗長性をなくして効率化する構成を追及するというのがあります. 情報理論(bitの理論),HTMLとブラウザ,高級言語と機械語など,ひとつの仕様(表現)から環境や状況にあわせて実装(記述)をつくりだす構成が好まれます. ひとつのファイルでさまざまなコマンドを制御するmake/makefileを制することはコンピュータサイエンスを制することになります. makeのあれこれ もっとも単純な例 Makefile は以下のようなルールからなる.

              • Makefile覚書: Goアプリ開発に役立ちそうな基礎知識 | フューチャー技術ブログ

                はじめにTIG真野です。育休明けです。 フューチャー社内のタスクランナーはmakeやTaskなど複数の流派があり、チームによって使い分けられています。個人的にはmakeで良いんじゃないかと思っていますが、Taskも良いですよね。 makeは細かい記法をいつも忘れる+調べるとC言語向けの情報が出てきて脳内変換に手間を感じたため、makeを用いてWebバックエンドアプリをGoで開発するということをテーマに、役立ちそうな情報をまとめます。 なお、今記事におけるmakeは、GNU Makeを指します。バージョンは以下で動かしています。 MakefileのためのEditorConfigMakefileのインデントはハードタブである必要があります。誤りを防ぐためにもEditorConfigを設定しておくと良いでしょう。 makeは通常、Makefileという名称をデフォルトで認識しますが、同一フォルダ

                  Makefile覚書: Goアプリ開発に役立ちそうな基礎知識 | フューチャー技術ブログ
                • Makefile警察「ぐぬぬぬ…」 - Qiita

                  ?「プロジェクトでよく使うコマンド Makefile に書いたろー」 ?「docker compose up -d --wait っと…」 👮‍♀「 Makefile警察 だ!」 👮‍♀「 Makefile は、ソフトウェアのビルドプロセスを自動化するためのファイルだ!」 👮‍♀「多目的なタスクランナーとして使うな!」 ?「せやったんか。誠にごめんなさい。」 Makefile は広く使われていますが、時々目的外に使われてしまうことがあります。しかし、そのような使い方にはより適した代替手段が存在します。この記事では、 Taskfile というツールについて解説します。 Makefile のつらみ Makefile は主にビルドプロセスを自動化する目的で生まれましたが、様々なコマンドをまとめて実行する便利さから多目的なタスクランナーとしてもよく使われます。しかし、次のような問題があります

                    Makefile警察「ぐぬぬぬ…」 - Qiita
                  • Go で使う Makefile の育て方

                    Go を使ってプロダクトを作る時、Makefile を使ってビルドを指定することが多いです。 理由としては、 バージョン情報などを埋め込むのに都合がいい 複数のバイナリを吐き出す時に都合がいい Go のビルドオプションを指定するのにいろいろあって整理しておきたい 事前にコードジェネレータで書き出す部分があり、それを考えると Makefile などで整理したい などなどです。なので今回はプロジェクトが大きくなっていく中でどういう Makefile の書き方をしているか、というのをご紹介しようと思います。 サンプルとして、今回のプロジェクトでは gRPC を使ったチャットサービスのサーバーとクライアントを作ることにします。リポジトリは https://github.com/rosylilly/gochat に置いておきました。 Step 1. バージョン情報を埋める 今回はサーバーとクライアン

                      Go で使う Makefile の育て方
                    • Makefileの代わりにnpm scripts+zxを使う - 詩と創作・思索のひろば

                      そこそこの規模があるプロジェクトで実行すべきタスクを定義するとき、初手として Makefile を使いがち。 Pros make は事実上どんな環境にもあることを期待してよい シェルで実行されるコマンドをそのまま書ける タスクの依存関係が明示できる Cons make では positional arguments が使えない 少し複雑なことをしようとすると Makefile 専用の文法を覚える必要がある 現代では、ファイルベースのタスクの依存関係は make が発明されたころほどは必要ではない Docker とか Go とか Webpack がよしなにしてくれることが多い 例: docker compose のラッパー ちょっとしたコマンドのラッパーを書きたいことがある。Makefile を書きはじめたらすべてのエントリポイントを make にしたい。ということで、以下のような Make

                        Makefileの代わりにnpm scripts+zxを使う - 詩と創作・思索のひろば
                      • Golang を使うなら Makefile を恐れるな - Frasco

                        最近 Golang を使っています。開発中、私は go build と go test を繰り返し手入力で実行するのに慣れてしまいました。これはついついやってしまう、私の悪い癖でした。引数がないようなシンプルなコマンドであれば、それほど辛くありません。しかし、タスクが複雑になってくれば、当然苦痛になってきます。逃げ道となりえる選択肢はほとんどありません。bash スクリプトは、あなたの仕事の役に立つでしょう。しかし、私としては makefile が役に立つと言いたいです。make ツールはこういった理由から生まれたものであり、 makefile には普段行う作業をまとめておくことができるからです。私は make の教祖になって、うまい書き方を教えたりすることはできませんが、今回の記事では、私のプロジェクトでよく使っている makefile をまとめておきました。では、やってみましょう。 #

                          Golang を使うなら Makefile を恐れるな - Frasco
                        • Go言語開発を便利にするMakefileの書き方 - Qiita

                          Go言語開発での makeコマンド と Makefile Go言語の開発ではmakeコマンドをタスク自動化ツールとしてよく使います。 よく使うコマンド、自動化したいタスクをMakefileに記述しておくと、開発に使う複雑なコマンドをすぐに実行したり、チームで共有出来ます。 Makefileに対して、難しいイメージを持っているかもしれませんが、超基本のMakefileの書き方はとてもシンプルなものです。 この記事の目的 Makefileの超基本がわかる Go言語開発のタスク自動化ツールとしてのMakefileの書き方がわかる 前提知識 シェルスクリプト についての知識 書き始める前の準備 EditorConfigを設定して、タブ / スペース によるインデントのトラブルに会わないようにしましょう。 公式サイトにあなたのエディタが、EditorConfigをサポートしているか、プラグインの追加

                            Go言語開発を便利にするMakefileの書き方 - Qiita
                          • Go でツール書くときの Makefile 晒す - Qiita

                            Go でツール書くときはタスクランナーとして make を使っています。ビルドだけじゃなくて、テストや配布用パッケージ作成も一括して make でやっています。 今回は整理も兼ねて、自分が普段どういう Makefile を使っているのか解剖していきます。 なぜ make を使うのか ビルドフラグ覚えるのが面倒だから、make は (Windows を除く) 大半のプラットフォームに入っていて使いやすいからというのが理由です。script/build みたいにシェルスクリプトを複数用意するのでもまあ良いと思いますが…。大半の Go プロジェクトは Makefile 置いてありますね。 make を使った開発フロー 基本的には、リポジトリを git clone / go get -d した後に以下のコマンドを打てばアプリケーションをインストールできるようにしています。 $ cd $GOPATH

                              Go でツール書くときの Makefile 晒す - Qiita
                            • Makefile の関数一覧

                              Makefile の組み込み関数の一覧です。 公式のドキュメントを読みながら、関数の引数と使い方について備忘録としてまとめました。 Makefile での関数の書き方は $(関数名 引数,...) または ${関数名 引数,...} です。 文字列操作・検索の関数 subst 文字列の置換です。使い方は $(subst 置換前,置換後,対象) FILES := hoge.c hoge.h fuga.c fuga.h all: @echo $(subst hoge,piyo,$(FILES)) # => piyo.c piyo.h fuga.c fuga.h patsubst パターンマッチによる文字列の置換です。使い方は $(patsubst 置換前,置換後,対象) FILES := hoge.c hoge.h fuga.c fuga.h all: @echo $(patsubst %.c

                                Makefile の関数一覧
                              • Makefileを自己文書化する `make2help` | おそらくはそれさえも平凡な日々

                                近年「タスクランナー」という言葉をよく耳にするようになりました。近年のWeb開発では、開発環境のセットアップ、依存ライブラリの管理、テストの実行、開発サーバーの起動、ビルド、デプロイ等等、とにかく気にしないといけないことが多いため、そういったタスクを一元管理してくれるタスクランナーは便利なやつです。 新しくプロジェクトに参加した際に、タスクランナーを見れば何をやれば良いのかだいたい分かるようになっているのが理想的だと思っています。 タスクランナーという言葉は主にJS界隈で使われており、そもそもタスクランナーなのかビルドツールなのかという話はありますが、ここでは便宜上それらをひっくるめてタスクランナーと呼ぶことにします。 gulp も本質的にはビルドツールですし。 Goの開発においては、タスクランナーとして、古き良きビルドツールであるところの make が主に使われます。 make も使って

                                • Goでサーバー開発するときのMakefileを晒してみる - Qiita

                                  はじめに この記事は、Go3 Advent Calendar の4日目の記事です。 Goで開発する際にはテストの実行やlintの実施といった細々としたコマンドを Makefile にまとめることが多いと思います。 これにはコマンド入力の手間を省くのももちろんですが、チーム内でコマンド実行の方法を統一するという意味もあります。「手元でのテストはReadmeに書いてある通りに実行してね」と伝えるよりも、Makefileにまとまってる方が親切です。 ということで、何番煎じか分かりませんが今回は業務で使っている Makefile を晒してみたいと思います。 ちなみに主に以下のツールを利用しています。 パッケージ管理: dep 自動リロード: realize DB migration管理: goose setup: go get -u github.com/golang/dep/cmd/dep go

                                    Goでサーバー開発するときのMakefileを晒してみる - Qiita
                                  • - 自動化のためのGNU Make入門講座 - Makefileの基本:ルール

                                    ここでは,メイクファイルの基本的な書き方としてルールの説明をしましょう.ここからは,Makefileといえばmakeが参照するメイクファイルのことを指すものとします. コメントと改行 その前に少しコメントの書き方について解説しておきます.Makefileでは,#から行末までがコメントです.例えば, # # Hello Worldを出力する # all: @echo Hello World! のように使います. また,makeは基本的に行指向です.見やすくするために改行したい場合はバックスラッシュ\を使って改行を無視させることができます.例えば,マクロの定義(後述)で object_files = \ foo.o \ bar.o \ baz.o と書けば,makeは改行を無視して次のように解釈します. object_files = foo.o bar.o baz.o ここで注意することは,f

                                    • Makefileで遊ぼう 〜 階乗, フィボナッチ数, Brainfuck処理系まで - プログラムモグモグ

                                      しばしば見落とされがちですが, Makefileは立派な(=チューリング完全な)プログラミング言語です. GNU Make, 3rd Edition([1], 以降make本と記します)をパラパラしながら読み終わりました. 最後の最後で, Makefileの中で「数字の計算をする方法」が書いてあり, あ, こりゃ, 僕がやるしか無いな, と思ってこのエントリーを書きました. GNU Make 第3版 作者:Robert Mecklenburg発売日: 2005/12/01メディア: 大型本 基本事項 Makefileの基本事項です. と言っても, 暗黙のルールとかマニアックな特殊ターゲットとかは今の僕にはあまり興味が無いです. まず, Makefileをビシビシ書くにあたって, デバッグのために簡単に出力する方法を知って置かなければなりません. warning関数を使います. make本1

                                        Makefileで遊ぼう 〜 階乗, フィボナッチ数, Brainfuck処理系まで - プログラムモグモグ
                                      • Makefile の書き方 (C 言語) — WTOPIA v1.0 documentation

                                        makeってなに?¶ ソースファイルを分割して大規模なプログラムを作成していると, コマンドでコンパイルするのが面倒である. また, 一部のソースファイルを書き換えだけなのに全部をコンパイルし直すのは時間の無駄である. そんな問題を解決するのが make である. Makefile と呼ばれるテキストファイルに必要なファイルと各ファイルのコンパイルのコマンド, ファイル間の依存関係を記す. そして, “make” というコマンドを実行するだけで, 自動的にコマンドを実行してコンパイルしてくれる. これだけではスクリプトと大差がないのだが, make は Makefile に記された依存関係に基づいて更新されたファイルの内関連のあるものだけを更新することで, コンパイル時間を短くする. make は特定のプログラミング言語に依存したものではない. C 言語のソースファイルのコンパイルにも使え

                                        • 味玉のレシピをMakefileで記述する - 私が歌川です

                                          最近よく味玉を作っているのだけど、ジップロックに日付を記入し忘れたり、ボウルに水を入れてから氷を入れようとしたりしていて、手順の依存関係を意識しないとめちゃくちゃになる。 Makefileは依存関係と成果物を記述できるので、レシピをMakefileの形で書いたらおもしろいのでは、と思ったけど記述量が多い気がする。 .PHONY: お湯を湧かす 卵を茹でる 8分待つ ボウルに氷を入れる ボウルに水を入れる ボウルに卵を入れる 卵の殻を剥く ジップロックに日付を書く ジップロックにめんつゆを入れる ジップロックに卵を入れる 一晩寝かせる 味玉 お湯を湧かす: @echo お湯を湧かします 卵を茹でる: お湯を湧かす @echo 卵を茹でます 8分待つ: 卵を茹でる @echo 8分待ちます ボウルに氷を入れる: 8分待つ @echo ボウルに氷を入れます ボウルに水を入れる: ボウルに氷を入れ

                                            味玉のレシピをMakefileで記述する - 私が歌川です
                                          • Makefile.PLを書こう

                                            今日で株式会社ソフリットが設立されて1年です。また「会社を作って1年たったまとめ」を書こうかとも思ったんですが、あんまり面白くならなかったので、今年覚えたことのうちでいちばん重要そうなことをまとめようと思います。それは「Makefile.PLを書こう」ということ。 ではさっそく、これからHoge.pmというperlモジュールを書くとしましょう。 [danjou@guido] $ mkdir Hoge [danjou@guido] $ cd Hoge ここでおもむろにMakefile.PLを書き始めます。 [danjou@guido] $ vim Makefile.PL use inc::Module::Install; WriteAll; とりあえずこれだけ書いて保存します。そしてperl Makefile.PLとして実行します。 [danjou@guido] $ perl Makefil

                                            • Makefile は簡潔に書きましょう - pyopyopyo - Linuxとかプログラミングの覚え書き -

                                              仕組みが判ってしまえば Makefile は簡潔に書けます.$(CC) とか $@ とか $< なんて変数は使ったら負けです. 基本(その1) ソースコード hoge.c から 実行形式のバイナリ hoge を生成するMakefileは,以下のように書きましょう all: hogeこれだけです.これで $ make all とすると hoge が生成されます 重要な点は,間違っても all: hoge hoge: hoge.c $(CC) hoge.c -o hogeのようなMakefileを書かないことです.このようなMakefileでは #!/bin/sh CC=gcc $CC hoge.c -o hoge というようなシェルスクリプトと同程度の使い勝手しかありません. 基本(その2) ここで例えば-O3 を付けてコンパイルしたい場合や,-lm を付けてリンクしたい場合は以下のようにし

                                                Makefile は簡潔に書きましょう - pyopyopyo - Linuxとかプログラミングの覚え書き -
                                              • シェルスクリプトとMakefileの使い分け - ククログ(2012-10-24)

                                                先日紹介したシェルスクリプトで「ビルドスクリプト」を作る時に便利なテクニックへのコメントとして「なぜMakefileでやらないのか」「Makefileの方がいいのではないか」といったものがありました。確かにmakeはメジャーなビルドツールなので、そのような疑問が出てくるのも当然でしょう。 なぜシェルスクリプトなのかということの理由はいくつかあります。 1つは、先のエントリの題材としたスクリプトが元々はWindows用のバッチファイルをLinuxのシェルスクリプトに移植したものだったからという理由です。Windowsのバッチファイルのベタ移植として作成したシェルスクリプトを継続的にメンテナンスしてきた間の改良の結果として、いくつかのテクニックが盛り込まれるようになったため、そのテクニックにスポットを当てて紹介しようというのが、先のエントリの発端でした。 もう1つは、シェルスクリプトは「シェル

                                                  シェルスクリプトとMakefileの使い分け - ククログ(2012-10-24)
                                                • 最近のGoプロジェクトのMakefile - 詩と創作・思索のひろば

                                                  最近は仕事でも新しくGoのプロジェクトをイチからはじめることが増えてきて、コピペ元が欲しくなるので、スナップショットとして残しておきます。とくに Go でウェブアプリケーションを書くような場合を想定していて、npm エコシステムにも乗っていきます。 大まかな方針としては、 self-contained である グローバルな環境を汚染しない コマンド一発で開発環境が再現できる ……というところを目指します。 motemen/prchecklist がこれを達成しているつもりなので、以下、これを例に見ていきます。 依存ライブラリは dep なり何かしらのツールと Go 標準の vendoring で管理すればよい一方、そのツール自体であったり、他の開発中に必要なツール(golint とか gobump とか)であったりのインストールをどうするかという話。 npm であれば devDepende

                                                    最近のGoプロジェクトのMakefile - 詩と創作・思索のひろば
                                                  • docker-composeを詠唱する黒魔術「Makefile」入門 - Qiita

                                                    はじめに dockerの研修をやってた時に、「うーん、docker-composeって毎回打つのめんどくさい。なにかいい方法ないかな~」で見つけたMakefileを紹介したいと思います。 Makefileとは? Makeというプログラムのビルド作業を自動化するツールのルールを記述したテキストファイルのことです。 魔導書(Makefile)の作成 Makefileという名前のファイルを作成して以下の内容を保存します。 .PHONY: setup up d b ps node setup: @make up @make ps d: docker compose down up: docker compose up -d ps: docker compose ps node: docker compose exec node bash makefileの中身ですが .PHONYを記載しないとコマ

                                                      docker-composeを詠唱する黒魔術「Makefile」入門 - Qiita
                                                    • Makefileの書き方、その勘どころ - 檜山正幸のキマイラ飼育記 (はてなBlog)

                                                      「ほとんど忘れた、Makefile」 にて: Makefileなんてもう何年も書いたことがないぞ。ウーン、だめだ、忘れている。 「忘れている」ってよりは、僕の知識じゃ古すぎて、改めて勉強しないとダメでした*1。 なにしろ、makeだけじゃ機能が貧弱なんで、cpp(Cプリプロセッサ)やm4(マクロプロセッサ)と組み合わせて使っていた頃しか知らんからね(古すぎ!)。今じゃGNU Makeを(使おうと思えば)どこでも使えるから、GNU Makeを習えばそれでいいじゃないかな。僕は、Windows上のMSYS(MinGW - Minimal SYStem)でGNU Makeを動かしました。 というわけで、GNU Makeの手習いをしたからメモしておきます。以下、名前がMakefileじゃなくても、GNU Makeへの指示を書いたファイルは何でもMakefileと呼びます。 [追記]id:paell

                                                        Makefileの書き方、その勘どころ - 檜山正幸のキマイラ飼育記 (はてなBlog)
                                                      • VOYAGE GROUP エンジニアブログ : 超便利!Makefileを作ってmakeするのは想像よりもずっと簡単だった

                                                        2012年06月06日14:38 カテゴリprogramming 超便利!Makefileを作ってmakeするのは想像よりもずっと簡単だった VOYAGE GROUP の初級シェルスクリプター @katzchang です。おはこんばんちわ。 最近、 make 、 Makefile をゴリゴリ使い出しているところなので、それについて今日はちょっと書いてみることにします。 さて、プロフェッショナルな技術者たる皆さんであれば、一生に何度かは「ディレクトリをカレントに入れてメイク、ディレクトリをカレントに入れてメイク…」というご経験があろうことかと思います。 make のイメージといえば: C言語で書かれたアレをコンパイルする、よくある手順 もしかしてC++かもしれないけど大勢に無影響 たまに失敗するけどあれマジなんなの困る というアンケート結果がでています(2012 俺調べ)。 そんな make

                                                        • makefileを廃絶してgruntを使う

                                                          JavaScriptを使った開発で必要となるconcat, minify, lint, test といったタスクを動かすのに使うツール、最近はgruntをよく見かけるのでオレオレmakefileから移行してみた。 既存のmakefileは以下の通り。makefile + makeターゲットから呼び出される各種タスクに対応した処理を行なうプログラムという構成。make minifyと打てば圧縮版のファイルを生成、make testと打てばテストが実行される寸法だ、圧縮にはuglify.js, lintにはjshint、全てnodeモジュールを使っているのでそのまま移行できるはず。concatにはmuというテンプレートエンジンを使っていた。 makefileからの移行 まず、gruntの制御に必要なgrunt.jsファイルは grunt init:gruntfile して生成する。concat

                                                            makefileを廃絶してgruntを使う
                                                          • 『よみがえるMakefile』という祈り、もしくはJuly Tech Festa 2021 登壇感想 - じゃあ、おうちで学べる

                                                            概要 7月18日に July Tech Festa 2021 が開催されて『よみがえるMakefile』 というタイトルで15:20 から登壇した。今さら聞けないIT技術 というお題だったので今さら聞けないけど… みたいなものが議論の種になればとお題をMakefileに決めました。 docs.google.com connpass はこちら techfesta.connpass.com 文章として大きく離散してるので雑多なまとめになります。 タイムアポン 完全に終わっていて一連のスライドからGo言語のMakefileを育てていくエピソードを登壇資料から抹消した。 正直、資料の中にあったものをシュッとMakefileに落とし込むだけなので特定の言語やツールに依存するかな?と思って排除してしまいました。 何故か、40分だと思ってたので20分資料に再編集した。— nwiizo (@nwiizo)

                                                              『よみがえるMakefile』という祈り、もしくはJuly Tech Festa 2021 登壇感想 - じゃあ、おうちで学べる
                                                            • ちょっとMakefileくん! .envに書いた環境変数読んで!!!!!なんで読んでくれないの!?

                                                              あらすじ 「メ、Makefileちゃん!変数引き継いでよ!」 「うるさいですね……」make,make って感じで、Makefileと同じディレクトリ上にある.envファイルから、Makefileに環境変数を引き継ぐのが全然できなくて無限に時間を使ってしまった!!悔しいからメモにしちゃう。も〜最悪!

                                                                ちょっとMakefileくん! .envに書いた環境変数読んで!!!!!なんで読んでくれないの!?
                                                              • LinuxカーネルのMakefileを解析する その6

                                                                に注目します。これが、これから降りていこうとするトップ階層のディレクトリ達です。 さらに700行目付近に以下のように書いてあります。 core-y        += kernel/ mm/ fs/ ipc/ security/ crypto/ block/ vmlinux-dirs    := $(patsubst %/,%,$(filter %/, $(init-y) $(init-m) \ $(core-y) $(core-m) $(drivers-y) $(drivers-m) \ $(net-y) $(net-m) $(libs-y) $(libs-m))) vmlinux-alldirs    := $(sort $(vmlinux-dirs) $(patsubst %/,%,$(filter %/, \ $(init-n) $(init-) \ $(core-n) $(cor

                                                                • MakefileでDocker+Jupyter Notebookなどの機械学習環境をスマートに扱う - CC56

                                                                  先日機械学習界隈の方とDockerの話をした際、Makefileを使って機械学習環境の整備をしている人は実は少数派なんじゃないかと感じました。 機械学習で使うコマンドは引数が長く、とても覚えられるものじゃありません。暗記できていてもミスタイプしたり、tmux内とかだと折り返されて何書いてるかよくわからなくなりがち 。Ctrl+Rとかで検索かけようとしても大体はdocker...から始まるのでタイプ数多くなりがち。 Makefile は、Docker のコマンドをいい感じにまとめやすく、jupyter notebook に使う長ったらしいコマンド jupyter notebook --port 8888 --ip="0.0.0.0" --allow-root なども簡略化できます。そういうわけで、全体的な生産性の向上に繋がると信じています。 今回紹介する Makefile は Docker

                                                                    MakefileでDocker+Jupyter Notebookなどの機械学習環境をスマートに扱う - CC56
                                                                  • LinuxカーネルのMakefileを解析する その2

                                                                    前回は、LinuxのトップのMakefile の一番外のネスト ifeq ($(skip-makefile),) について説明しました。 その内部にさらにわかりにくい部分があります。 トップのMakefile の400行目付近からは以下のようなコードになっています。

                                                                    • Makefileの関数 - Qiita

                                                                      自分用にずっとまとめようと思って、下書き保存して温めていたMakefile関連です。 C++用のビルドからAndroid用のビルドまでMakefileを大活用しているが、 使う機会が少ないのでMakefileの関数はどうも慣れない&上手く活用できない。 そして毎回調べる。 ということで、 実用的なものから、今後使うことはないだろう的なものまで、 リファクタをする時のために調べた結果をまとめておきたい。 英語が読めない自分が英語のドキュメントを読んだりして、 自分なりの解釈でまとめたので誤りがありましたらごめんなさい。 一応、ドキュメントを見ながら全部載せしたつもり。 http://www.gnu.org/software/make/manual/ ちなみに、makeのバージョンは、

                                                                        Makefileの関数 - Qiita
                                                                      • Makefileの書き方:プログラミング言語Make - 檜山正幸のキマイラ飼育記 (はてなBlog)

                                                                        「Makefileの書き方、その勘どころ」にて: まだ、関数を使ってソースやターゲットを生成する方法とかパターン規則の説明をしてないので、続きを書くと思います。調べているうちに、GNU Makeの構文(の一部)はある種のプログラミング言語だという気がしてきました;そのことも書きたい気がしてます。 というわけで続きを書きます。 実は、関数呼び出しを使うときは、代入に「=」を使うより「:=」のほうが適切かつ効率的なときが多いのですが、その話は次の機会にします。 これの説明が中心になります。 内容: 前置き 変数の種類と変数定義 ソースコードの後のほうを参照すること Makeは上から下へと実行していくのだ MakeとLispは似ている 実例 ●前置き 以下、Make一般ではなくてGNU Makeの話です。GNU Makeより古いMakeにも備わっていた伝統的機能の説明はしません。 GNU Mak

                                                                          Makefileの書き方:プログラミング言語Make - 檜山正幸のキマイラ飼育記 (はてなBlog)
                                                                        • Using Makefile(s) for Go — Danish Prakash

                                                                          Upon receiving suggestions from readers via Email, Hacker News and Reddit, I’ve updated the article with improvements and fixes. Subsequently a word of thanks to the readers for the suggestions. We’ve been using make as a build tool for one of our projects at HackerRank which is written in Go and it has been working out fairly well. In this post, I’ll point out a few features and intricacies of GN

                                                                          • 手元で Dockerfile から docker イメージを作る時に使っている Makefile の書き方 - nabeo がピーしているブログ (仮)

                                                                            手元環境で Dockerfile から docker イメージを作る時はいちいち docker build コマンドを直接実行するのはダルいのでラッパースクリプトなどで実行するようにしています。 管理している Dockerfile や docker イメージの種類が多くなってくると素朴なラッパースクリプトでは作成したい docker イメージを狙い撃ちで生成するにはラッパースクリプトで一工夫が必要になります。これだとラッパースクリプトが必要以上に多機能になってしまい、作業の本質以外に気を取られてしまいます。 古くから使われている GNU make を使えば、Dockefile から docker イメージを作成するルールをいい感じに作れたので、作り方のメモを書いておきます。 まず、Makefile のルールの書き方は 生成物(ターゲット名): 生成元のリスト といった感じに書いていきます。

                                                                              手元で Dockerfile から docker イメージを作る時に使っている Makefile の書き方 - nabeo がピーしているブログ (仮)
                                                                            • Make と Makefile の説明

                                                                              まだ完成途中です back 注意: このページの内容には、おそらく多くの間違いがあります。 リンクされているので残しておきますが、利用には注意してください。(2008年3月、新山) ここではおもに make の使い方 と Makefile の書き方について 説明しています。じつは make の種類にはいろいろあり、ここでは GNU make (gmake というコマンド名のこともある) を 対象にしています (BSD の pmake でも基本的な部分は同じですが、 マクロ定義などは違うところもあるので注意してください)。 わかりにくい箇所とか、まちがってる箇所がある場合はメールください。 Contents make はどんなときに使うか Makefile を作る make の実行 Makefile の文法リファレンス 多段 make について (未完成) Makefile の例 (未完成)

                                                                              • SCons/Makefileを書くのに疲れた人のためのSCons - S.T.K Wiki

                                                                                SCons SConsはmakeやAntのように数多くあるビルドツールのうち一つであり、Pythonで書かれている。 ビルド設定のファイルをPythonで記述することができ、またSCons自身が依存関係解析の機能を持っているため、 makeと比べるとずっと簡単にビルド環境を構築することができる。 Hello, World的なもの 以下のような簡単なCプログラムをSConsでビルドしてみる。 hello.c 1 #include <stdio.h> 2 int main (int argc, char *argv[]) { 3 printf("Hello, World!\n"); 4 return 0; 5 } 6

                                                                                • Makefileをいろいろ書き換えながらビルドしてみよう

                                                                                  今回は、ビルド作業に必要な「make」というコマンドの使い方と、makeコマンドが実際にしている処理の内容を解説します(編集部) 暗黙のルールを理解する 前回はmakeの簡単な使い方を説明しました。たった1行の設定ファイルを用意すれば、makeコマンドだけでビルドできるようになったわけですが、今回はその仕組みを明らかにしていきます。ただ、本連載の趣旨はソフトウェア開発ではありませんので、Makefileの書き方ということではなく、ビルドに必要なmakeの制御方法という側面から解説します。 さて、まずは前回使用したMakefileをもう一度見てみましょう。 このコロンで区切る書式は、Makefileを書くときに最初に覚えてほしい基礎的なところです。コロンの前の部分をターゲットといいます。コロンの後の部分は、ターゲットを作るのに必要なファイルを示しています。この例では、最終的な実行形式ファイル

                                                                                    Makefileをいろいろ書き換えながらビルドしてみよう