You’re doing it all wrong. You do not name source files as make targets, but
the target name (or project name, I have no idea, because it rarely makes sense
to name them differently). Try simply “foo” or “custom-command-target”. You
would never say “make foo.cpp”, not even in an ordinary GNU Make script.
Feladó: Dave Yost
Elküldve: péntek, 2015. június 12. 2:00
Címzett: [email protected]
In this example, how do I get
make foo.cc
to work?
0 Thu 16:56:19 yost DaveBook ~/p/c++/cmake/custom-command-target
369 Z% bundle CMakeLists.txt genFoo
#!/usr/bin/env unbundle
# See http://yost.com/computers/bundle/
======== CMakeLists.txt
cmake_minimum_required(VERSION 3.3.0)
project(custom-command-target)
add_custom_command (
OUTPUT foo.cc
COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/genFoo > foo.cc
)
add_executable (foo foo.cc)
======== genFoo
#!/bin/bash
echo "
int main() {
return 0;
}"
========
0 Thu 16:56:23 yost DaveBook ~/p/c++/cmake/custom-command-target
370 Z% cd build
0 Thu 16:56:36 yost DaveBook ~/p/c++/cmake/custom-command-target/build
371 Z% cmake ..
-- Configuring done
-- Generating done
-- Build files have been written to:
/Users/yost/p/c++/cmake/custom-command-target/build
0 Thu 16:56:41 yost DaveBook ~/p/c++/cmake/custom-command-target/build
372 Z% make clean
0 Thu 16:56:45 yost DaveBook ~/p/c++/cmake/custom-command-target/build
373 Z% make foo.cc
make: *** No rule to make target 'foo.cc'. Stop.
2 Thu 16:56:49 yost DaveBook ~/p/c++/cmake/custom-command-target/build
374 Z%--
Powered by www.kitware.com
Please keep messages on-topic and check the CMake FAQ at:
http://www.cmake.org/Wiki/CMake_FAQ
Kitware offers various services to support the CMake community. For more
information on each offering, please visit:
CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html
Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html
Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake