問題タブ [m4]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
m4 - m4マクロファイルに含まれるifdefガードをどのように実行できますか?
Cヘッダーファイルの場合、次のようなヘッダーファイルが複数含まれるのを防ぐことができます。
include()
同じファイルへの複数のマクロ呼び出しによってコンテンツが1回だけ含まれるように、m4で同じことを行うにはどうすればよいですか?
具体的には、マクロの使用を伴うifdefガードを実行したいと思います(コードを'schangequote
で乱雑にしないでください)。dnl
もともと、私が次のことをしたとき、複数の包含はまだ引用符を破壊します:
changequote_file.m4:
changequote_invocation.m4:
m4 changequote_invocation.m4
利回りで呼び出されます:
javadoc - GNU M4 言語用の Doxygen
Doxygen などで GNU M4 マクロを文書化することは可能ですか?
マクロの大きなコレクションがあり、それらをコメントで文書化し、そこから文書を生成したいと考えています (Doxygen、JavaDoc などと同様)。
ありがとう!
css - M4 評価精度
M4 マクロを使用して css ファイルを生成しようとしています。値を px で入力し、eval() を使用して簡単な計算を行って em で結果を取得します。残念ながら、フロートを取得する方法が見つかりませんでした。
何か案は?
ありがとう!
android - Android NDK と .m4
ファイル .m4 を含むファイル フォルダーを持つ OpenSource Linux ライブラリがあります。このライブラリを Android NDK に移植したいと考えています。質問: これらをコンパイルする方法。m4? つまり、Android.mk の書き方は?
xcode - aclocal/autoconf は、Mac OS X で m4sugar.m4 が見つからないことを報告しますか?
Xcode 3.2 を /Xcode3.2 にインストールしましたが、/Developer には何もインストールしませんでした。開発をしたいときは、次のようにシェルを起動します
どこXCODE
とです. /Xcode3.2
_ これにより、プロジェクトをビルドしようとする際の奇妙な点のほとんどが処理されます。ただし、最近、再実行したい場合に遭遇し、次のエラーが発生しました。SDK_ROOT
${XCODE}/SDKs/MacOSX10.6.sdk
aclocal
代替を指すように-I
フラグを指定すると、役に立たないようです。を使用し、を指すフラグを追加して手動でリストされているコマンドを再実行すると、それは機能しますが、 からパイプすることはできません。さらに、提案するページでパスを追加できる環境変数は、違いを生むようには見えません。(そして、環境変数を設定するのが私の好みの設定です。これは、上記のエイリアスに追加できるようにするためです。)aclocal
/Xcode3.2/usr/share/aclocal-1.10
/Xcode3.2/usr/share/aclocal
--verbose
m4
-I
/Xcode3.2/usr/share/autoconf
aclocal
M4PATH
man
m4
/usr/share/autoconf
これまでのところ、からへのシンボリックリンクを作成する「汚い」手順以外の解決策は思いつきませんでした/Xcode3.2/usr/share/autoconf
。他に良い方法はありますか?
注: 開発者ツールと OS のインストールをこのように明確に区別する理由は、信頼性の高いクロス OS コンパイルを提供するためです (たとえば、ある Xcode バージョンのツールが別の Xcode バージョンのビルド動作に影響を与えないようにするためです)。
m4 - m4の文字列の最後の文字を切り刻む方法
m4の文字列の最後の文字を削除するためのマクロを作成しようとしていますが、次のようなことをしようとしています。
これは最も仕事に近いものですが、それでも私はそれを適切に達成することができません。今、助けが必要です。
macros - マクロがマクロに続く文字列と同じ文字で終わる場合、m4 がマクロを参照するようにする
M4 を使用して一部のファイルを展開するシステムに取り組んでいますが、場合によっては展開で問題が発生します。定義/マクロの命名規則 (可能であれば変更したくない) は__<name>__
(つまり、先頭と末尾のアンダースコアが 2 つある) ため、これは正しく展開されます。
与える
しかし、
与えるべき:
しかし与える
(つまり、展開を逃した)
マクロの末尾のアンダースコアと、その下にあるテキストの有効なアンダースコアの間にスペースがないことが、m4 を混乱させていると思います。これについて私にできることはありますか?たとえば、環境変数のように、マクロをサイレントブレースで区切ることはできますか?
php - html でマクロ定義を実装するアプローチ
私は次のようなことをするのが素晴らしいでしょう
そしてそれを使用します:
マクロは本当に大きなアドバンテージだと思います。
回避策は、m4 のようなマクロ プロセッサを使用するか、php を使用してマクロの効果をシミュレートすることです。他に考慮すべきテクニックはありますか?
c - m4はローカル変数を解析しません
m4マクロに問題があります。マクロは
そして私の.Cファイルに私は持っています
BARRIER(Global->start, P, MyNum)
ここでGlobal->start
、とP
はグローバル変数であり、MyNumはローカル変数です。
しかし、私が実行すると
出力ファイルには次のようなものがあります。
私のマクロに何か問題がありますか、それとも単なる制限ですか?
前もって感謝します。
php - PHP拡張機能を構築するためのソースを追加する
テストクラスを提供するテストphp拡張機能を作成したいと思います。クラス宣言を別のCファイルに抽出し、myext.cファイルのモジュールinit関数からクラス登録を呼び出したい。私は次のファイルを持っています:
これで、config.m4ファイルは非常に単純になりました。
test_class.cを拡張機能の構築に追加できるようにconfig.m4を構成するにはどうすればよいですか?
アップデート:
特定のフォルダー内の.cファイルを検索し、拡張機能の構築に自動的に追加するようにconfig.m4を構成するにはどうすればよいですか?