* Attempt to fix CMake build on some systems were it could not
  find the rna_*_gen.c files, now it specifies full path.
This commit is contained in:
Brecht Van Lommel
2009-01-15 16:18:32 +00:00
parent 004eacad0c
commit 6e8645a6d1
2 changed files with 8 additions and 65 deletions

View File

@@ -71,52 +71,7 @@ SET(DEFSRC
rna_wm.c
rna_world.c)
SET(GENSRC
rna_action_gen.c
rna_actuator_gen.c
rna_armature_gen.c
rna_brush_gen.c
rna_camera_gen.c
rna_cloth_gen.c
rna_color_gen.c
rna_constraint_gen.c
rna_controller_gen.c
rna_curve_gen.c
rna_fluidsim_gen.c
rna_group_gen.c
rna_ID_gen.c
rna_image_gen.c
rna_ipo_gen.c
rna_key_gen.c
rna_lamp_gen.c
rna_lattice_gen.c
rna_main_gen.c
rna_material_gen.c
rna_mesh_gen.c
rna_meta_gen.c
rna_modifier_gen.c
rna_nodetree_gen.c
rna_object_gen.c
rna_object_force_gen.c
rna_packedfile_gen.c
rna_particle_gen.c
rna_pose_gen.c
rna_property_gen.c
rna_radio_gen.c
rna_rna_gen.c
rna_scene_gen.c
rna_screen_gen.c
rna_scriptlink_gen.c
rna_sensor_gen.c
rna_sequence_gen.c
rna_sound_gen.c
rna_space_gen.c
rna_text_gen.c
rna_texture_gen.c
rna_userdef_gen.c
rna_vfont_gen.c
rna_wm_gen.c
rna_world_gen.c)
STRING(REGEX REPLACE "rna_([a-zA-Z0-9_-]*).c" "${CMAKE_CURRENT_BINARY_DIR}/rna_\\1_gen.c" GENSRC "${DEFSRC}")
SET(SRC
makesrna.c
@@ -135,7 +90,7 @@ TARGET_LINK_LIBRARIES(makesrna bf_dna)
# Output rna_*_gen.c
ADD_CUSTOM_COMMAND(
OUTPUT ${GENSRC}
COMMAND ${CMAKE_BINARY_DIR}/bin/${CMAKE_CFG_INTDIR}/makesrna ${CMAKE_CURRENT_BINARY_DIR}/ ${CMAKE_SOURCE_DIR}/source/blender/makesrna/
COMMAND ${CMAKE_BINARY_DIR}/bin/${CMAKE_CFG_INTDIR}/makesrna ${CMAKE_CURRENT_BINARY_DIR}/
DEPENDS makesrna
)

View File

@@ -962,7 +962,7 @@ RNAProcessItem PROCESS_ITEMS[]= {
{"rna_world.c", RNA_def_world},
{NULL, NULL}};
static void rna_generate(BlenderRNA *brna, char *basedirectory, FILE *f, char *filename)
static void rna_generate(BlenderRNA *brna, FILE *f, char *filename)
{
StructDefRNA *ds;
PropertyDefRNA *dp;
@@ -1014,7 +1014,7 @@ static void make_bad_file(char *file)
fclose(fp);
}
static int rna_preprocess(char *basedirectory, char *outfile)
static int rna_preprocess(char *outfile)
{
BlenderRNA *brna;
StructDefRNA *ds;
@@ -1059,7 +1059,7 @@ static int rna_preprocess(char *basedirectory, char *outfile)
status = 1;
}
else {
rna_generate(brna, basedirectory, file, PROCESS_ITEMS[i].filename);
rna_generate(brna, file, PROCESS_ITEMS[i].filename);
fclose(file);
status= (DefRNA.error != 0);
@@ -1073,29 +1073,17 @@ static int rna_preprocess(char *basedirectory, char *outfile)
return status;
}
#ifndef BASE_HEADER
#define BASE_HEADER "../"
#endif
int main(int argc, char **argv)
{
int totblock, return_status = 0;
if (argc!=2 && argc!=3) {
printf("Usage: %s outdirectory/ [base directory]\n", argv[0]);
if (argc<2) {
printf("Usage: %s outdirectory/\n", argv[0]);
return_status = 1;
}
else {
char baseDirectory[256];
printf("Running makesrna, program versions %s\n", RNA_VERSION_DATE);
if (argc==3)
strcpy(baseDirectory, argv[2]);
else
strcpy(baseDirectory, BASE_HEADER);
return_status= rna_preprocess(baseDirectory, argv[1]);
return_status= rna_preprocess(argv[1]);
}
totblock= MEM_get_memory_blocks_in_use();