A build tool for Erlang that just works Embrace the power and simplicity of Makefiles. PROJECT = webchat DEPS = cowboy include erlang.mk Get started Tested and supported on
https://github.com/google/kati kati について、ドキュメント書こう…と思っていたのですがなかなか進まないので、とりあえず日本語で書いてみることにしました。何書くかがあまり明確じゃないテーマなので、何書くか考えるのと英語考えるのを両方同時にやるのが少し大変で。 動機 kati は GNU make のクローンです。いずれ完全なコンパチになると嬉しいですが、なかなか難しいだろうと個人的には諦めています。用途に対して実用的ならば良いかなと。 動機としては、 Android platform のビルドシステムが、なかなかシュールな GNU make 黒魔術で構成されていて、 make が実際になんかしはじめるまでが遅かったので、そこを高速化したいというものでした。 ビルドシステムが遅いという時、まずだいたいヌルビルドとフルビルドの2点を考えます。ヌルビルドてのは生
This project attempts to clarify the relative power of various build systems. Compared to the Computer Language Shootout, this Shootout attempts to answer whether a build system is capable of expressing a particular dependency structure, but does not measure performance. The following build systems have at least one entry: Make (GNU version), cross-platform. Ninja, cross-platform. Shake, cross-pla
A toolkit to automate & enhance your workflowLeverage gulp and the flexibility of JavaScript to automate slow, repetitive workflows and compose them into efficient build pipelines. TypeScriptDevelop in any languagePNGCreate assets with any toolMarkdownWrite using any formatJavaScriptGet compiled codeWebPGet optimized imagesHTMLGet rendered content
GNU Make 4.0 released GNU Make 4.0がリリースされた。 今回のリリースでは、GNU MakeはSchemeの実装であるGNU Guileを組み込んだ。これにより、Makefileの中でSchemeが書けるようになる。 その機能は、GNU Make ManualのGuile Functionの項目で説明されている。まだ、オンライン版のGNU Make Manualが2010年から更新されていないので、コミット時のドキュメントの差分のリンクする。 8.13 The `guile' Function 具体的な組み込み方法としては、make側にguileという関数が追加され、この引数に文字列を与えると、SchemeとしてGuileで処理されるようになる。おそらく、このように。 Hello.o : $(guile (string-append "hello" ".c"
C++の参考書も書かなければならないのだが、今、GNUのAutotoolsについて学んでいる。そもそも、何故必要なのか(なぜ手でMakefileを書かないのか)というところから調べている。 GNU Autoconf, Automake and Libtool Autotools: a practitioner's guide to Autoconf, Automake and Libtool GNU coding standards - GNU Project - Free Software Foundation (FSF) 今のところの背景事情の理解としては、以下のようなものではないかと思う。 はじめに、makeがあった。makeをとりあえず使うのは簡単だが、すこし高度なことをしようとすると、とたんに難しくなる。そのため、既存のよく書かれたものがプロジェクトからプロジェクトへと流用されて
August 2011 (1) July 2011 (1) June 2011 (2) April 2011 (2) March 2011 (2) February 2011 (2) January 2011 (6) December 2010 (6) November 2010 (5) October 2010 (8) September 2010 (2) August 2010 (3) July 2010 (9) June 2010 (4) March 2010 (1) February 2010 (7) January 2010 (2) はじめに C/C++とmake使ったプロジェクトのビルド時間短縮について書いてみます。 対象となるのは、 大規模プロジェクトに関わっていて、ビルド時間長すぎ… 少人数だけど、大きなパッケージが絡んでいて、ビルド時間長すぎ… なプロジェクトに関わってい
http://github.com/tokuhirom/p5-module-install-forc Module::Install のアーキテクチャを利用した configure/SCons 等のサブセットをつくりました。 記法は SCons を参考にしており、Rake のような黒魔術的でとっつきにくい記法ではなく、シンプルでわかりやすい記法になっています(もちろん主観ですが、Rake の記法は Rake を知らない人にとって非常にとっつきにくく、見通しがわるいというのが個人的見解です。慣れても見通しがいいとはおもいませんが。。。)。 Perl Monger がちょっとした C のコードを書くときに便利なのではないかとおもいます。Module::Install をつかってるので inc/ もいっしょに配布すれば、perl5.8.0 以上さえあればうごくということになります。便利です。 最
Welcome to the Phing Project Website PHing Is Not GNU make; it's a project build system based on Apache Ant. You can do anything with it that you could do with a traditional build system like GNU make, and its use of simple XML build files and extensible PHP "task" classes make it an easy-to-use and highly flexible build framework. Features include file transformations (e.g. token replacement, XSL
http://frepan.org/~tokuhirom/Daiku-0.01/ Rake みたいなの、Perl にも欲しいね、って5年ぐらい前からおもってたけどいいのができたって噂をきかないので自分でかいた。 #! perl use Daiku; use autodie ':all'; task 'all' => 'foo'; file 'foo' => 'foo.o' => sub { system "gcc -c foo foo.o"; }; rule '.o' => '.c' => sub { system "gcc -c foo.o foo.c"; }; build shift @ARGV || 'all'; こういうかんじでつかえる。簡単でしょ。 以下設計のメモ。 基本的には Rake とインターフェイスをあわせめでつくってる。巨人の肩に云々。 DSL を DSL としてゴリゴ
CMakeは、コンパイラに依存しないビルド自動化のためのフリーソフトウェアであり、様々なオペレーティングシステムで動作させることができる。CMakeは階層化ディレクトリや複数のライブラリを利用するアプリケーションをサポートするよう設計されている。実際のビルドにおいては、make、Xcode、Visual Studioのようなネイティブのビルド環境が利用される。CMake自身は最小限の依存関係を持つよう設計されており、ビルドするにはC++コンパイラのみを必要とする[3]。 歴史[編集] CMakeは1999年に開発が始まった。その目的はInsight Segmentation and Registration Toolkit (ITK) のクロスプラットフォームなビルド環境の要求に答えるためのものだった[4]。このプロジェクトは可視化人間プロジェクト(英語: Visible Human Pr
ruby code require 'crxmake' # create crx CrxMake.make( :ex_dir => "./src", :pkey => "./test.pem", :crx_output => "./package/test.crx", :verbose => true, :ignorefile => /\.swp/, :ignoredir => /\.(?:svn|git|cvs)/ ) # create zip for Google Extension Gallery CrxMake.zip( :ex_dir => "./src", :pkey => "./test.pem", :zip_output => "./package/test.zip", :verbose => true, :ignorefile => /\.swp/, :ignoredir
id:nushioさんの日記(id:nushio:20071201)経由。 Eclipseではコードを書くと随時文法チェックが行われ、エラーのある行がエディタ上に表示される。Eclipseの便利な機能はたくさんあるけど、中でもこの機能はかなり強力で、いままでJavaのコードを書くときはこのためだけにEclipseを使っていたようなもの。 で、これをEmacs上でやってしまうのがflymake。id:nushioさんの記事で初めて知って、さっそく設定してみたのだけど、これは手放せそうにない。いままでどうやってEmacsでプログラムを書いてたんだか分からなくなってきてしまった。 というわけで、布教のために簡単な説明を。 とりあえず使ってみる flymake.elはEmacs22以降では標準で付属しているらしい。場所はlisp/progmodes/flymake.el。Emacs21以前の場合は
GulfweedさんのTopCoderのエントリに従ってプラグインを入れると自分の好きなエディタでTopCoderに参加することができます。それに加えて,Emacsでflymakeを使えばエラーに気付きやすくなります。(結局何を.emacsに書けばいいのかは追記を見てください) 上のスクリーンショットではint型とunsignedなものを比較してるのでwarningがでてますね. flymakeはカレントディレクトリの中にあるMakefileを実行してエラーを教えてくれます。最初のほうでMakefileを使う方法を紹介し、その下の追記でMakefileを使わない方法を紹介しまてます。 .emacs.el ;; Flymake (require 'flymake) ;; ;; C++ ;; ;; http://d.hatena.ne.jp/pyopyopyo/20070715/ (add-h
野良ビルドしたプログラムの管理どーしよーとか思ってもやもやと日々を過ごしてきたんですが、最近 checkinstall といういけてるツールがあることを知りました。 野良ビルドでは ./configure && make && make install というよくあるコマンドのコンボでビルド&インストールを行うわけですが、最後の make install を置きかえて、dpkg やら rpm やらで管理できるようよしなに図らってくれるのが checkinstall です。 基本的な使い方 checkinstall は、インストールコマンド(make install)を実行するときの共有ライブラリをのっとることで、ファイルシステムへの変更を検知して、それに応じて deb や rpm パッケージを作成、 dpkg などでインストールということをやってくれます。 なので、すごく単純なケースでは、
OMakeすごい。OMakeはマジですごい。 OMakeはGNU makeの代替品みたいなものなんだけど、正直なところこのツールの強力さはGNU makeと比べると失礼なくらいすごい。これのおかげで、「コード修正→ビルド→デバッグ→コード修正→・・・」のループの、ビルドにあたる作業がほぼ消え去った。 ファイルの依存関係の解析がとにかくすごい。よくあるユースケースなんかの場合、最小限の手間でほぼ完璧に依存関係を網羅して、よしなにビルドしてくれる。 とりあえず、はやみずが実際に使ってみたケースを例にとってそのすごさの一端を紹介しようと思う。 case study 論より証拠ということで、自分が OMake を試しにつかってみたケースを紹介する。C言語でスタティックライブラリを作っていて、それに加えて簡単なテストプログラムを書いている。 /include/ 以下にヘッダファイルが全部ある /sr
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く