SConsは、ソフトウェアプロジェクトの説明からソースコードの依存関係とオペレーティングシステムへの適応要件を分析し、ターゲットオペレーティングシステムプラットフォームにインストールするための最終的なバイナリ実行可能ファイルを生成するソフトウェア開発ツールです。その機能は、より広く普及しているGNUビルドシステムに似ています。
このツールは、プロジェクトの設定とビルドロジックのためのPythonスクリプトを生成します。
Perlで書かれたConsソフトウェア構築ユーティリティは、1999年にBob Sidebothamによって作成されました。[ 3 ]これは、2000年8月にSoftware CarpentryプロジェクトのSC Buildコンペティションで優勝したScConsビルドツールのベースとして機能しました。 [ 4 ] ScConsはSConsの基盤となりました。
SCons は、以前はSCons/BKsysとして知られていたWafの作成を促し、KDEコミュニティで登場しました。しばらくの間、KDE 4 以降のビルド ツールとしてこれを使用する計画がありましたが、その取り組みはCMakeに取って代わられ、放棄されました。[ 5 ]
SCons を使用している (または過去に使用していた) 注目すべきプロジェクトには、The Battle for Wesnoth [ 6 ] 、 Battlefield 1942、Doom 3 [ 7 ] 、 gem5 [ 8 ]、gpsd [ 9 ]、GtkRadiant [ 10 ]、Madagascar [ 11 ] 、 Nullsoft Scriptable Install System [ 12 ]、OpenNebula [ 13 ]、VMware、Wolfenstein: Enemy Territory [ 14 ]、XORPおよび MCA2 [ 15 ] 、 openpilot [ 16 ]、Godot [ 17 ]などがあります。
.csigはSConsコンテンツ署名ファイル形式です。
主な機能は以下のとおりです。
以下は、デフォルトのプラットフォームコンパイラを使用して「ハローワールド」 CプログラムをビルドするSConstructファイルです。
プログラム(「hello-world.c」)以下は、2つのソースファイルを含み、ビルドツールオプションを指定するプロジェクトのSConstructファイルです。
env = Environment ( ) env.Append ( CPPFLAGS = [ " - Wall" , " -g" ]) env.Program ( "hello" , [ "hello.c" , "main.c" ]){{citation}}: CS1 maint: 非推奨のアーカイブサービス (リンク)。{{cite web}}: CS1メンテナンス: アーカイブサービスは非推奨になりました (リンク)