@$(<filename>) notation within a makefile
I’ve to run a makefile (not written by me) that contains the following line:
$(JAVAC) -verbose -classpath $(MY_CLASSPATH) -d $(BUILD_TMP) @$(SOURCE_FILES);
Where SOURCE_FILES is previously defined as: SOURCE_FILES =$(BUILD_DIR)/sourcefiles
"@$(SOURCE_FILES)" doesn't work on my machine. Obviously this notation (when it works!) is evaluated to the file contents (one Java source file per line in my case).
开发者_StackOverflow中文版Is that a notation specific to makefile or is it specific to the underlying shell? I haven't found anything on the subject on the Internet.
Thanks for your help.
It is specific to javac. See the manual page for javac. On mine:
$ man javac|grep -A 2 '@.*list'
@argfiles One or more files that list source files. The -J
options are not allowed in these files.
$ javac -version
javac 1.6.0_26
精彩评论