Using Webpack from the command line, but without a project file?
Not that I am aware.  Another approach is to use a script instead of a makefile.  The script can then create the project file so you do not to manually edit multiple files.

You can use TCL to drive the ISE tools.  The ISE tools will generate example code for you.  More information on using TCL can be found here, http://devbisme.webfactional.com/blogs/devbisme/2012/04/03/running-weeds

If you want a Python option for building Xilinx ISE projects, see Guenter Dannoritzer's Python scripts, which generate the underling tcl, but the OO interface in Python is better than generating tcl directly, http://www.myhdl.org/doku.php/projects:ise_py.  I have made some updates to the scripts here, https://bitbucket.org/cfelton/examples/src/tip/tools  

An example, you can quickly and as easily create an ISE project.  

# set up pin configuration for the FPGA
fpga = Fpga(path=ppath)
fpga.setPin('clk', 'P124')
fpga.setPin('srst', 'P8')
fpga.setPin('led&lt;0&gt;', 'P92')
fpga.setPin('led&lt;1&gt;', 'P93')
fpga.setPin('led&lt;2&gt;', 'P95')
fpga.setPin('led&lt;3&gt;', 'P96')
fpga.setPin('led&lt;4&gt;', 'P97')
fpga.setPin('led&lt;5&gt;', 'P98')
fpga.setPin('led&lt;6&gt;', 'P99')
fpga.setPin('led&lt;7&gt;', 'P100')
fpga.setDevice('spartan3', 'xc3s400', 'tq144', '-5')

imp = Xilinx(ppath, 'stroby')

imp.setFpga(fpga)
imp.addHdl((vfile))
imp.createTcl() 
imp.run()