mirror of
https://github.com/scp-fs2open/fs2open.github.com.git
synced 2026-11-08 07:28:22 -10:00
Compare commits
30
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
eb46c94d08 | ||
|
|
3afde9b623 | ||
|
|
65aceccc13 | ||
|
|
e37bc109c8 | ||
|
|
dafca28717 | ||
|
|
2a9e6719a7 | ||
|
|
aed59d2125 | ||
|
|
c599955813 | ||
|
|
3bcab10109 | ||
|
|
78cf382996 | ||
|
|
54b2994204 | ||
|
|
3960161427 | ||
|
|
0b68d9c09c | ||
|
|
66285e2cab | ||
|
|
ff8607d74e | ||
|
|
acf72ef431 | ||
|
|
9f61dd5286 | ||
|
|
6e6b4b1620 | ||
|
|
3b9869a00a | ||
|
|
c761256461 | ||
|
|
5f7b9159b8 | ||
|
|
89291af840 | ||
|
|
6401a8266d | ||
|
|
8706f824fa | ||
|
|
77a0d6a841 | ||
|
|
4e590a6761 | ||
|
|
953f47560e | ||
|
|
f3d747db32 | ||
|
|
117dd15bda | ||
|
|
5431beb81d |
No files matched your search
+13
-15
@@ -66,15 +66,6 @@ int MISCMAP = -1;
|
||||
int bm_texture_ram = 0;
|
||||
int Bm_paging = 0;
|
||||
|
||||
// Extension type lists
|
||||
const ubyte bm_type_list[] = { BM_TYPE_DDS, BM_TYPE_TGA, BM_TYPE_PNG, BM_TYPE_JPG, BM_TYPE_PCX };
|
||||
const char *bm_ext_list[] = { ".dds", ".tga", ".png", ".jpg", ".pcx" };
|
||||
const int BM_NUM_TYPES = sizeof(bm_type_list) / sizeof(ubyte);
|
||||
|
||||
const ubyte bm_ani_type_list[] = { BM_TYPE_EFF, BM_TYPE_ANI };
|
||||
const char *bm_ani_ext_list[] = { ".eff", ".ani" };
|
||||
const int BM_ANI_NUM_TYPES = sizeof(bm_ani_type_list) / sizeof(ubyte);
|
||||
|
||||
void(*bm_set_components)(ubyte *pixel, ubyte *r, ubyte *g, ubyte *b, ubyte *a) = NULL;
|
||||
void(*bm_set_components_32)(ubyte *pixel, ubyte *r, ubyte *g, ubyte *b, ubyte *a) = NULL;
|
||||
|
||||
@@ -949,18 +940,22 @@ int bm_load(const char *real_filename) {
|
||||
|
||||
// Lets find out what type it is
|
||||
{
|
||||
const int NUM_TYPES = 5;
|
||||
const ubyte type_list[NUM_TYPES] = { BM_TYPE_DDS, BM_TYPE_TGA, BM_TYPE_PNG, BM_TYPE_JPG, BM_TYPE_PCX };
|
||||
const char *ext_list[NUM_TYPES] = { ".dds", ".tga", ".png", ".jpg", ".pcx" };
|
||||
|
||||
// see if it's already loaded (checks for any type with filename)
|
||||
if (bm_load_sub_fast(filename, &handle))
|
||||
return handle;
|
||||
|
||||
// if we are still here then we need to fall back to a file-based search
|
||||
int rval = bm_load_sub_slow(filename, BM_NUM_TYPES, bm_ext_list, &img_cfp);
|
||||
int rval = bm_load_sub_slow(filename, NUM_TYPES, ext_list, &img_cfp);
|
||||
|
||||
if (rval < 0)
|
||||
return -1;
|
||||
|
||||
strcat_s(filename, bm_ext_list[rval]);
|
||||
type = bm_type_list[rval];
|
||||
strcat_s(filename, ext_list[rval]);
|
||||
type = type_list[rval];
|
||||
}
|
||||
|
||||
Assert(type != BM_TYPE_NONE);
|
||||
@@ -1112,6 +1107,9 @@ int bm_load_animation(const char *real_filename, int *nframes, int *fps, int *ke
|
||||
ubyte type = BM_TYPE_NONE, eff_type = BM_TYPE_NONE, c_type = BM_TYPE_NONE;
|
||||
int bpp = 0, mm_lvl = 0, img_size = 0;
|
||||
char clean_name[MAX_FILENAME_LEN];
|
||||
const int NUM_TYPES = 2;
|
||||
const ubyte type_list[NUM_TYPES] = { BM_TYPE_EFF, BM_TYPE_ANI };
|
||||
const char *ext_list[NUM_TYPES] = { ".eff", ".ani" };
|
||||
|
||||
if (!bm_inited)
|
||||
bm_init();
|
||||
@@ -1173,13 +1171,13 @@ int bm_load_animation(const char *real_filename, int *nframes, int *fps, int *ke
|
||||
}
|
||||
|
||||
// if we are still here then we need to fall back to a file-based search
|
||||
int rval = bm_load_sub_slow(filename, BM_ANI_NUM_TYPES, bm_ani_ext_list, &img_cfp, dir_type);
|
||||
int rval = bm_load_sub_slow(filename, NUM_TYPES, ext_list, &img_cfp, dir_type);
|
||||
|
||||
if (rval < 0)
|
||||
return -1;
|
||||
|
||||
strcat_s(filename, bm_ani_ext_list[rval]);
|
||||
type = bm_ani_type_list[rval];
|
||||
strcat_s(filename, ext_list[rval]);
|
||||
type = type_list[rval];
|
||||
}
|
||||
|
||||
// If we found an animation then there is an extra 5 char size limit to adhere to. We don't do this check earlier since it's only needed if we found an anim
|
||||
|
||||
@@ -89,13 +89,6 @@ extern int bm_texture_ram; //!< how many bytes of textures are used.
|
||||
|
||||
extern int Bm_paging; //!< Bool type that indicates if BMPMAN is currently paging.
|
||||
|
||||
extern const ubyte bm_type_list[]; //!< List of valid bitmap types
|
||||
extern const char *bm_ext_list[]; //!< List of extensions for those types
|
||||
extern const int BM_NUM_TYPES; //!< Calculated number of bitmap types
|
||||
extern const ubyte bm_ani_type_list[]; //!< List of valid bitmap animation types
|
||||
extern const char *bm_ani_ext_list[]; //!< List of extensions for those types
|
||||
extern const int BM_ANI_NUM_TYPES; //!< Calculated number of bitmap animation types
|
||||
|
||||
extern int GLOWMAP; //!< References a map that is a fully lit version of its index -Bobboau
|
||||
extern int SPECMAP; //!< References a map that is for specular mapping -Bobboau
|
||||
extern int ENVMAP; //!< References a map that is for environment mapping -Bobboau
|
||||
|
||||
@@ -25,9 +25,6 @@
|
||||
|
||||
extern int Game_mode;
|
||||
|
||||
const char *movie_ext_list[] = { ".ogg", ".mve" };
|
||||
const int NUM_MOVIE_EXT = sizeof(movie_ext_list) / sizeof(char*);
|
||||
|
||||
|
||||
#define MOVIE_NONE -1
|
||||
#define MOVIE_OGG 0
|
||||
@@ -45,6 +42,8 @@ int movie_find(char *filename, char *out_name)
|
||||
char full_path[MAX_PATH];
|
||||
char tmp_name[MAX_PATH];
|
||||
int size, offset = 0;
|
||||
const int NUM_EXT = 2;
|
||||
const char *movie_ext[NUM_EXT] = { ".ogg", ".mve" };
|
||||
|
||||
if (out_name == NULL)
|
||||
return MOVIE_NONE;
|
||||
@@ -58,7 +57,7 @@ int movie_find(char *filename, char *out_name)
|
||||
char *p = strrchr(tmp_name, '.');
|
||||
if ( p ) *p = 0;
|
||||
|
||||
int rc = cf_find_file_location_ext(tmp_name, NUM_MOVIE_EXT, movie_ext_list, CF_TYPE_ANY, sizeof(full_path) - 1, full_path, &size, &offset, 0);
|
||||
int rc = cf_find_file_location_ext(tmp_name, NUM_EXT, movie_ext, CF_TYPE_ANY, sizeof(full_path) - 1, full_path, &size, &offset, 0);
|
||||
|
||||
if (rc == MOVIE_NONE)
|
||||
return MOVIE_NONE;
|
||||
|
||||
@@ -12,9 +12,6 @@
|
||||
#ifndef _MOVIE_HEADER_FILE
|
||||
#define _MOVIE_HEADER_FILE
|
||||
|
||||
extern const char *movie_ext_list[];
|
||||
extern const int NUM_MOVIE_EXT;
|
||||
|
||||
bool movie_play(char *name);
|
||||
void movie_play_two(char *name1, char *name2);
|
||||
|
||||
|
||||
+226
-226
File diff suppressed because it is too large.
Load diff
@@ -1482,7 +1482,7 @@ int game_start_mission()
|
||||
|
||||
int e1 = timer_get_milliseconds();
|
||||
|
||||
mprintf(("Level load took %f seconds.\n", (e1 - s1) / 1000.0f ));
|
||||
printf("Level load took %f seconds.\n", (e1 - s1) / 1000.0f );
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -336,8 +336,8 @@ END
|
||||
//
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION 3,7,3,000000
|
||||
PRODUCTVERSION 3,7,3,000000
|
||||
FILEVERSION 3,7,2,11329
|
||||
PRODUCTVERSION 3,7,2,11329
|
||||
FILEFLAGSMASK 0x3fL
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
@@ -354,12 +354,12 @@ BEGIN
|
||||
BEGIN
|
||||
VALUE "CompanyName", "Volition Inc."
|
||||
VALUE "FileDescription", "FreeSpace 2 Open"
|
||||
VALUE "FileVersion", "3.7.3.000000"
|
||||
VALUE "FileVersion", "3.7.2.11329"
|
||||
VALUE "InternalName", "FreeSpace 2 Open"
|
||||
VALUE "LegalCopyright", "Copyright © 1998"
|
||||
VALUE "OriginalFilename", "fs2.exe"
|
||||
VALUE "ProductName", "FreeSpace 2 Open"
|
||||
VALUE "ProductVersion", "3.7.3"
|
||||
VALUE "ProductVersion", "3.7.2"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
|
||||
@@ -1360,8 +1360,10 @@ void parse_menumusic()
|
||||
|
||||
// Goober5000 - check for existence of file
|
||||
// taylor - check for all file types
|
||||
// chief1983 - use type list defined in audiostr.h
|
||||
if ( cf_exists_full_ext(Spooled_music[idx].filename, CF_TYPE_MUSIC, NUM_AUDIO_EXT, audio_ext_list) )
|
||||
const int NUM_EXT = 2;
|
||||
const char *exts[NUM_EXT] = { ".ogg", ".wav" };
|
||||
|
||||
if ( cf_exists_full_ext(Spooled_music[idx].filename, CF_TYPE_MUSIC, NUM_EXT, exts) )
|
||||
Spooled_music[idx].flags |= SMF_VALID;
|
||||
|
||||
if (!nocreate)
|
||||
|
||||
@@ -34,8 +34,8 @@
|
||||
|
||||
#define FS_VERSION_MAJOR 3 // major version
|
||||
#define FS_VERSION_MINOR 7 // increase by 1 for minor revs
|
||||
#define FS_VERSION_BUILD 3 // bugfix release
|
||||
#define FS_VERSION_REVIS 000000 // SVN revision
|
||||
#define FS_VERSION_BUILD 2 // bugfix release
|
||||
#define FS_VERSION_REVIS 11329 // SVN revision
|
||||
//#define FS_VERSION_IDENT NOX("custom") // special build release identifier, must be a string (don't define unless it's supposed to be used!!)
|
||||
|
||||
#define VERSION_LOC_FNAME "version.nfo"
|
||||
|
||||
@@ -20,17 +20,6 @@
|
||||
//we check background type to avoid messed up colours for ANI
|
||||
#define ANI_BPP_CHECK (ga->ani.bg_type == BM_TYPE_PCX) ? 16 : 32
|
||||
|
||||
// These two functions find if a bitmap or animation exists by filename, no extension needed.
|
||||
bool generic_bitmap_exists(const char *filename)
|
||||
{
|
||||
return cf_exists_full_ext(filename, CF_TYPE_ANY, BM_NUM_TYPES, bm_ext_list);
|
||||
}
|
||||
|
||||
bool generic_anim_exists(const char *filename)
|
||||
{
|
||||
return cf_exists_full_ext(filename, CF_TYPE_ANY, BM_ANI_NUM_TYPES, bm_ani_ext_list);
|
||||
}
|
||||
|
||||
// Goober5000
|
||||
int generic_anim_init_and_stream(generic_anim *anim, const char *anim_filename, ubyte bg_type, bool attempt_hi_res)
|
||||
{
|
||||
|
||||
@@ -52,8 +52,6 @@ typedef struct generic_bitmap {
|
||||
int bitmap_id;
|
||||
} generic_bitmap;
|
||||
|
||||
bool generic_bitmap_exists(const char *filename);
|
||||
bool generic_anim_exists(const char *filename);
|
||||
int generic_anim_init_and_stream(generic_anim *anim, const char *anim_filename, ubyte bg_type, bool attempt_hi_res);
|
||||
void generic_anim_init(generic_anim *ga);
|
||||
void generic_anim_init(generic_anim *ga, const char *filename);
|
||||
|
||||
@@ -704,7 +704,7 @@ static bool opengl_post_init_table()
|
||||
|
||||
|
||||
if (optional_string("#Effects")) {
|
||||
while ( !required_string_one_of(3, "$Name:", "#Ship Effects", "#End") ) {
|
||||
while ( !required_string_3("$Name:", "#Ship Effects", "#End") ) {
|
||||
char tbuf[NAME_LENGTH+1] = { 0 };
|
||||
post_effect_t eff;
|
||||
|
||||
@@ -752,7 +752,7 @@ static bool opengl_post_init_table()
|
||||
Ship_effects.push_back(se1);
|
||||
|
||||
if (optional_string("#Ship Effects")) {
|
||||
while ( !required_string_one_of(3, "$Name:", "#Light Shafts", "#End") ) {
|
||||
while ( !required_string_3("$Name:", "#Light Shafts", "#End") ) {
|
||||
ship_effect se;
|
||||
char tbuf[NAME_LENGTH] = { 0 };
|
||||
|
||||
|
||||
@@ -151,6 +151,49 @@ int Supernova_coords[GR_NUM_RESOLUTIONS][2] = {
|
||||
}
|
||||
};
|
||||
|
||||
// used to draw the kills gauge
|
||||
hud_frames Kills_gauge;
|
||||
int Kills_gauge_loaded = 0;
|
||||
int Kills_gauge_coords[GR_NUM_RESOLUTIONS][2] = {
|
||||
{ // GR_640
|
||||
497, 361
|
||||
},
|
||||
{ // GR_1024
|
||||
880, 624
|
||||
}
|
||||
};
|
||||
int Kills_text_coords[GR_NUM_RESOLUTIONS][2] = {
|
||||
{ // GR_640
|
||||
503, 365
|
||||
},
|
||||
{ // GR_1024
|
||||
886, 628
|
||||
}
|
||||
};
|
||||
|
||||
int Kills_text_val_coords_gr[GR_NUM_RESOLUTIONS][2] = {
|
||||
{ // GR_640
|
||||
615, 365
|
||||
},
|
||||
{ // GR_1024
|
||||
984, 628
|
||||
}
|
||||
};
|
||||
|
||||
int Kills_text_val_coords[GR_NUM_RESOLUTIONS][2] = {
|
||||
{ // GR_640
|
||||
571, 365
|
||||
},
|
||||
{ // GR_1024
|
||||
954, 628
|
||||
}
|
||||
};
|
||||
|
||||
char Kills_fname[GR_NUM_RESOLUTIONS][MAX_FILENAME_LEN] = {
|
||||
"kills1",
|
||||
"kills1"
|
||||
};
|
||||
|
||||
// used to draw the hud support view
|
||||
static int Hud_support_view_active;
|
||||
static int Hud_support_view_abort; // active when we need to display abort message
|
||||
@@ -194,6 +237,7 @@ int hud_subspace_notify_active();
|
||||
int hud_objective_notify_active();
|
||||
void hud_subspace_notify_abort();
|
||||
void hud_maybe_display_subspace_notify();
|
||||
void hud_init_kills_gauge();
|
||||
int hud_maybe_render_emp_icon();
|
||||
void hud_init_emp_icon();
|
||||
|
||||
@@ -1179,6 +1223,7 @@ void HUD_init()
|
||||
hud_init_wingman_status_gauge();
|
||||
hud_init_target_static();
|
||||
hud_init_text_flash_gauge();
|
||||
hud_init_kills_gauge();
|
||||
hud_stop_subspace_notify();
|
||||
hud_stop_objective_notify();
|
||||
hud_target_last_transmit_level_init();
|
||||
@@ -2526,6 +2571,14 @@ void HudGaugeLag::render(float frametime)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Obsolete initializer for the kills gauge. Now superseded by the new HUD code.
|
||||
*/
|
||||
void hud_init_kills_gauge()
|
||||
{
|
||||
Kills_gauge_loaded = 1;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Called at mission start to init data, and load support view bitmap if required
|
||||
*/
|
||||
|
||||
@@ -59,9 +59,7 @@ extern void game_process_cheats(int k);
|
||||
|
||||
SCP_vector< SCP_vector<main_hall_defines> > Main_hall_defines;
|
||||
|
||||
static main_hall_defines *Main_hall = NULL;
|
||||
|
||||
static int Main_hall_music_index = -1;
|
||||
main_hall_defines *Main_hall = NULL;
|
||||
|
||||
int Vasudan_funny = 0;
|
||||
int Vasudan_funny_plate = -1;
|
||||
@@ -441,7 +439,7 @@ void main_hall_init(const SCP_string &main_hall_name)
|
||||
}
|
||||
|
||||
// if we're switching to a different mainhall we may need to change music
|
||||
if (main_hall_get_music_index(main_hall_get_index(main_hall_to_load)) != Main_hall_music_index) {
|
||||
if (main_hall_get_music_index(main_hall_get_index(main_hall_to_load)) != main_hall_get_music_index(main_hall_id())) {
|
||||
main_hall_stop_music(true);
|
||||
}
|
||||
|
||||
@@ -449,8 +447,8 @@ void main_hall_init(const SCP_string &main_hall_name)
|
||||
snazzy_menu_init();
|
||||
|
||||
// assign the proper main hall data
|
||||
Assert(main_hall_get_pointer(main_hall_to_load) != NULL);
|
||||
Main_hall = main_hall_get_pointer(main_hall_to_load);
|
||||
Assertion(Main_hall != NULL, "Failed to obtain pointer to main hall '%s'; get a coder!\n", main_hall_to_load.c_str());
|
||||
|
||||
// check if we have to change the ready room's description
|
||||
if(Main_hall->default_readyroom) {
|
||||
@@ -1140,6 +1138,7 @@ int main_hall_get_music_index(int main_hall_num)
|
||||
*/
|
||||
void main_hall_start_music()
|
||||
{
|
||||
int index;
|
||||
char *filename;
|
||||
|
||||
// start a looping ambient sound
|
||||
@@ -1156,13 +1155,13 @@ void main_hall_start_music()
|
||||
}
|
||||
|
||||
// get music
|
||||
Main_hall_music_index = main_hall_get_music_index(main_hall_id());
|
||||
if (Main_hall_music_index < 0) {
|
||||
index = main_hall_get_music_index(main_hall_id());
|
||||
if (index < 0) {
|
||||
nprintf(("Warning", "No music file exists to play music at the main menu!\n"));
|
||||
return;
|
||||
}
|
||||
|
||||
filename = Spooled_music[Main_hall_music_index].filename;
|
||||
filename = Spooled_music[index].filename;
|
||||
Assert(filename != NULL);
|
||||
|
||||
// get handle
|
||||
|
||||
@@ -561,7 +561,7 @@ void parse_msgtbl()
|
||||
|
||||
// now we can start parsing
|
||||
if (optional_string("#Message Frequencies")) {
|
||||
while (!required_string_one_of(3, "$Name:", "#Personas", "#Moods" )) {
|
||||
while (!required_string_3("$Name:", "#Personas", "#Moods" )) {
|
||||
message_frequency_parse();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -503,7 +503,7 @@ void obj_snd_do_frame()
|
||||
}
|
||||
|
||||
distance -= add_distance;
|
||||
if ( distance < 0.0f ) {
|
||||
if ( distance < 0 ) {
|
||||
distance = 0.0f;
|
||||
}
|
||||
|
||||
@@ -522,13 +522,13 @@ void obj_snd_do_frame()
|
||||
alive_vol_mult = 1.0f;
|
||||
if ( objp->type == OBJ_SHIP ) {
|
||||
if ( !(Ship_info[Ships[objp->instance].ship_info_index].flags & (SIF_BIG_SHIP | SIF_HUGE_SHIP)) ) {
|
||||
if ( objp->phys_info.max_vel.xyz.z <= 0.0f ) {
|
||||
if ( objp->phys_info.max_vel.xyz.z <= 0 ) {
|
||||
percent_max = 0.0f;
|
||||
}
|
||||
else
|
||||
percent_max = objp->phys_info.fspeed / objp->phys_info.max_vel.xyz.z;
|
||||
|
||||
if ( percent_max >= 0.5f )
|
||||
if ( percent_max >= 0.5 )
|
||||
speed_vol_multiplier = 1.0f;
|
||||
else {
|
||||
speed_vol_multiplier = 0.5f + (percent_max); // linear interp: 0.5->1.0 when 0.0->0.5
|
||||
@@ -538,24 +538,22 @@ void obj_snd_do_frame()
|
||||
{
|
||||
if (osp->flags & OS_TURRET_BASE_ROTATION)
|
||||
{
|
||||
if (osp->ss->base_rotation_rate_pct > 0.0f)
|
||||
if (osp->ss->base_rotation_rate_pct > 0)
|
||||
rot_vol_mult = ((0.25f + (0.75f * osp->ss->base_rotation_rate_pct)) * osp->ss->system_info->turret_base_rotation_snd_mult);
|
||||
else
|
||||
rot_vol_mult = 0.0f;
|
||||
rot_vol_mult = 0;
|
||||
}
|
||||
if (osp->flags & OS_TURRET_GUN_ROTATION)
|
||||
{
|
||||
if (osp->ss->gun_rotation_rate_pct > 0.0f)
|
||||
if (osp->ss->gun_rotation_rate_pct > 0)
|
||||
rot_vol_mult = ((0.25f + (0.75f * osp->ss->gun_rotation_rate_pct)) * osp->ss->system_info->turret_gun_rotation_snd_mult);
|
||||
else
|
||||
rot_vol_mult = 0.0f;
|
||||
rot_vol_mult = 0;
|
||||
}
|
||||
if (osp->flags & OS_SUBSYS_ROTATION )
|
||||
{
|
||||
if (osp->ss->flags & SSF_ROTATES) {
|
||||
rot_vol_mult = 1.0f;
|
||||
} else {
|
||||
rot_vol_mult = 0.0f;
|
||||
rot_vol_mult = 1.0;
|
||||
}
|
||||
}
|
||||
if (osp->flags & OS_SUBSYS_ALIVE)
|
||||
@@ -570,8 +568,6 @@ void obj_snd_do_frame()
|
||||
{
|
||||
if (osp->ss->current_hits <= 0.0f) {
|
||||
alive_vol_mult = 1.0f;
|
||||
} else {
|
||||
alive_vol_mult = 0.0f;
|
||||
}
|
||||
}
|
||||
if (osp->flags & OS_SUBSYS_DAMAGED)
|
||||
@@ -595,7 +591,7 @@ void obj_snd_do_frame()
|
||||
new_vol = max_vol - (distance - Snds[osp->id].min) * max_vol / (Snds[osp->id].max - Snds[osp->id].min);
|
||||
}
|
||||
|
||||
if ( new_vol < 0.1f ) {
|
||||
if ( new_vol < 0.1 ) {
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
+144
-6
@@ -698,6 +698,72 @@ int required_string_either(char *str1, char *str2)
|
||||
return -1;
|
||||
}
|
||||
|
||||
// Return 0 or 1 for str1 match, str2 match. Return -1 if neither matches.
|
||||
// Does not update Mp if token found. If not found, advances, trying to
|
||||
// find the string. Doesn't advance past the found string.
|
||||
int required_string_3(char *str1, char *str2, char *str3)
|
||||
{
|
||||
int count = 0;
|
||||
|
||||
ignore_white_space();
|
||||
|
||||
while (count < RS_MAX_TRIES) {
|
||||
if (strnicmp(str1, Mp, strlen(str1)) == 0) {
|
||||
// Mp += strlen(str1);
|
||||
diag_printf("Found required string [%s]\n", token_found = str1);
|
||||
return 0;
|
||||
} else if (strnicmp(str2, Mp, strlen(str2)) == 0) {
|
||||
// Mp += strlen(str2);
|
||||
diag_printf("Found required string [%s]\n", token_found = str2);
|
||||
return 1;
|
||||
} else if (strnicmp(str3, Mp, strlen(str3)) == 0) {
|
||||
diag_printf("Found required string [%s]\n", token_found = str3);
|
||||
return 2;
|
||||
}
|
||||
|
||||
error_display(1, "Required token = [%s], [%s] or [%s], found [%.32s].\n", str1, str2, str3, next_tokens());
|
||||
|
||||
advance_to_eoln(NULL);
|
||||
ignore_white_space();
|
||||
count++;
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
int required_string_4(char *str1, char *str2, char *str3, char *str4)
|
||||
{
|
||||
int count = 0;
|
||||
|
||||
ignore_white_space();
|
||||
|
||||
while (count < RS_MAX_TRIES) {
|
||||
if (strnicmp(str1, Mp, strlen(str1)) == 0) {
|
||||
// Mp += strlen(str1);
|
||||
diag_printf("Found required string [%s]\n", token_found = str1);
|
||||
return 0;
|
||||
} else if (strnicmp(str2, Mp, strlen(str2)) == 0) {
|
||||
// Mp += strlen(str2);
|
||||
diag_printf("Found required string [%s]\n", token_found = str2);
|
||||
return 1;
|
||||
} else if (strnicmp(str3, Mp, strlen(str3)) == 0) {
|
||||
diag_printf("Found required string [%s]\n", token_found = str3);
|
||||
return 2;
|
||||
} else if (strnicmp(str4, Mp, strlen(str4)) == 0) {
|
||||
diag_printf("Found required string [%s]\n", token_found = str4);
|
||||
return 3;
|
||||
}
|
||||
|
||||
error_display(1, "Required token = [%s], [%s], [%s], or [%s], found [%.32s].\n", str1, str2, str3, str4, next_tokens());
|
||||
|
||||
advance_to_eoln(NULL);
|
||||
ignore_white_space();
|
||||
count++;
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
// Generic version of old required_string_3 and required_string_4; written by ngld, with some tweaks by MageKing17
|
||||
int required_string_one_of(int arg_count, ...)
|
||||
{
|
||||
@@ -1195,12 +1261,27 @@ void stuff_string(char *outstr, int type, int len, char *terminators)
|
||||
|
||||
switch (type) {
|
||||
case F_RAW:
|
||||
ignore_gray_space();
|
||||
copy_to_eoln(read_str, terminators, Mp, read_len);
|
||||
drop_trailing_white_space(read_str);
|
||||
advance_to_eoln(terminators);
|
||||
break;
|
||||
|
||||
case F_LNAME:
|
||||
ignore_gray_space();
|
||||
copy_to_eoln(read_str, terminators, Mp, read_len);
|
||||
drop_trailing_white_space(read_str);
|
||||
advance_to_eoln(terminators);
|
||||
break;
|
||||
|
||||
case F_NAME:
|
||||
ignore_gray_space();
|
||||
copy_to_eoln(read_str, terminators, Mp, read_len);
|
||||
drop_trailing_white_space(read_str);
|
||||
advance_to_eoln(terminators);
|
||||
break;
|
||||
|
||||
case F_DATE:
|
||||
case F_FILESPEC:
|
||||
case F_PATHNAME:
|
||||
case F_MESSAGE:
|
||||
ignore_gray_space();
|
||||
copy_to_eoln(read_str, terminators, Mp, read_len);
|
||||
drop_trailing_white_space(read_str);
|
||||
@@ -1214,6 +1295,13 @@ void stuff_string(char *outstr, int type, int len, char *terminators)
|
||||
required_string("$End Notes:");
|
||||
break;
|
||||
|
||||
case F_FILESPEC:
|
||||
ignore_gray_space();
|
||||
copy_to_eoln(read_str, terminators, Mp, read_len);
|
||||
drop_trailing_white_space(read_str);
|
||||
advance_to_eoln(terminators);
|
||||
break;
|
||||
|
||||
// F_MULTITEXTOLD keeping for backwards compatability with old missions
|
||||
// can be deleted once all missions are using new briefing format
|
||||
|
||||
@@ -1232,6 +1320,20 @@ void stuff_string(char *outstr, int type, int len, char *terminators)
|
||||
required_string("$end_multi_text");
|
||||
break;
|
||||
|
||||
case F_PATHNAME:
|
||||
ignore_gray_space();
|
||||
copy_to_eoln(read_str, terminators, Mp, read_len);
|
||||
drop_trailing_white_space(read_str);
|
||||
advance_to_eoln(terminators);
|
||||
break;
|
||||
|
||||
case F_MESSAGE:
|
||||
ignore_gray_space();
|
||||
copy_to_eoln(read_str, terminators, Mp, read_len);
|
||||
drop_trailing_white_space(read_str);
|
||||
advance_to_eoln(terminators);
|
||||
break;
|
||||
|
||||
default:
|
||||
Error(LOCATION, "Unhandled string type %d in stuff_string!", type);
|
||||
}
|
||||
@@ -1269,12 +1371,27 @@ void stuff_string(SCP_string &outstr, int type, char *terminators)
|
||||
|
||||
switch (type) {
|
||||
case F_RAW:
|
||||
ignore_gray_space();
|
||||
copy_to_eoln(read_str, terminators, Mp);
|
||||
drop_trailing_white_space(read_str);
|
||||
advance_to_eoln(terminators);
|
||||
break;
|
||||
|
||||
case F_LNAME:
|
||||
ignore_gray_space();
|
||||
copy_to_eoln(read_str, terminators, Mp);
|
||||
drop_trailing_white_space(read_str);
|
||||
advance_to_eoln(terminators);
|
||||
break;
|
||||
|
||||
case F_NAME:
|
||||
ignore_gray_space();
|
||||
copy_to_eoln(read_str, terminators, Mp);
|
||||
drop_trailing_white_space(read_str);
|
||||
advance_to_eoln(terminators);
|
||||
break;
|
||||
|
||||
case F_DATE:
|
||||
case F_FILESPEC:
|
||||
case F_PATHNAME:
|
||||
case F_MESSAGE:
|
||||
ignore_gray_space();
|
||||
copy_to_eoln(read_str, terminators, Mp);
|
||||
drop_trailing_white_space(read_str);
|
||||
@@ -1288,6 +1405,13 @@ void stuff_string(SCP_string &outstr, int type, char *terminators)
|
||||
required_string("$End Notes:");
|
||||
break;
|
||||
|
||||
case F_FILESPEC:
|
||||
ignore_gray_space();
|
||||
copy_to_eoln(read_str, terminators, Mp);
|
||||
drop_trailing_white_space(read_str);
|
||||
advance_to_eoln(terminators);
|
||||
break;
|
||||
|
||||
// F_MULTITEXTOLD keeping for backwards compatability with old missions
|
||||
// can be deleted once all missions are using new briefing format
|
||||
|
||||
@@ -1306,6 +1430,20 @@ void stuff_string(SCP_string &outstr, int type, char *terminators)
|
||||
required_string("$end_multi_text");
|
||||
break;
|
||||
|
||||
case F_PATHNAME:
|
||||
ignore_gray_space();
|
||||
copy_to_eoln(read_str, terminators, Mp);
|
||||
drop_trailing_white_space(read_str);
|
||||
advance_to_eoln(terminators);
|
||||
break;
|
||||
|
||||
case F_MESSAGE:
|
||||
ignore_gray_space();
|
||||
copy_to_eoln(read_str, terminators, Mp);
|
||||
drop_trailing_white_space(read_str);
|
||||
advance_to_eoln(terminators);
|
||||
break;
|
||||
|
||||
default:
|
||||
Error(LOCATION, "Unhandled string type %d in stuff_string!", type);
|
||||
}
|
||||
|
||||
@@ -110,6 +110,8 @@ extern int optional_string_one_of(int arg_count, ...);
|
||||
// required
|
||||
extern int required_string(char *pstr);
|
||||
extern int required_string_either(char *str1, char *str2);
|
||||
extern int required_string_3(char *str1, char *str2, char *str3);
|
||||
extern int required_string_4(char *str1, char *str2, char *str3, char *str4);
|
||||
extern int required_string_one_of(int arg_count, ...);
|
||||
|
||||
// stuff
|
||||
|
||||
+160
-64
@@ -1256,60 +1256,6 @@ void parse_ship_particle_effect(ship_info* sip, particle_effect* pe, char *id_st
|
||||
}
|
||||
}
|
||||
|
||||
void parse_allowed_weapons(ship_info *sip, bool is_primary, bool is_dogfight)
|
||||
{
|
||||
int i, num_allowed;
|
||||
int allowed_weapons[MAX_WEAPON_TYPES];
|
||||
const int max_banks = (is_primary ? MAX_SHIP_PRIMARY_BANKS : MAX_SHIP_SECONDARY_BANKS);
|
||||
const int weapon_type = (is_dogfight ? DOGFIGHT_WEAPON : REGULAR_WEAPON);
|
||||
const int offset = (is_primary ? 0 : MAX_SHIP_PRIMARY_BANKS);
|
||||
const char *allowed_banks_str = is_primary ? (is_dogfight ? "$Allowed Dogfight PBanks:" : "$Allowed PBanks:")
|
||||
: (is_dogfight ? "$Allowed Dogfight SBanks:" : "$Allowed SBanks:");
|
||||
const char *bank_type_str = is_primary ? "primary" : "secondary";
|
||||
|
||||
// Goober5000 - fixed Bobboau's implementation of restricted banks
|
||||
int bank;
|
||||
|
||||
// Set the weapons filter used in weapons loadout (for primary weapons)
|
||||
if (optional_string(allowed_banks_str))
|
||||
{
|
||||
bank = -1;
|
||||
|
||||
while (check_for_string("("))
|
||||
{
|
||||
bank++;
|
||||
|
||||
// make sure we don't specify more than we have banks for
|
||||
if (bank >= max_banks)
|
||||
{
|
||||
Warning(LOCATION, "%s bank-specific loadout for %s exceeds permissible number of %s banks. Ignoring the rest...", allowed_banks_str, sip->name, bank_type_str);
|
||||
bank--;
|
||||
break;
|
||||
}
|
||||
|
||||
num_allowed = stuff_int_list(allowed_weapons, MAX_WEAPON_TYPES, WEAPON_LIST_TYPE);
|
||||
|
||||
// actually say which weapons are allowed
|
||||
for ( i = 0; i < num_allowed; i++ )
|
||||
{
|
||||
if ( allowed_weapons[i] >= 0 ) // MK, Bug fix, 9/6/99. Used to be "allowed_weapons" not "allowed_weapons[i]".
|
||||
{
|
||||
sip->allowed_bank_restricted_weapons[offset+bank][allowed_weapons[i]] |= weapon_type;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// set flags if need be
|
||||
if (bank > 0) // meaning there was a restricted bank table entry
|
||||
{
|
||||
for (i=0; i<=bank; i++)
|
||||
{
|
||||
sip->restricted_loadout_flag[offset+i] |= weapon_type;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Common method for parsing ship/subsystem primary/secondary weapons so that the parser doesn't flip out in the event of a problem.
|
||||
*
|
||||
@@ -1409,7 +1355,8 @@ int parse_and_add_briefing_icon_info()
|
||||
int parse_ship_values(ship_info* sip, bool first_time, bool replace)
|
||||
{
|
||||
char buf[SHIP_MULTITEXT_LENGTH];
|
||||
int i, j;
|
||||
int i, j, num_allowed;
|
||||
int allowed_weapons[MAX_WEAPON_TYPES];
|
||||
int rtn = 0;
|
||||
char name_tmp[NAME_LENGTH];
|
||||
|
||||
@@ -1681,7 +1628,7 @@ int parse_ship_values(ship_info* sip, bool first_time, bool replace)
|
||||
if (optional_string("$Enable Team Colors:")) {
|
||||
stuff_boolean(&sip->uses_team_colors);
|
||||
sip->default_team_name = "None";
|
||||
}
|
||||
}
|
||||
|
||||
if (optional_string("$Default Team:")) {
|
||||
char temp[NAME_LENGTH];
|
||||
@@ -2274,9 +2221,86 @@ int parse_ship_values(ship_info* sip, bool first_time, bool replace)
|
||||
stuff_float( &sip->weapon_model_draw_distance );
|
||||
}
|
||||
|
||||
// Goober5000 - fixed Bobboau's implementation of restricted banks
|
||||
int bank;
|
||||
|
||||
// Set the weapons filter used in weapons loadout (for primary weapons)
|
||||
parse_allowed_weapons(sip, true, false);
|
||||
parse_allowed_weapons(sip, true, true);
|
||||
if (optional_string("$Allowed PBanks:"))
|
||||
{
|
||||
bank = -1;
|
||||
|
||||
while (check_for_string("("))
|
||||
{
|
||||
bank++;
|
||||
|
||||
// make sure we don't specify more than we have banks for
|
||||
if (bank >= MAX_SHIP_PRIMARY_BANKS)
|
||||
{
|
||||
Warning(LOCATION, "$Allowed PBanks bank-specific loadout for %s exceeds permissible number of primary banks. Ignoring the rest...", sip->name);
|
||||
bank--;
|
||||
break;
|
||||
}
|
||||
|
||||
num_allowed = stuff_int_list(allowed_weapons, MAX_WEAPON_TYPES, WEAPON_LIST_TYPE);
|
||||
|
||||
// actually say which weapons are allowed
|
||||
for ( i = 0; i < num_allowed; i++ )
|
||||
{
|
||||
if ( allowed_weapons[i] >= 0 ) // MK, Bug fix, 9/6/99. Used to be "allowed_weapons" not "allowed_weapons[i]".
|
||||
{
|
||||
sip->allowed_bank_restricted_weapons[bank][allowed_weapons[i]] |= REGULAR_WEAPON;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// set flags if need be
|
||||
if (bank > 0) // meaning there was a restricted bank table entry
|
||||
{
|
||||
for (i=0; i<=bank; i++)
|
||||
{
|
||||
sip->restricted_loadout_flag[i] |= REGULAR_WEAPON;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Set the weapons filter used in weapons loadout (for primary weapons)
|
||||
if (optional_string("$Allowed Dogfight PBanks:"))
|
||||
{
|
||||
bank = -1;
|
||||
|
||||
while (check_for_string("("))
|
||||
{
|
||||
bank++;
|
||||
|
||||
// make sure we don't specify more than we have banks for
|
||||
if (bank >= MAX_SHIP_PRIMARY_BANKS)
|
||||
{
|
||||
Warning(LOCATION, "$Allowed Dogfight PBanks bank-specific loadout for %s exceeds permissible number of primary banks. Ignoring the rest...", sip->name);
|
||||
bank--;
|
||||
break;
|
||||
}
|
||||
|
||||
num_allowed = stuff_int_list(allowed_weapons, MAX_WEAPON_TYPES, WEAPON_LIST_TYPE);
|
||||
|
||||
// actually say which weapons are allowed
|
||||
for ( i = 0; i < num_allowed; i++ )
|
||||
{
|
||||
if ( allowed_weapons[i] >= 0 ) // MK, Bug fix, 9/6/99. Used to be "allowed_weapons" not "allowed_weapons[i]".
|
||||
{
|
||||
sip->allowed_bank_restricted_weapons[bank][allowed_weapons[i]] |= DOGFIGHT_WEAPON;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// set flags if need be
|
||||
if (bank > 0) // meaning there was a restricted bank table entry
|
||||
{
|
||||
for (i=0; i<=bank; i++)
|
||||
{
|
||||
sip->restricted_loadout_flag[i] |= DOGFIGHT_WEAPON;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Get primary bank weapons
|
||||
parse_weapon_bank(sip, true, &sip->num_primary_banks, sip->primary_bank_weapons, sip->primary_bank_ammo_capacity);
|
||||
@@ -2288,8 +2312,82 @@ int parse_ship_values(ship_info* sip, bool first_time, bool replace)
|
||||
}
|
||||
|
||||
// Set the weapons filter used in weapons loadout (for secondary weapons)
|
||||
parse_allowed_weapons(sip, false, false);
|
||||
parse_allowed_weapons(sip, false, true);
|
||||
if (optional_string("$Allowed SBanks:"))
|
||||
{
|
||||
bank = -1;
|
||||
|
||||
while (check_for_string("("))
|
||||
{
|
||||
bank++;
|
||||
|
||||
// make sure we don't specify more than we have banks for
|
||||
if (bank >= MAX_SHIP_SECONDARY_BANKS)
|
||||
{
|
||||
Warning(LOCATION, "$Allowed SBanks bank-specific loadout for %s exceeds permissible number of secondary banks. Ignoring the rest...", sip->name);
|
||||
bank--;
|
||||
break;
|
||||
}
|
||||
|
||||
num_allowed = stuff_int_list(allowed_weapons, MAX_WEAPON_TYPES, WEAPON_LIST_TYPE);
|
||||
|
||||
// actually say which weapons are allowed
|
||||
for ( i = 0; i < num_allowed; i++ )
|
||||
{
|
||||
if ( allowed_weapons[i] >= 0 ) // MK, Bug fix, 9/6/99. Used to be "allowed_weapons" not "allowed_weapons[i]".
|
||||
{
|
||||
sip->allowed_bank_restricted_weapons[MAX_SHIP_PRIMARY_BANKS+bank][allowed_weapons[i]] |= REGULAR_WEAPON;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// set flags if need be
|
||||
if (bank > 0) // meaning there was a restricted bank table entry
|
||||
{
|
||||
for (i=0; i<=bank; i++)
|
||||
{
|
||||
sip->restricted_loadout_flag[MAX_SHIP_PRIMARY_BANKS+i] |= REGULAR_WEAPON;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Set the weapons filter used in weapons loadout (for secondary weapons)
|
||||
if (optional_string("$Allowed Dogfight SBanks:"))
|
||||
{
|
||||
bank = -1;
|
||||
|
||||
while (check_for_string("("))
|
||||
{
|
||||
bank++;
|
||||
|
||||
// make sure we don't specify more than we have banks for
|
||||
if (bank >= MAX_SHIP_SECONDARY_BANKS)
|
||||
{
|
||||
Warning(LOCATION, "$Allowed Dogfight SBanks bank-specific loadout for %s exceeds permissible number of secondary banks. Ignoring the rest...", sip->name);
|
||||
bank--;
|
||||
break;
|
||||
}
|
||||
|
||||
num_allowed = stuff_int_list(allowed_weapons, MAX_WEAPON_TYPES, WEAPON_LIST_TYPE);
|
||||
|
||||
// actually say which weapons are allowed
|
||||
for ( i = 0; i < num_allowed; i++ )
|
||||
{
|
||||
if ( allowed_weapons[i] >= 0 ) // MK, Bug fix, 9/6/99. Used to be "allowed_weapons" not "allowed_weapons[i]".
|
||||
{
|
||||
sip->allowed_bank_restricted_weapons[MAX_SHIP_PRIMARY_BANKS+bank][allowed_weapons[i]] |= DOGFIGHT_WEAPON;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// set flags if need be
|
||||
if (bank > 0) // meaning there was a restricted bank table entry
|
||||
{
|
||||
for (i=0; i<=bank; i++)
|
||||
{
|
||||
sip->restricted_loadout_flag[MAX_SHIP_PRIMARY_BANKS+i] |= DOGFIGHT_WEAPON;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Get secondary bank weapons
|
||||
parse_weapon_bank(sip, false, &sip->num_secondary_banks, sip->secondary_bank_weapons, sip->secondary_bank_ammo_capacity);
|
||||
@@ -3159,7 +3257,7 @@ int parse_ship_values(ship_info* sip, bool first_time, bool replace)
|
||||
}
|
||||
|
||||
while (cont_flag) {
|
||||
int r = required_string_one_of(3, "#End", "$Subsystem:", "$Name" );
|
||||
int r = required_string_3("#End", "$Subsystem:", "$Name" );
|
||||
switch (r) {
|
||||
case 0:
|
||||
cont_flag = 0;
|
||||
@@ -3657,10 +3755,8 @@ int parse_ship_values(ship_info* sip, bool first_time, bool replace)
|
||||
case 2:
|
||||
cont_flag = 0;
|
||||
break;
|
||||
case -1: // Possible return value if -noparseerrors is used
|
||||
break;
|
||||
default:
|
||||
Assertion(false, "This should never happen.\n"); // Impossible return value from required_string_one_of.
|
||||
Int3(); // Impossible return value from required_string_3.
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -45,10 +45,6 @@ ubyte *Compressed_service_buffer = NULL; // Used to read in compressed data duri
|
||||
|
||||
#define AS_HIGHEST_MAX 999999999 // max uncompressed filesize supported is 999 meg
|
||||
|
||||
// Globalize the list of audio extensions for use in several sound related files
|
||||
const char *audio_ext_list[] = { ".ogg", ".wav" };
|
||||
const int NUM_AUDIO_EXT = sizeof(audio_ext_list) / sizeof(char*);
|
||||
|
||||
|
||||
int Audiostream_inited = 0;
|
||||
|
||||
@@ -440,6 +436,8 @@ bool WaveFile::Open(char *pszFilename, bool keep_ext)
|
||||
int FileSize, FileOffset;
|
||||
char fullpath[MAX_PATH];
|
||||
char filename[MAX_FILENAME_LEN];
|
||||
const int NUM_EXT = 2;
|
||||
const char *audio_ext[NUM_EXT] = { ".ogg", ".wav" };
|
||||
|
||||
m_total_uncompressed_bytes_read = 0;
|
||||
m_max_uncompressed_bytes_to_read = AS_HIGHEST_MAX;
|
||||
@@ -450,8 +448,8 @@ bool WaveFile::Open(char *pszFilename, bool keep_ext)
|
||||
|
||||
// if we are supposed to load the file as passed...
|
||||
if (keep_ext) {
|
||||
for (int i = 0; i < NUM_AUDIO_EXT; i++) {
|
||||
if ( stristr(pszFilename, audio_ext_list[i]) ) {
|
||||
for (int i = 0; i < NUM_EXT; i++) {
|
||||
if ( stristr(pszFilename, audio_ext[i]) ) {
|
||||
rc = i;
|
||||
break;
|
||||
}
|
||||
@@ -465,14 +463,14 @@ bool WaveFile::Open(char *pszFilename, bool keep_ext)
|
||||
}
|
||||
// ... otherwise we just find the best match
|
||||
else {
|
||||
rc = cf_find_file_location_ext(filename, NUM_AUDIO_EXT, audio_ext_list, CF_TYPE_ANY, sizeof(fullpath) - 1, fullpath, &FileSize, &FileOffset);
|
||||
rc = cf_find_file_location_ext(filename, NUM_EXT, audio_ext, CF_TYPE_ANY, sizeof(fullpath) - 1, fullpath, &FileSize, &FileOffset);
|
||||
}
|
||||
|
||||
if (rc < 0) {
|
||||
goto OPEN_ERROR;
|
||||
} else {
|
||||
// set proper filename for later use (assumes that it doesn't already have an extension)
|
||||
strcat_s( filename, audio_ext_list[rc] );
|
||||
strcat_s( filename, audio_ext[rc] );
|
||||
}
|
||||
|
||||
m_snd_info.cfp = mmioOpen( fullpath, NULL, MMIO_ALLOCBUF | MMIO_READ );
|
||||
|
||||
@@ -46,9 +46,6 @@ typedef struct {
|
||||
} STRHDL;
|
||||
#endif // NEED_STRHDL
|
||||
|
||||
extern const char *audio_ext_list[];
|
||||
extern const int NUM_AUDIO_EXT;
|
||||
|
||||
// Initializes the audio streaming library. Called
|
||||
// automatically when the sound stuff is inited.
|
||||
void audiostream_init();
|
||||
|
||||
+3
-2
@@ -18,7 +18,6 @@
|
||||
#include "sound/acm.h"
|
||||
#include "osapi/osapi.h"
|
||||
#include "sound/dscap.h"
|
||||
#include "sound/audiostr.h"
|
||||
|
||||
|
||||
typedef struct sound_buffer
|
||||
@@ -461,6 +460,8 @@ int ds_parse_sound_info(char *real_filename, sound_info *s_info)
|
||||
int rc, FileSize, FileOffset;
|
||||
char fullpath[MAX_PATH];
|
||||
char filename[MAX_FILENAME_LEN];
|
||||
const int NUM_EXT = 2;
|
||||
const char *audio_ext[NUM_EXT] = { ".ogg", ".wav" };
|
||||
int rval = -1;
|
||||
|
||||
if ( (real_filename == NULL) || (s_info == NULL) ) {
|
||||
@@ -472,7 +473,7 @@ int ds_parse_sound_info(char *real_filename, sound_info *s_info)
|
||||
char *p = strrchr(filename, '.');
|
||||
if ( p ) *p = 0;
|
||||
|
||||
rc = cf_find_file_location_ext(filename, NUM_AUDIO_EXT, audio_ext_list, CF_TYPE_ANY, sizeof(fullpath) - 1, fullpath, &FileSize, &FileOffset);
|
||||
rc = cf_find_file_location_ext(filename, NUM_EXT, audio_ext, CF_TYPE_ANY, sizeof(fullpath) - 1, fullpath, &FileSize, &FileOffset);
|
||||
|
||||
if (rc < 0) {
|
||||
return -1;
|
||||
|
||||
+153
-188
@@ -1,188 +1,153 @@
|
||||
<GRAMMAR>
|
||||
<DEFINE>
|
||||
<ID NAME="VID_Counter" VAL="80"/>
|
||||
<ID NAME="VID_DestroyTarget" VAL="10"/>
|
||||
<ID NAME="VID_DisableTarget" VAL="11"/>
|
||||
<ID NAME="VID_DisarmTarget" VAL="12"/>
|
||||
<ID NAME="VID_DestroySubsys" VAL="13"/>
|
||||
<ID NAME="VID_ProtectTarget" VAL="14"/>
|
||||
<ID NAME="VID_IgnoreTarget" VAL="15"/>
|
||||
<ID NAME="VID_FormWing" VAL="16"/>
|
||||
<ID NAME="VID_CoverMe" VAL="17"/>
|
||||
<ID NAME="VID_EngageEnemy" VAL="18"/>
|
||||
<ID NAME="VID_Depart" VAL="19"/>
|
||||
<ID NAME="VID_Action" VAL="250"/>
|
||||
<ID NAME="VID_WingName" VAL="251"/>
|
||||
<ID NAME="VID_TopMenu" VAL="252"/>
|
||||
<ID NAME="VID_ShipName" VAL="253"/>
|
||||
<ID NAME="VID_Number" VAL="254"/>
|
||||
<ID NAME="VID_Ships" VAL="50"/>
|
||||
<ID NAME="VID_Wings" VAL="51"/>
|
||||
<ID NAME="VID_AllFighters" VAL="52"/>
|
||||
<ID NAME="VID_AllWings" VAL="53"/>
|
||||
<ID NAME="VID_Reinforcements" VAL="54"/>
|
||||
<ID NAME="VID_SupportShip" VAL="55"/>
|
||||
<ID NAME="VID_AbortSupport" VAL="56"/>
|
||||
<ID NAME="VID_Cancel" VAL="57"/>
|
||||
<ID NAME="VID_Command" VAL="58"/>
|
||||
<ID NAME="VID_More" VAL="59"/>
|
||||
<ID NAME="VID_shields" VAL="100"/>
|
||||
<ID NAME="VID_targeting" VAL="101"/>
|
||||
<ID NAME="VID_power" VAL="102"/>
|
||||
<ID NAME="VID_speed" VAL="103"/>
|
||||
<ID name="VID_other" VAL="104"/>
|
||||
</DEFINE>
|
||||
|
||||
<RULE ID="VID_WingName" TOPLEVEL="ACTIVE">
|
||||
<L PROPID="VID_WingName">
|
||||
<P VALSTR="Alpha">Alpha</P>
|
||||
<P VALSTR="Beta">Beta</P>
|
||||
<P VALSTR="Gamma">Gamma</P>
|
||||
<P VALSTR="Delta">Delta</P>
|
||||
<P VALSTR="Epsilon">Epsilon</P>
|
||||
<P VALSTR="Zeta">Zeta</P>
|
||||
<P VALSTR="Eta">Eta</P>
|
||||
<P VALSTR="Theta">Theta</P>
|
||||
<P VALSTR="Iota">Iota</P>
|
||||
<P VALSTR="Kappa">Kappa</P>
|
||||
<P VALSTR="Lambda">Lambda</P>
|
||||
<P VALSTR="Mu">Mu</P>
|
||||
<P VALSTR="Nu">Nu</P>
|
||||
<P VALSTR="Xi">Xi</P>
|
||||
<P VALSTR="Omicron">Omicron</P>
|
||||
<P VALSTR="Pi">Pi</P>
|
||||
<P VALSTR="Rho">Rho</P>
|
||||
<P VALSTR="Sigma">Sigma</P>
|
||||
<P VALSTR="Tau">Tau</P>
|
||||
<P VALSTR="Upsilon">Upsilon</P>
|
||||
<P VALSTR="Phi">Phi</P>
|
||||
<P VALSTR="Chi">Chi</P>
|
||||
<P VALSTR="Psi">Psi</P>
|
||||
<P VALSTR="Omega">Omega</P>
|
||||
</L>
|
||||
<L PROPID="VID_ShipName">
|
||||
<P VAl="0">Wing</P>
|
||||
<P VAL="1">one</P>
|
||||
<P VAL="2">two</P>
|
||||
<P VAL="3">three</P>
|
||||
<P VAL="4">four</P>
|
||||
<P VAL="5">five</P>
|
||||
<P VAL="6">six</P>
|
||||
<P VAL="7">seven</P>
|
||||
<P VAL="8">eight</P>
|
||||
<P VAL="9">nine</P>
|
||||
</L>
|
||||
<O>
|
||||
<RULEREF refID="VID_Action"/>
|
||||
</O>
|
||||
</RULE>
|
||||
|
||||
<RULE ID="VID_Action" TOPLEVEL="ACTIVE">
|
||||
<L PROPID="VID_Action">
|
||||
<P VAL="VID_DestroyTarget">Destroy my target</P>
|
||||
<P VAL="VID_DisableTarget">Disable my target</P>
|
||||
<P VAL="VID_DisarmTarget">Disarm my target</P>
|
||||
<P VAL="VID_DestroySubsys">Destroy subsystem</P>
|
||||
<P VAL="VID_ProtectTarget">Protect my target</P>
|
||||
<P VAL="VID_IgnoreTarget">Ignore my target</P>
|
||||
<P VAL="VID_FormWing">Form on my wing</P>
|
||||
<P VAL="VID_CoverMe">Cover me</P>
|
||||
<P VAL="VID_EngageEnemy">Engage the Enemy</P>
|
||||
<P VAL="VID_EngageEnemy">Attack</P>
|
||||
<P VAL="VID_Depart">Depart</P>
|
||||
</L>
|
||||
</RULE>
|
||||
|
||||
<RULE ID="VID_TopMenu" TOPLEVEL="ACTIVE">
|
||||
<L PROPID="VID_TopMenu">
|
||||
<P VAL="VID_Ships">Ships</P>
|
||||
<P VAL="VID_Wings">Wings</P>
|
||||
<P VAL="VID_AllFighters">All Fighters<O><RULEREF REFID="VID_Action"/></O></P>
|
||||
<P VAL="VID_AllWings">All Wings<O><RULEREF REFID="VID_Action"/></O></P>
|
||||
<P VAL="VID_Reinforcements">Reinforcements</P>
|
||||
<P VAL="VID_SupportShip">Support ship</P>
|
||||
<P VAL="VID_SupportShip">Rearm <O>and repair</O></P>
|
||||
<P VAL="VID_SupportShip">Repair <O>and rearm</O></P>
|
||||
<P VAL="VID_AbortSupport">Abort <L><P>support <O>ship</O></P><P>rearm <O>and repair</O></P><P>repair <O>and rearm</O></P></L></P>
|
||||
<P VAL="VID_Cancel">Cancel</P>
|
||||
<P VAL="VID_Command">Command</P>
|
||||
<P VAL="VID_More">More</P>
|
||||
</L>
|
||||
</RULE>
|
||||
|
||||
<RULE ID="VID_shields" TOPLEVEL="ACTIVE">
|
||||
<L PROPID="VID_shields">
|
||||
<P VAL="0">Shields forward</P>
|
||||
<P VAL="1">Shields left</P>
|
||||
<P VAL="2">Shields right</P>
|
||||
<P VAL="3">Shields back</P>
|
||||
<P VAL="4">Shields all</P>
|
||||
</L>
|
||||
</RULE>
|
||||
|
||||
<RULE ID="VID_targeting" TOPLEVEL="ACTIVE">
|
||||
<L PROPID="VID_targeting">
|
||||
<P VAL="0">Target next</P>
|
||||
<P VAL="1">Target previous</P>
|
||||
<P VAL="2">Target hostile</P>
|
||||
<P VAL="3">Target previous hostile</P>
|
||||
<P VAL="4">Auto target</P>
|
||||
<P VAL="5">Target Friendly</P>
|
||||
<P VAL="6">Target previous friendly</P>
|
||||
<P VAL="7">Target sight</P>
|
||||
<P VAL="8">Targets attacker</P>
|
||||
<P VAL="9">Target sender</P>
|
||||
<P VAL="10">Stop targeting</P>
|
||||
<P VAL="11">Target sight subsystem</P>
|
||||
<P VAL="12">Target next subsystem</P>
|
||||
<P VAL="13">Target previous subsystem</P>
|
||||
<P VAL="14">Stop targeting subsystems</P>
|
||||
<P val="50">Target closest attacker</P>
|
||||
<P VAL="88">Target next escort</P>
|
||||
<P VAL="89">Target closest repair ship</P>
|
||||
<P VAL="90">Target next uninspected</P>
|
||||
<P VAL="91">Target previous uninspected</P>
|
||||
<P VAL="92">Target newest</P>
|
||||
<P VAL="93">Target next turret</P>
|
||||
<P VAL="94">Target previous turret</P>
|
||||
<P VAL="95">Target next bomb</P>
|
||||
<P VAL="96">Target previous bomb</P>
|
||||
</L>
|
||||
</RULE>
|
||||
|
||||
<RULE ID="VID_speed" TOPLEVEL="ACTIVE">
|
||||
<L PROPID="VID_speed">
|
||||
<P VAL="15">Match speed</P>
|
||||
<P VAL="16">Auto match</P>
|
||||
</L>
|
||||
</RULE>
|
||||
|
||||
<RULE ID="VID_other" TOPLEVEL="ACTIVE">
|
||||
<L PROPID="VID_other">
|
||||
<P VAL="19">Next primary</P>
|
||||
<P VAL="20">Previous primary</P>
|
||||
<P VAL="21">cycle secondary</P>
|
||||
<P VAL="22">secondary rate</P>
|
||||
<P VAL="63">Radar Range</P>
|
||||
<P VAL="117">Glide toggle</P>
|
||||
</L>
|
||||
</RULE>
|
||||
|
||||
<RULE ID="VID_power" TOPLEVEL="ACTIVE">
|
||||
<L PROPID="VID_power">
|
||||
<P VAL="69">Increase weapon</P>
|
||||
<P VAL="70">Decrease weapon</P>
|
||||
<P VAL="71">Increase shield</P>
|
||||
<P VAL="72">Decrease shield</P>
|
||||
<P VAL="73">Increase engine</P>
|
||||
<P VAL="74">Decrease engine</P>
|
||||
<P VAL="75">Power balance</P>
|
||||
<P VAL="201">Max weapons</P>
|
||||
<P VAL="202">Min weapons</P>
|
||||
<P VAL="203">Max shields</P>
|
||||
<P VAL="204">Min shields</P>
|
||||
<P VAL="205">Max engines</P>
|
||||
<P VAL="206">Min engines</P>
|
||||
</L>
|
||||
</RULE>
|
||||
</GRAMMAR>
|
||||
<GRAMMAR LANGID="409">
|
||||
<DEFINE>
|
||||
<ID NAME="VID_Counter" VAL="80"/>
|
||||
|
||||
<ID NAME="VID_DestoryTarget" VAL="10"/>
|
||||
<ID NAME="VID_DisableTarget" VAL="11"/>
|
||||
<ID NAME="VID_DisarmTarget" VAL="12"/>
|
||||
|
||||
<ID NAME="VID_DestroySubsys" VAL="13"/>
|
||||
|
||||
<ID NAME="VID_ProtectTarget" VAL="14"/>
|
||||
<ID NAME="VID_IgnoreTarget" VAL="15"/>
|
||||
<ID NAME="VID_FormWing" VAL="16"/>
|
||||
<ID NAME="VID_CoverMe" VAL="17"/>
|
||||
<ID NAME="VID_EngageEnemy" VAL="18"/>
|
||||
<ID NAME="VID_Depart" VAL="19"/>
|
||||
|
||||
<ID NAME="VID_Action" VAL="250"/>
|
||||
|
||||
<ID NAME="VID_WingName" VAL="251"/>
|
||||
<ID NAME="VID_TopMenu" VAL="252"/>
|
||||
<ID NAME="VID_ShipName" VAL="253"/>
|
||||
<ID NAME="VID_Number" VAL="254"/>
|
||||
|
||||
<ID NAME="VID_Ships" VAL="50"/>
|
||||
<ID NAME="VID_Wings" VAL="51"/>
|
||||
<ID NAME="VID_AllFighters" VAL="52"/>
|
||||
<ID NAME="VID_AllWings" VAL="53"/>
|
||||
|
||||
<ID NAME="VID_Reinforcements" VAL="54"/>
|
||||
|
||||
<ID NAME="VID_SupportShip" VAL="55"/>
|
||||
<ID NAME="VID_AbortSupport" VAL="56"/>
|
||||
|
||||
<ID NAME="VID_Cancel" VAL="57"/>
|
||||
<ID NAME="VID_Command" VAL="58"/>
|
||||
<ID NAME="VID_More" VAL="59"/>
|
||||
|
||||
|
||||
</DEFINE>
|
||||
|
||||
|
||||
<RULE ID="VID_WingName" TOPLEVEL="ACTIVE">
|
||||
<L PROPID="VID_WingName">
|
||||
<P VAL="0">Alpha</P>
|
||||
<P VAL="1">Beta</P>
|
||||
<P VAL="2">Gamma</P>
|
||||
<P VAL="3">Delta</P>
|
||||
<P VAL="4">Epsilon</P>
|
||||
<P VAL="5">Zeta</P>
|
||||
<P VAL="6">Eta</P>
|
||||
<P VAL="7">Theta</P>
|
||||
<P VAL="8">Iota</P>
|
||||
<P VAL="9">Kappa</P>
|
||||
<P VAL="10">Lambda</P>
|
||||
<P VAL="11">Mu</P>
|
||||
<P VAL="12">Nu</P>
|
||||
<P VAL="13">Xi</P>
|
||||
<P VAL="14">Omicron</P>
|
||||
<P VAL="15">Pi</P>
|
||||
<P VAL="16">Rho</P>
|
||||
<P VAL="17">Sigma</P>
|
||||
<P VAL="18">Tau</P>
|
||||
<P VAL="19">Upsilon</P>
|
||||
<P VAL="20">Phi</P>
|
||||
<P VAL="21">Chi</P>
|
||||
<P VAL="22">Psi</P>
|
||||
<P VAL="23">Omega</P>
|
||||
</L>
|
||||
<O>wing</O>
|
||||
</RULE>
|
||||
|
||||
<RULE ID="VID_ShipName" TOPLEVEL="ACTIVE">
|
||||
<L PROPID="VID_ShipName">
|
||||
<P VAL="0">Alpha</P>
|
||||
<P VAL="1">Beta</P>
|
||||
<P VAL="2">Gamma</P>
|
||||
<P VAL="3">Delta</P>
|
||||
<P VAL="4">Epsilon</P>
|
||||
<P VAL="5">Zeta</P>
|
||||
<P VAL="6">Eta</P>
|
||||
<P VAL="7">Theta</P>
|
||||
<P VAL="8">Iota</P>
|
||||
<P VAL="9">Kappa</P>
|
||||
<P VAL="10">Lambda</P>
|
||||
<P VAL="11">Mu</P>
|
||||
<P VAL="12">Nu</P>
|
||||
<P VAL="13">Xi</P>
|
||||
<P VAL="14">Omicron</P>
|
||||
<P VAL="15">Pi</P>
|
||||
<P VAL="16">Rho</P>
|
||||
<P VAL="17">Sigma</P>
|
||||
<P VAL="18">Tau</P>
|
||||
<P VAL="19">Upsilon</P>
|
||||
<P VAL="20">Phi</P>
|
||||
<P VAL="21">Chi</P>
|
||||
<P VAL="22">Psi</P>
|
||||
<P VAL="23">Omega</P>
|
||||
</L>
|
||||
<L PROPID="VID_Number">
|
||||
<P VAL = "1">one</P>
|
||||
<P VAL = "2">two</P>
|
||||
<P VAL = "3">three</P>
|
||||
<P VAL = "4">four</P>
|
||||
<P VAL = "5">five</P>
|
||||
<P VAL = "6">six</P>
|
||||
<P VAL = "7">seven</P>
|
||||
<P VAL = "8">eight</P>
|
||||
<P VAL = "9">nine</P>
|
||||
</L>
|
||||
|
||||
</RULE>
|
||||
|
||||
<RULE ID="VID_TopMenu" TOPLEVEL="ACTIVE">
|
||||
<L PROPID="VID_TopMenu">
|
||||
<P VAL="VID_Ships" >Ships</P>
|
||||
<P VAL="VID_Wings" >Wings</P>
|
||||
<P VAL="VID_AllFighters">All Fighters</P>
|
||||
<P VAL="VID_AllWings" >All Wings</P>
|
||||
|
||||
<P VAL="VID_Reinforcements">Reinforcements</P>
|
||||
|
||||
<P VAL="VID_SupportShip">Support ship</P>
|
||||
<P VAL="VID_SupportShip">Rearm</P>
|
||||
<P VAL="VID_SupportShip">Repair</P>
|
||||
<P VAL="VID_AbortSupport">Abort</P>
|
||||
|
||||
<P VAL="VID_Cancel">Cancel</P>
|
||||
<P VAL="VID_Command">Command</P>
|
||||
<P VAL="VID_More">More</P>
|
||||
</L>
|
||||
</RULE>
|
||||
|
||||
<RULE ID="VID_Action" TOPLEVEL="ACTIVE">
|
||||
<L PROPID="VID_Action">
|
||||
|
||||
<P VAL="VID_DestoryTarget">Destroy my target</P>
|
||||
<P VAL="VID_DisableTarget">Disable my target</P>
|
||||
<P VAL="VID_DisarmTarget" >Disarm my target</P>
|
||||
|
||||
<P VAL="VID_DestroySubsys">Destroy subsystem</P>
|
||||
|
||||
<P VAL="VID_ProtectTarget">Protect my target</P>
|
||||
<P VAL="VID_IgnoreTarget" >Ignore my target</P>
|
||||
<P VAL="VID_FormWing" >Form on my wing</P>
|
||||
<P VAL="VID_CoverMe" >Cover me</P>
|
||||
<P VAL="VID_EngageEnemy" >Engage Enemy</P>
|
||||
<P VAL="VID_EngageEnemy" >Attack</P>
|
||||
<P VAL="VID_Depart" >Depart</P>
|
||||
</L>
|
||||
</RULE>
|
||||
|
||||
</GRAMMAR>
|
||||
@@ -285,6 +285,8 @@ int snd_load( game_snd *gs, int allow_hardware_load )
|
||||
int rc, FileSize, FileOffset;
|
||||
char fullpath[MAX_PATH];
|
||||
char filename[MAX_FILENAME_LEN];
|
||||
const int NUM_EXT = 2;
|
||||
const char *audio_ext[NUM_EXT] = { ".ogg", ".wav" };
|
||||
size_t n;
|
||||
|
||||
|
||||
@@ -329,7 +331,7 @@ int snd_load( game_snd *gs, int allow_hardware_load )
|
||||
char *p = strrchr(filename, '.');
|
||||
if ( p ) *p = 0;
|
||||
|
||||
rc = cf_find_file_location_ext(filename, NUM_AUDIO_EXT, audio_ext_list, CF_TYPE_ANY, sizeof(fullpath) - 1, fullpath, &FileSize, &FileOffset);
|
||||
rc = cf_find_file_location_ext(filename, NUM_EXT, audio_ext, CF_TYPE_ANY, sizeof(fullpath) - 1, fullpath, &FileSize, &FileOffset);
|
||||
|
||||
if (rc < 0)
|
||||
return -1;
|
||||
@@ -338,7 +340,7 @@ int snd_load( game_snd *gs, int allow_hardware_load )
|
||||
CFILE *fp = cfopen_special(fullpath, "rb", FileSize, FileOffset);
|
||||
|
||||
// ok, we got it, so set the proper filename for logging purposes
|
||||
strcat_s(filename, audio_ext_list[rc]);
|
||||
strcat_s(filename, audio_ext[rc]);
|
||||
|
||||
nprintf(("Sound", "SOUND => Loading '%s'\n", filename));
|
||||
|
||||
|
||||
+226
-342
@@ -32,7 +32,6 @@
|
||||
#include "io/keycontrol.h"
|
||||
#include "playerman/player.h"
|
||||
#include "ship/ship.h"
|
||||
#include "cfile/cfile.h"
|
||||
|
||||
CComPtr<ISpRecoGrammar> p_grammarObject; // Pointer to our grammar object
|
||||
CComPtr<ISpRecoContext> p_recogContext; // Pointer to our recognition context
|
||||
@@ -40,190 +39,101 @@ CComPtr<ISpRecognizer> p_recogEngine; // Pointer to our recognition engine i
|
||||
|
||||
const bool DEBUG_ON = false;
|
||||
|
||||
extern int button_function(int n);
|
||||
extern void hud_squadmsg_msg_all_fighters();
|
||||
extern void hud_squadmsg_shortcut( int command );
|
||||
|
||||
//extern void hud_squadmsg_ship_command();
|
||||
extern int Msg_instance;;
|
||||
extern int Msg_shortcut_command;
|
||||
extern int Squad_msg_mode;
|
||||
|
||||
void doVid_Action(int action)
|
||||
{
|
||||
// If menu is up
|
||||
if(Player->flags & PLAYER_FLAGS_MSG_MODE)
|
||||
{
|
||||
switch(action)
|
||||
{
|
||||
case VID_DestroyTarget: Msg_shortcut_command = ATTACK_TARGET_ITEM; break;
|
||||
case VID_DisableTarget: Msg_shortcut_command = DISABLE_TARGET_ITEM; break;
|
||||
case VID_DisarmTarget: Msg_shortcut_command = DISARM_TARGET_ITEM; break;
|
||||
case VID_DestroySubsys: Msg_shortcut_command = DISABLE_SUBSYSTEM_ITEM; break;
|
||||
case VID_ProtectTarget: Msg_shortcut_command = PROTECT_TARGET_ITEM; break;
|
||||
case VID_IgnoreTarget: Msg_shortcut_command = IGNORE_TARGET_ITEM; break;
|
||||
case VID_FormWing: Msg_shortcut_command = FORMATION_ITEM; break;
|
||||
case VID_CoverMe: Msg_shortcut_command = COVER_ME_ITEM; break;
|
||||
case VID_EngageEnemy: Msg_shortcut_command = ENGAGE_ENEMY_ITEM; break;
|
||||
case VID_Depart: Msg_shortcut_command = DEPART_ITEM; break;
|
||||
default: Msg_shortcut_command = -1; break;
|
||||
|
||||
}
|
||||
|
||||
if(Msg_instance == MESSAGE_ALL_FIGHTERS || Squad_msg_mode == SM_MODE_ALL_FIGHTERS )
|
||||
{
|
||||
// nprintf(("warning", "VOICER hud_squadmsg_send_to_all_fighters\n"));
|
||||
hud_squadmsg_send_to_all_fighters(Msg_shortcut_command);
|
||||
}
|
||||
else if(Squad_msg_mode == SM_MODE_SHIP_COMMAND)
|
||||
{
|
||||
// nprintf(("warning", "VOICER msg ship %d\n", Msg_instance));
|
||||
hud_squadmsg_send_ship_command( Msg_instance, Msg_shortcut_command, 1 );
|
||||
}
|
||||
else if(Squad_msg_mode == SM_MODE_WING_COMMAND)
|
||||
{
|
||||
// nprintf(("warning", "VOICER msg wing %d\n", Msg_instance));
|
||||
hud_squadmsg_send_wing_command( Msg_instance, Msg_shortcut_command, 1 );
|
||||
}
|
||||
else if(Squad_msg_mode == SM_MODE_REINFORCEMENTS )
|
||||
{
|
||||
}
|
||||
|
||||
hud_squadmsg_toggle();
|
||||
}
|
||||
else
|
||||
{
|
||||
switch(action)
|
||||
{
|
||||
case VID_DestroyTarget: button_function(ATTACK_MESSAGE); break;
|
||||
case VID_DisableTarget: button_function(DISABLE_MESSAGE); break;
|
||||
case VID_DisarmTarget: button_function(DISARM_MESSAGE); break;
|
||||
case VID_DestroySubsys: button_function(ATTACK_SUBSYSTEM_MESSAGE); break;
|
||||
case VID_ProtectTarget: button_function(PROTECT_MESSAGE); break;
|
||||
case VID_IgnoreTarget: button_function(IGNORE_MESSAGE); break;
|
||||
case VID_FormWing: button_function(FORM_MESSAGE); break;
|
||||
case VID_CoverMe: button_function(COVER_MESSAGE); break;
|
||||
case VID_EngageEnemy: button_function(ENGAGE_MESSAGE); break;
|
||||
case VID_Depart: button_function(WARP_MESSAGE); break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
bool VOICEREC_init(HWND hWnd, int event_id, int grammar_id, int command_resource)
|
||||
{
|
||||
HRESULT hr = S_OK;
|
||||
CComPtr<ISpAudio> cpAudio;
|
||||
HRESULT hr = S_OK;
|
||||
CComPtr<ISpAudio> cpAudio;
|
||||
|
||||
while (true)
|
||||
{
|
||||
// create a recognition engine
|
||||
hr = p_recogEngine.CoCreateInstance(CLSID_SpInprocRecognizer);
|
||||
if (FAILED(hr))
|
||||
{
|
||||
while ( 1 )
|
||||
{
|
||||
// create a recognition engine
|
||||
hr = p_recogEngine.CoCreateInstance(CLSID_SpSharedRecognizer);
|
||||
if ( FAILED( hr ) )
|
||||
{
|
||||
MessageBox(hWnd,"Failed to create a recognition engine\n","Error",MB_OK);
|
||||
printf("Failed to create a recognition engine\n");
|
||||
break;
|
||||
}
|
||||
|
||||
// create the command recognition context
|
||||
hr = p_recogEngine->CreateRecoContext( &p_recogContext );
|
||||
if (FAILED(hr))
|
||||
{
|
||||
break;
|
||||
}
|
||||
|
||||
// create the command recognition context
|
||||
hr = p_recogEngine->CreateRecoContext( &p_recogContext );
|
||||
if ( FAILED( hr ) )
|
||||
{
|
||||
MessageBox(hWnd,"Failed to create the command recognition context\n","Error",MB_OK);
|
||||
printf("Failed to create the command recognition context\n");
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
// Let SR know that window we want it to send event information to, and using
|
||||
// what message
|
||||
hr = p_recogContext->SetNotifyWindowMessage( hWnd, event_id, 0, 0 );
|
||||
if (FAILED(hr))
|
||||
{
|
||||
// Let SR know that window we want it to send event information to, and using
|
||||
// what message
|
||||
hr = p_recogContext->SetNotifyWindowMessage( hWnd, event_id, 0, 0 );
|
||||
if ( FAILED( hr ) )
|
||||
{
|
||||
MessageBox(hWnd,"Failed to SetNotifyWindowMessage\n","Error",MB_OK);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
// Tell SR what types of events interest us. Here we only care about command
|
||||
// recognition.
|
||||
hr = p_recogContext->SetInterest( SPFEI(SPEI_RECOGNITION), SPFEI(SPEI_RECOGNITION) );
|
||||
if (FAILED(hr))
|
||||
{
|
||||
// Tell SR what types of events interest us. Here we only care about command
|
||||
// recognition.
|
||||
hr = p_recogContext->SetInterest( SPFEI(SPEI_RECOGNITION), SPFEI(SPEI_RECOGNITION) );
|
||||
if ( FAILED( hr ) )
|
||||
{
|
||||
MessageBox(hWnd,"Failed to set events\n","Error",MB_OK);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
// Create a grammar
|
||||
hr = p_recogContext->CreateGrammar(grammar_id, &p_grammarObject);
|
||||
if (FAILED(hr))
|
||||
{
|
||||
MessageBox(hWnd,"Failed to create grammar\n","Error",MB_OK);
|
||||
break;
|
||||
}
|
||||
// Load our grammar, which is the compiled form of simple.xml bound into this executable as a
|
||||
// user defined ("SRGRAMMAR") resource type.
|
||||
hr = p_recogContext->CreateGrammar(grammar_id, &p_grammarObject);
|
||||
if (FAILED(hr))
|
||||
{
|
||||
MessageBox(hWnd,"Failed to load grammar\n","Error",MB_OK);
|
||||
break;
|
||||
}
|
||||
|
||||
// Load our grammar from data\phrases.xml, or if that doesn't exist, from the compiled in
|
||||
// user defined ("SRGRAMMAR") resource type.
|
||||
hr = p_grammarObject->LoadCmdFromFile(L"data\\phrases.xml", SPLO_STATIC);
|
||||
if (FAILED(hr))
|
||||
{
|
||||
hr = p_grammarObject->LoadCmdFromResource(NULL, MAKEINTRESOURCEW(command_resource),
|
||||
L"SRGRAMMAR", MAKELANGID(LANG_NEUTRAL, SUBLANG_NEUTRAL),
|
||||
SPLO_STATIC);
|
||||
if (FAILED(hr))
|
||||
{
|
||||
MessageBox(hWnd,"Failed to load resource\n","Error",MB_OK);
|
||||
break;
|
||||
}
|
||||
}
|
||||
hr = p_grammarObject->LoadCmdFromResource(NULL, MAKEINTRESOURCEW(command_resource),
|
||||
L"SRGRAMMAR", MAKELANGID(LANG_NEUTRAL, SUBLANG_NEUTRAL),
|
||||
SPLO_DYNAMIC);
|
||||
if ( FAILED( hr ) )
|
||||
{
|
||||
MessageBox(hWnd,"Failed to load resource\n","Error",MB_OK);
|
||||
break;
|
||||
}
|
||||
|
||||
hr = SpCreateDefaultObjectFromCategoryId(SPCAT_AUDIOIN, &cpAudio);
|
||||
if (FAILED(hr))
|
||||
{
|
||||
MessageBox(hWnd,"Failed to get default audio input\n", "Error", MB_OK);
|
||||
break;
|
||||
}
|
||||
|
||||
// Set the audio input to our token.
|
||||
hr = p_recogEngine->SetInput(cpAudio, TRUE);
|
||||
if (FAILED(hr))
|
||||
{
|
||||
MessageBox(hWnd,"Failed to set audio input\n", "Error", MB_OK);
|
||||
}
|
||||
|
||||
// Set rules to active, we are now listening for commands
|
||||
hr = p_grammarObject->SetRuleState(NULL, NULL, SPRS_ACTIVE );
|
||||
if (FAILED(hr))
|
||||
{
|
||||
// Set rules to active, we are now listening for commands
|
||||
hr = p_grammarObject->SetRuleState(NULL, NULL, SPRS_ACTIVE );
|
||||
if ( FAILED( hr ) )
|
||||
{
|
||||
MessageBox(hWnd,"Failed to set listening for commands\n","Error",MB_OK);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
// if we failed and have a partially setup SAPI, close it all down
|
||||
if (FAILED(hr))
|
||||
{
|
||||
VOICEREC_deinit();
|
||||
}
|
||||
// if we failed and have a partially setup SAPI, close it all down
|
||||
if ( FAILED( hr ) )
|
||||
{
|
||||
VOICEREC_deinit();
|
||||
}
|
||||
|
||||
return ( hr == S_OK);
|
||||
return ( hr == S_OK);
|
||||
}
|
||||
|
||||
void VOICEREC_deinit()
|
||||
{
|
||||
// Release grammar, if loaded
|
||||
if ( p_grammarObject )
|
||||
{
|
||||
p_grammarObject.Release();
|
||||
}
|
||||
// Release recognition context, if created
|
||||
if ( p_recogContext )
|
||||
{
|
||||
p_recogContext->SetNotifySink(NULL);
|
||||
p_recogContext.Release();
|
||||
}
|
||||
// Release recognition engine instance, if created
|
||||
// Release grammar, if loaded
|
||||
if ( p_grammarObject )
|
||||
{
|
||||
p_grammarObject.Release();
|
||||
}
|
||||
// Release recognition context, if created
|
||||
if ( p_recogContext )
|
||||
{
|
||||
p_recogContext->SetNotifySink(NULL);
|
||||
p_recogContext.Release();
|
||||
}
|
||||
// Release recognition engine instance, if created
|
||||
if ( p_recogEngine )
|
||||
{
|
||||
p_recogEngine.Release();
|
||||
@@ -233,22 +143,51 @@ void VOICEREC_deinit()
|
||||
void VOICEREC_execute_command(ISpPhrase *pPhrase, HWND hWnd);
|
||||
void VOICEREC_process_event(HWND hWnd)
|
||||
{
|
||||
CSpEvent event; // Event helper class
|
||||
CSpEvent event; // Event helper class
|
||||
|
||||
// Loop processing events while there are any in the queue
|
||||
while (event.GetFrom(p_recogContext) == S_OK)
|
||||
{
|
||||
// Look at recognition event only
|
||||
switch (event.eEventId)
|
||||
{
|
||||
case SPEI_RECOGNITION:
|
||||
VOICEREC_execute_command(event.RecoResult(), hWnd);
|
||||
break;
|
||||
// Loop processing events while there are any in the queue
|
||||
while (event.GetFrom(p_recogContext) == S_OK)
|
||||
{
|
||||
// Look at recognition event only
|
||||
switch (event.eEventId)
|
||||
{
|
||||
case SPEI_RECOGNITION:
|
||||
VOICEREC_execute_command(event.RecoResult(), hWnd);
|
||||
break;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Its not enough to update this, phrases.xml must have this info as well
|
||||
char *wing_names[] =
|
||||
{
|
||||
"Alpha",
|
||||
"Beta",
|
||||
"Gamma",
|
||||
"Delta",
|
||||
"Epsilon",
|
||||
"Zeta",
|
||||
"Eta",
|
||||
"Theta",
|
||||
"Iota",
|
||||
"Kappa",
|
||||
"Lambda",
|
||||
"Mu",
|
||||
"Nu",
|
||||
"Xi",
|
||||
"Omicron",
|
||||
"Pi",
|
||||
"Rho",
|
||||
"Sigma",
|
||||
"Tau",
|
||||
"Upsilon",
|
||||
"Phi",
|
||||
"Chi",
|
||||
"Psi",
|
||||
"Omega",
|
||||
};
|
||||
|
||||
/******************************************************************************
|
||||
* ExecuteCommand *
|
||||
*----------------*
|
||||
@@ -256,132 +195,135 @@ void VOICEREC_process_event(HWND hWnd)
|
||||
* Called to Execute commands that have been identified by the speech engine.
|
||||
*
|
||||
******************************************************************************/
|
||||
extern int button_function(int n);
|
||||
extern void hud_squadmsg_msg_all_fighters();
|
||||
extern void hud_squadmsg_shortcut( int command );
|
||||
|
||||
//extern void hud_squadmsg_ship_command();
|
||||
extern int Msg_instance;;
|
||||
extern int Msg_shortcut_command;
|
||||
extern int Squad_msg_mode;
|
||||
|
||||
char VOICEREC_lastCommand[30];
|
||||
|
||||
void VOICEREC_execute_command(ISpPhrase *pPhrase, HWND hWnd)
|
||||
{
|
||||
SPPHRASE *pElements;
|
||||
SPPHRASE *pElements;
|
||||
|
||||
// Get the phrase elements, one of which is the rule id we specified in
|
||||
// the grammar. Switch on it to figure out which command was recognized.
|
||||
if (SUCCEEDED(pPhrase->GetPhrase(&pElements)))
|
||||
{
|
||||
#ifndef NDEBUG
|
||||
// Get the phrase elements, one of which is the rule id we specified in
|
||||
// the grammar. Switch on it to figure out which command was recognized.
|
||||
if (SUCCEEDED(pPhrase->GetPhrase(&pElements)))
|
||||
{
|
||||
if(DEBUG_ON)
|
||||
{
|
||||
WCHAR *pwszText;
|
||||
char szText[255];
|
||||
int i;
|
||||
|
||||
pPhrase->GetText(SP_GETWHOLEPHRASE, SP_GETWHOLEPHRASE, TRUE, &pwszText, NULL);
|
||||
|
||||
memset(szText, 0, 255);
|
||||
for (i=0;i<254;i++)
|
||||
MessageBoxW(NULL,pwszText,NULL,MB_OK);
|
||||
}
|
||||
|
||||
switch ( pElements->Rule.ulId )
|
||||
{
|
||||
case VID_ShipName:
|
||||
{
|
||||
if (*(pwszText + i) == 0)
|
||||
int wingType = pElements->pProperties->vValue.ulVal;
|
||||
int shipNum = pElements->pProperties->pNextSibling->vValue.ulVal;
|
||||
|
||||
char shipName[NAME_LENGTH];
|
||||
wing_bash_ship_name(shipName, wing_names[wingType], shipNum);
|
||||
|
||||
Msg_instance = ship_name_lookup(shipName);
|
||||
|
||||
// Can't issue commands to yourself or to nobody
|
||||
if(Msg_instance < 0 || Msg_instance == Player_obj->instance)
|
||||
{
|
||||
break;
|
||||
}
|
||||
szText[i] = (char)(*(pwszText + i));
|
||||
szText[i+1] = 0;
|
||||
|
||||
if(!(Player->flags & PLAYER_FLAGS_MSG_MODE))
|
||||
{
|
||||
hud_squadmsg_toggle();
|
||||
}
|
||||
|
||||
hud_squadmsg_do_mode(SM_MODE_SHIP_COMMAND);
|
||||
break;
|
||||
}
|
||||
|
||||
mprintf(( "recognized speech : %s \n", szText ));
|
||||
mprintf(( "speech Rule.ulId : %d \n", pElements->Rule.ulId ));
|
||||
//MessageBoxW(NULL,pwszText,NULL,MB_OK);
|
||||
|
||||
::CoTaskMemFree(pwszText);
|
||||
}
|
||||
#endif
|
||||
int part1, part2, part3;
|
||||
part1 = part2 = part3 = -1;
|
||||
switch ( pElements->Rule.ulId )
|
||||
{
|
||||
|
||||
case VID_WingName:
|
||||
{
|
||||
int wingType = pElements->pProperties->vValue.ulVal;
|
||||
|
||||
part1 = pElements->pProperties->vValue.ulVal;
|
||||
if (pElements->pProperties->pNextSibling)
|
||||
{
|
||||
part2 = pElements->pProperties->pNextSibling->vValue.ulVal;
|
||||
if (pElements->pProperties->pNextSibling->pNextSibling)
|
||||
{
|
||||
part3 = pElements->pProperties->pNextSibling->pNextSibling->vValue.ulVal;
|
||||
}
|
||||
}
|
||||
if (part2 == -1)
|
||||
break; // no ship number or wing
|
||||
|
||||
const wchar_t* valstr = pElements->pProperties->pszValue;
|
||||
char* wing_name = new char[wcslen(valstr)+1];
|
||||
|
||||
size_t j = 0;
|
||||
|
||||
for (size_t i = 0; i < wcslen(valstr); i++) {
|
||||
int c = wctob(valstr[i]);
|
||||
if (c != EOF) {
|
||||
wing_name[j++] = static_cast<char>(c);
|
||||
}
|
||||
}
|
||||
wing_name[j] = '\0';
|
||||
|
||||
if (part2 == 0)
|
||||
{
|
||||
Msg_instance = wing_lookup(wing_name);
|
||||
delete[] wing_name;
|
||||
|
||||
if (Msg_instance < 0)
|
||||
break;
|
||||
|
||||
if(!(Player->flags & PLAYER_FLAGS_MSG_MODE))
|
||||
{
|
||||
hud_squadmsg_toggle();
|
||||
}
|
||||
|
||||
hud_squadmsg_do_mode(SM_MODE_WING_COMMAND);
|
||||
}
|
||||
else
|
||||
{
|
||||
char shipName[NAME_LENGTH];
|
||||
wing_bash_ship_name(shipName, wing_name, part2);
|
||||
delete[] wing_name;
|
||||
|
||||
Msg_instance = ship_name_lookup(shipName);
|
||||
|
||||
// Can't issue commands to yourself or to nobody
|
||||
if (Msg_instance < 0 || Msg_instance == Player_obj->instance)
|
||||
{
|
||||
break;
|
||||
}
|
||||
|
||||
if(!(Player->flags & PLAYER_FLAGS_MSG_MODE))
|
||||
{
|
||||
hud_squadmsg_toggle();
|
||||
}
|
||||
|
||||
hud_squadmsg_do_mode(SM_MODE_SHIP_COMMAND);
|
||||
|
||||
}
|
||||
|
||||
if (part3 == -1)
|
||||
Msg_instance = wing_lookup(wing_names[wingType]);
|
||||
if (Msg_instance < 0)
|
||||
break;
|
||||
|
||||
if(!(Player->flags & PLAYER_FLAGS_MSG_MODE))
|
||||
{
|
||||
hud_squadmsg_toggle();
|
||||
}
|
||||
|
||||
hud_squadmsg_do_mode(SM_MODE_WING_COMMAND);
|
||||
break;
|
||||
}
|
||||
|
||||
case VID_Action:
|
||||
{
|
||||
int action;
|
||||
if (part3 == -1)
|
||||
int action = pElements->pProperties->vValue.ulVal;
|
||||
|
||||
// If menu is up
|
||||
if(Player->flags & PLAYER_FLAGS_MSG_MODE)
|
||||
{
|
||||
action = pElements->pProperties->vValue.ulVal;
|
||||
switch(action)
|
||||
{
|
||||
case VID_DestoryTarget: Msg_shortcut_command = ATTACK_TARGET_ITEM; break;
|
||||
case VID_DisableTarget: Msg_shortcut_command = DISABLE_TARGET_ITEM; break;
|
||||
case VID_DisarmTarget: Msg_shortcut_command = DISARM_TARGET_ITEM; break;
|
||||
case VID_DestroySubsys: Msg_shortcut_command = DISABLE_SUBSYSTEM_ITEM; break;
|
||||
case VID_ProtectTarget: Msg_shortcut_command = PROTECT_TARGET_ITEM; break;
|
||||
case VID_IgnoreTarget: Msg_shortcut_command = IGNORE_TARGET_ITEM; break;
|
||||
case VID_FormWing: Msg_shortcut_command = FORMATION_ITEM; break;
|
||||
case VID_CoverMe: Msg_shortcut_command = COVER_ME_ITEM; break;
|
||||
case VID_EngageEnemy: Msg_shortcut_command = ENGAGE_ENEMY_ITEM; break;
|
||||
case VID_Depart: Msg_shortcut_command = DEPART_ITEM; break;
|
||||
default: Msg_shortcut_command = -1; break;
|
||||
|
||||
}
|
||||
|
||||
if(Msg_instance == MESSAGE_ALL_FIGHTERS || Squad_msg_mode == SM_MODE_ALL_FIGHTERS )
|
||||
{
|
||||
// nprintf(("warning", "VOICER hud_squadmsg_send_to_all_fighters\n"));
|
||||
hud_squadmsg_send_to_all_fighters(Msg_shortcut_command);
|
||||
}
|
||||
else if(Squad_msg_mode == SM_MODE_SHIP_COMMAND)
|
||||
{
|
||||
// nprintf(("warning", "VOICER msg ship %d\n", Msg_instance));
|
||||
hud_squadmsg_send_ship_command( Msg_instance, Msg_shortcut_command, 1 );
|
||||
}
|
||||
else if(Squad_msg_mode == SM_MODE_WING_COMMAND)
|
||||
{
|
||||
// nprintf(("warning", "VOICER msg wing %d\n", Msg_instance));
|
||||
hud_squadmsg_send_wing_command( Msg_instance, Msg_shortcut_command, 1 );
|
||||
}
|
||||
else if(Squad_msg_mode == SM_MODE_REINFORCEMENTS )
|
||||
{
|
||||
}
|
||||
|
||||
hud_squadmsg_toggle();
|
||||
}
|
||||
else
|
||||
{
|
||||
action = part3;
|
||||
switch(action)
|
||||
{
|
||||
case VID_DestoryTarget: button_function(ATTACK_MESSAGE); break;
|
||||
case VID_DisableTarget: button_function(DISABLE_MESSAGE); break;
|
||||
case VID_DisarmTarget: button_function(DISARM_MESSAGE); break;
|
||||
case VID_DestroySubsys: button_function(ATTACK_SUBSYSTEM_MESSAGE); break;
|
||||
case VID_ProtectTarget: button_function(PROTECT_MESSAGE); break;
|
||||
case VID_IgnoreTarget: button_function(IGNORE_MESSAGE); break;
|
||||
case VID_FormWing: button_function(FORM_MESSAGE); break;
|
||||
case VID_CoverMe: button_function(COVER_MESSAGE); break;
|
||||
case VID_EngageEnemy: button_function(ENGAGE_MESSAGE); break;
|
||||
case VID_Depart: button_function(WARP_MESSAGE); break;
|
||||
}
|
||||
}
|
||||
|
||||
doVid_Action(action);
|
||||
|
||||
break;
|
||||
}
|
||||
@@ -404,7 +346,7 @@ void VOICEREC_execute_command(ISpPhrase *pPhrase, HWND hWnd)
|
||||
|
||||
switch(action)
|
||||
{
|
||||
case VID_Ships:
|
||||
case VID_Ships:
|
||||
hud_squadmsg_do_mode( SM_MODE_SHIP_SELECT );
|
||||
break;
|
||||
|
||||
@@ -412,22 +354,19 @@ void VOICEREC_execute_command(ISpPhrase *pPhrase, HWND hWnd)
|
||||
hud_squadmsg_do_mode( SM_MODE_WING_SELECT );
|
||||
break;
|
||||
|
||||
case VID_AllFighters:
|
||||
case VID_AllFighters:
|
||||
case VID_AllWings:
|
||||
// Msg_instance = MESSAGE_ALL_FIGHTERS;
|
||||
// Squad_msg_mode == SM_MODE_ALL_FIGHTERS
|
||||
hud_squadmsg_msg_all_fighters();
|
||||
if (pElements->pProperties->pFirstChild) {
|
||||
doVid_Action(pElements->pProperties->pFirstChild->vValue.ulVal);
|
||||
}
|
||||
|
||||
// if(Msg_shortcut_command == -1)
|
||||
// {
|
||||
// hud_squadmsg_do_mode( SM_MODE_ALL_FIGHTERS );
|
||||
// hud_squadmsg_do_mode( SM_MODE_ALL_FIGHTERS );
|
||||
// }
|
||||
break;
|
||||
|
||||
case VID_Reinforcements:
|
||||
case VID_Reinforcements:
|
||||
hud_squadmsg_do_mode( SM_MODE_REINFORCEMENTS );
|
||||
break;
|
||||
|
||||
@@ -445,80 +384,25 @@ void VOICEREC_execute_command(ISpPhrase *pPhrase, HWND hWnd)
|
||||
|
||||
break;
|
||||
}
|
||||
case VID_shields:
|
||||
{
|
||||
int action = pElements->pProperties->vValue.ulVal;
|
||||
mprintf(("Shield Transfer %d \n", action));
|
||||
|
||||
switch(action)
|
||||
{
|
||||
case 0: button_function( SHIELD_XFER_TOP ); break;
|
||||
case 1: button_function( SHIELD_XFER_LEFT ); break;
|
||||
case 2: button_function( SHIELD_XFER_RIGHT ); break;
|
||||
case 3: button_function( SHIELD_XFER_BOTTOM ); break;
|
||||
case 4: button_function( SHIELD_EQUALIZE ); break;
|
||||
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
case VID_speed:
|
||||
case VID_targeting:
|
||||
case VID_other:
|
||||
{
|
||||
int action = pElements->pProperties->vValue.ulVal;
|
||||
mprintf(("Targeting/speed %d \n", action));
|
||||
|
||||
if (action > -1)
|
||||
{
|
||||
button_function( action );
|
||||
}
|
||||
break;
|
||||
/*
|
||||
switch(action)
|
||||
{
|
||||
case 0: button_function( TARGET_NEXT ); break;
|
||||
cas
|
||||
}
|
||||
break;
|
||||
*/
|
||||
}
|
||||
case VID_power:
|
||||
{
|
||||
int action = pElements->pProperties->vValue.ulVal;
|
||||
|
||||
if (action >= INCREASE_WEAPON && action <= ETS_EQUALIZE)
|
||||
{
|
||||
button_function( action );
|
||||
}
|
||||
else
|
||||
// this is for the max engines etc.
|
||||
{
|
||||
for (int i=1; i<7; i++)
|
||||
{
|
||||
button_function( action - 132 );
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
|
||||
|
||||
/*
|
||||
|
||||
|
||||
hud_squadmsg_do_mode( SM_MODE_SHIP_COMMAND ); // and move to a new mode
|
||||
hud_squadmsg_do_mode( SM_MODE_WING_COMMAND ); // and move to a new mode
|
||||
hud_squadmsg_do_mode( SM_MODE_SHIP_COMMAND );
|
||||
|
||||
*/
|
||||
|
||||
}
|
||||
// Free the pElements memory which was allocated for us
|
||||
::CoTaskMemFree(pElements);
|
||||
}
|
||||
}
|
||||
// Free the pElements memory which was allocated for us
|
||||
::CoTaskMemFree(pElements);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
#endif // VOICER
|
||||
#endif // _WIN32
|
||||
+1
-13
@@ -1305,22 +1305,10 @@ int parse_weapon(int subtype, bool replace)
|
||||
|
||||
if(optional_string("@Laser Color:"))
|
||||
{
|
||||
// This might be confusing at first glance. If we're a modular table (!first_time),
|
||||
// AND we're providing a new color for the laser (being in this block at all),
|
||||
// AND the RGB values for laser_color_1 and laser_color_2 match...
|
||||
// THEN we conclude that laser_color_2 wasn't explicitly defined before, and the modder would probably prefer
|
||||
// it if the laser didn't suddenly start changing colors from the new to the old over its lifespan. -MageKing17
|
||||
bool reset = (!first_time && (
|
||||
(wip->laser_color_1.red == wip->laser_color_2.red) &&
|
||||
(wip->laser_color_1.green == wip->laser_color_2.green) &&
|
||||
(wip->laser_color_1.blue == wip->laser_color_2.blue)));
|
||||
stuff_ubyte(&r);
|
||||
stuff_ubyte(&g);
|
||||
stuff_ubyte(&b);
|
||||
gr_init_color( &wip->laser_color_1, r, g, b );
|
||||
if (reset) {
|
||||
gr_init_color( &wip->laser_color_2, wip->laser_color_1.red, wip->laser_color_1.green, wip->laser_color_1.blue );
|
||||
}
|
||||
}
|
||||
|
||||
// optional string for cycling laser colors
|
||||
@@ -1329,7 +1317,7 @@ int parse_weapon(int subtype, bool replace)
|
||||
stuff_ubyte(&g);
|
||||
stuff_ubyte(&b);
|
||||
gr_init_color( &wip->laser_color_2, r, g, b );
|
||||
} else if (first_time) {
|
||||
} else {
|
||||
gr_init_color( &wip->laser_color_2, wip->laser_color_1.red, wip->laser_color_1.green, wip->laser_color_1.blue );
|
||||
}
|
||||
|
||||
|
||||
+3
-3
@@ -2,7 +2,7 @@ dnl configure.ac for fs2_open
|
||||
dnl
|
||||
dnl $Id: configure.ac,v 1.31.2.4 2007-05-28 19:36:12 taylor Exp $
|
||||
|
||||
AC_INIT(fs2_open, 3.7.3)
|
||||
AC_INIT(fs2_open, 3.7.2)
|
||||
AC_CONFIG_SRCDIR(code/freespace2/freespace.cpp)
|
||||
|
||||
dnl we need at least version 2.54 of autoconf
|
||||
@@ -151,7 +151,7 @@ case "$target" in
|
||||
CPPFLAGS="$CPPFLAGS -I/opt/csw/include"
|
||||
;;
|
||||
*freebsd* | *openbsd*)
|
||||
# FreeBSD 10.1
|
||||
# FreeBSD 9.1
|
||||
echo "Using Unix defines (for $host_os $host_cpu)"
|
||||
echo "************************************************************"
|
||||
echo "************************ NOTE ******************************"
|
||||
@@ -163,7 +163,7 @@ case "$target" in
|
||||
fs2_os_bsd="yes"
|
||||
if test "$host_cpu" = "amd64"
|
||||
then
|
||||
D_CFLAGS="$D_CFLAGS -m64 -march=athlon64"
|
||||
D_CFLAGS="$D_CFLAGS -m64 -march=athlon64 -ansi"
|
||||
fi
|
||||
D_CFLAGS="$D_CFLAGS -DLUA_USE_LINUX"
|
||||
LDFLAGS="$LDFLAGS -L/usr/local/lib"
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
Copyright (c) 2009-2014 Petri Lehtinen <[email protected]>
|
||||
Copyright (c) 2009-2013 Petri Lehtinen <[email protected]>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
||||
+13
-19
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2009-2014 Petri Lehtinen <petri@digip.org>
|
||||
* Copyright (c) 2009-2013 Petri Lehtinen <petri@digip.org>
|
||||
*
|
||||
* Jansson is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the MIT license. See LICENSE for details.
|
||||
@@ -22,9 +22,6 @@
|
||||
#define MAX_INTEGER_STR_LENGTH 100
|
||||
#define MAX_REAL_STR_LENGTH 100
|
||||
|
||||
#define FLAGS_TO_INDENT(f) ((f) & 0x1F)
|
||||
#define FLAGS_TO_PRECISION(f) (((f) >> 11) & 0x1F)
|
||||
|
||||
struct object_key {
|
||||
size_t serial;
|
||||
const char *key;
|
||||
@@ -48,9 +45,9 @@ static const char whitespace[] = " ";
|
||||
|
||||
static int dump_indent(size_t flags, int depth, int space, json_dump_callback_t dump, void *data)
|
||||
{
|
||||
if(FLAGS_TO_INDENT(flags) > 0)
|
||||
if(JSON_INDENT(flags) > 0)
|
||||
{
|
||||
int i, ws_count = FLAGS_TO_INDENT(flags);
|
||||
int i, ws_count = JSON_INDENT(flags);
|
||||
|
||||
if(dump("\n", 1, data))
|
||||
return -1;
|
||||
@@ -68,25 +65,24 @@ static int dump_indent(size_t flags, int depth, int space, json_dump_callback_t
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int dump_string(const char *str, size_t len, json_dump_callback_t dump, void *data, size_t flags)
|
||||
static int dump_string(const char *str, json_dump_callback_t dump, void *data, size_t flags)
|
||||
{
|
||||
const char *pos, *end, *lim;
|
||||
const char *pos, *end;
|
||||
int32_t codepoint;
|
||||
|
||||
if(dump("\"", 1, data))
|
||||
return -1;
|
||||
|
||||
end = pos = str;
|
||||
lim = str + len;
|
||||
while(1)
|
||||
{
|
||||
const char *text;
|
||||
char seq[13];
|
||||
int length;
|
||||
|
||||
while(end < lim)
|
||||
while(*end)
|
||||
{
|
||||
end = utf8_iterate(pos, lim - pos, &codepoint);
|
||||
end = utf8_iterate(pos, &codepoint);
|
||||
if(!end)
|
||||
return -1;
|
||||
|
||||
@@ -130,7 +126,7 @@ static int dump_string(const char *str, size_t len, json_dump_callback_t dump, v
|
||||
/* codepoint is in BMP */
|
||||
if(codepoint < 0x10000)
|
||||
{
|
||||
sprintf(seq, "\\u%04X", codepoint);
|
||||
sprintf(seq, "\\u%04x", codepoint);
|
||||
length = 6;
|
||||
}
|
||||
|
||||
@@ -143,7 +139,7 @@ static int dump_string(const char *str, size_t len, json_dump_callback_t dump, v
|
||||
first = 0xD800 | ((codepoint & 0xffc00) >> 10);
|
||||
last = 0xDC00 | (codepoint & 0x003ff);
|
||||
|
||||
sprintf(seq, "\\u%04X\\u%04X", first, last);
|
||||
sprintf(seq, "\\u%04x\\u%04x", first, last);
|
||||
length = 12;
|
||||
}
|
||||
|
||||
@@ -211,8 +207,7 @@ static int do_dump(const json_t *json, size_t flags, int depth,
|
||||
int size;
|
||||
double value = json_real_value(json);
|
||||
|
||||
size = jsonp_dtostr(buffer, MAX_REAL_STR_LENGTH, value,
|
||||
FLAGS_TO_PRECISION(flags));
|
||||
size = jsonp_dtostr(buffer, MAX_REAL_STR_LENGTH, value);
|
||||
if(size < 0)
|
||||
return -1;
|
||||
|
||||
@@ -220,7 +215,7 @@ static int do_dump(const json_t *json, size_t flags, int depth,
|
||||
}
|
||||
|
||||
case JSON_STRING:
|
||||
return dump_string(json_string_value(json), json_string_length(json), dump, data, flags);
|
||||
return dump_string(json_string_value(json), dump, data, flags);
|
||||
|
||||
case JSON_ARRAY:
|
||||
{
|
||||
@@ -341,7 +336,7 @@ static int do_dump(const json_t *json, size_t flags, int depth,
|
||||
value = json_object_get(json, key);
|
||||
assert(value);
|
||||
|
||||
dump_string(key, strlen(key), dump, data, flags);
|
||||
dump_string(key, dump, data, flags);
|
||||
if(dump(separator, separator_length, data) ||
|
||||
do_dump(value, flags, depth + 1, dump, data))
|
||||
{
|
||||
@@ -377,9 +372,8 @@ static int do_dump(const json_t *json, size_t flags, int depth,
|
||||
while(iter)
|
||||
{
|
||||
void *next = json_object_iter_next((json_t *)json, iter);
|
||||
const char *key = json_object_iter_key(iter);
|
||||
|
||||
dump_string(key, strlen(key), dump, data, flags);
|
||||
dump_string(json_object_iter_key(iter), dump, data, flags);
|
||||
if(dump(separator, separator_length, data) ||
|
||||
do_dump(json_object_iter_value(iter), flags, depth + 1,
|
||||
dump, data))
|
||||
|
||||
+44
-36
@@ -1,21 +1,12 @@
|
||||
/*
|
||||
* Copyright (c) 2009-2014 Petri Lehtinen <petri@digip.org>
|
||||
* Copyright (c) 2009-2013 Petri Lehtinen <petri@digip.org>
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the MIT license. See LICENSE for details.
|
||||
*/
|
||||
|
||||
#if HAVE_CONFIG_H
|
||||
#include <jansson_private_config.h>
|
||||
#endif
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#if HAVE_STDINT_H
|
||||
#include <stdint.h>
|
||||
#endif
|
||||
|
||||
#include <jansson_config.h> /* for JSON_INLINE */
|
||||
#include "jansson_private.h" /* for container_of() */
|
||||
#include "hashtable.h"
|
||||
@@ -24,13 +15,24 @@ typedef struct hashtable_list list_t;
|
||||
typedef struct hashtable_pair pair_t;
|
||||
typedef struct hashtable_bucket bucket_t;
|
||||
|
||||
extern volatile uint32_t hashtable_seed;
|
||||
|
||||
/* Implementation of the hash function */
|
||||
#include "lookup3.h"
|
||||
|
||||
#define list_to_pair(list_) container_of(list_, pair_t, list)
|
||||
#define hash_str(key) ((size_t)hashlittle((key), strlen(key), hashtable_seed))
|
||||
|
||||
/* From http://www.cse.yorku.ca/~oz/hash.html */
|
||||
static size_t hash_str(const void *ptr)
|
||||
{
|
||||
const char *str = (const char *)ptr;
|
||||
|
||||
size_t hash = 5381;
|
||||
size_t c;
|
||||
|
||||
while((c = (size_t)*str))
|
||||
{
|
||||
hash = ((hash << 5) + hash) + c;
|
||||
str++;
|
||||
}
|
||||
|
||||
return hash;
|
||||
}
|
||||
|
||||
static JSON_INLINE void list_init(list_t *list)
|
||||
{
|
||||
@@ -72,6 +74,19 @@ static void insert_to_bucket(hashtable_t *hashtable, bucket_t *bucket,
|
||||
}
|
||||
}
|
||||
|
||||
static const size_t primes[] = {
|
||||
5, 13, 23, 53, 97, 193, 389, 769, 1543, 3079, 6151, 12289, 24593,
|
||||
49157, 98317, 196613, 393241, 786433, 1572869, 3145739, 6291469,
|
||||
12582917, 25165843, 50331653, 100663319, 201326611, 402653189,
|
||||
805306457, 1610612741
|
||||
};
|
||||
|
||||
static JSON_INLINE size_t num_buckets(hashtable_t *hashtable)
|
||||
{
|
||||
return primes[hashtable->num_buckets];
|
||||
}
|
||||
|
||||
|
||||
static pair_t *hashtable_find_pair(hashtable_t *hashtable, bucket_t *bucket,
|
||||
const char *key, size_t hash)
|
||||
{
|
||||
@@ -105,7 +120,7 @@ static int hashtable_do_del(hashtable_t *hashtable,
|
||||
bucket_t *bucket;
|
||||
size_t index;
|
||||
|
||||
index = hash & hashmask(hashtable->order);
|
||||
index = hash % num_buckets(hashtable);
|
||||
bucket = &hashtable->buckets[index];
|
||||
|
||||
pair = hashtable_find_pair(hashtable, bucket, key, hash);
|
||||
@@ -152,14 +167,14 @@ static int hashtable_do_rehash(hashtable_t *hashtable)
|
||||
|
||||
jsonp_free(hashtable->buckets);
|
||||
|
||||
hashtable->order++;
|
||||
new_size = hashsize(hashtable->order);
|
||||
hashtable->num_buckets++;
|
||||
new_size = num_buckets(hashtable);
|
||||
|
||||
hashtable->buckets = jsonp_malloc(new_size * sizeof(bucket_t));
|
||||
if(!hashtable->buckets)
|
||||
return -1;
|
||||
|
||||
for(i = 0; i < hashsize(hashtable->order); i++)
|
||||
for(i = 0; i < num_buckets(hashtable); i++)
|
||||
{
|
||||
hashtable->buckets[i].first = hashtable->buckets[i].last =
|
||||
&hashtable->list;
|
||||
@@ -184,14 +199,14 @@ int hashtable_init(hashtable_t *hashtable)
|
||||
size_t i;
|
||||
|
||||
hashtable->size = 0;
|
||||
hashtable->order = 3;
|
||||
hashtable->buckets = jsonp_malloc(hashsize(hashtable->order) * sizeof(bucket_t));
|
||||
hashtable->num_buckets = 0; /* index to primes[] */
|
||||
hashtable->buckets = jsonp_malloc(num_buckets(hashtable) * sizeof(bucket_t));
|
||||
if(!hashtable->buckets)
|
||||
return -1;
|
||||
|
||||
list_init(&hashtable->list);
|
||||
|
||||
for(i = 0; i < hashsize(hashtable->order); i++)
|
||||
for(i = 0; i < num_buckets(hashtable); i++)
|
||||
{
|
||||
hashtable->buckets[i].first = hashtable->buckets[i].last =
|
||||
&hashtable->list;
|
||||
@@ -215,12 +230,12 @@ int hashtable_set(hashtable_t *hashtable,
|
||||
size_t hash, index;
|
||||
|
||||
/* rehash if the load ratio exceeds 1 */
|
||||
if(hashtable->size >= hashsize(hashtable->order))
|
||||
if(hashtable->size >= num_buckets(hashtable))
|
||||
if(hashtable_do_rehash(hashtable))
|
||||
return -1;
|
||||
|
||||
hash = hash_str(key);
|
||||
index = hash & hashmask(hashtable->order);
|
||||
index = hash % num_buckets(hashtable);
|
||||
bucket = &hashtable->buckets[index];
|
||||
pair = hashtable_find_pair(hashtable, bucket, key, hash);
|
||||
|
||||
@@ -234,14 +249,7 @@ int hashtable_set(hashtable_t *hashtable,
|
||||
/* offsetof(...) returns the size of pair_t without the last,
|
||||
flexible member. This way, the correct amount is
|
||||
allocated. */
|
||||
|
||||
size_t len = strlen(key);
|
||||
if(len >= (size_t)-1 - offsetof(pair_t, key)) {
|
||||
/* Avoid an overflow if the key is very long */
|
||||
return -1;
|
||||
}
|
||||
|
||||
pair = jsonp_malloc(offsetof(pair_t, key) + len + 1);
|
||||
pair = jsonp_malloc(offsetof(pair_t, key) + strlen(key) + 1);
|
||||
if(!pair)
|
||||
return -1;
|
||||
|
||||
@@ -265,7 +273,7 @@ void *hashtable_get(hashtable_t *hashtable, const char *key)
|
||||
bucket_t *bucket;
|
||||
|
||||
hash = hash_str(key);
|
||||
bucket = &hashtable->buckets[hash & hashmask(hashtable->order)];
|
||||
bucket = &hashtable->buckets[hash % num_buckets(hashtable)];
|
||||
|
||||
pair = hashtable_find_pair(hashtable, bucket, key, hash);
|
||||
if(!pair)
|
||||
@@ -286,7 +294,7 @@ void hashtable_clear(hashtable_t *hashtable)
|
||||
|
||||
hashtable_do_clear(hashtable);
|
||||
|
||||
for(i = 0; i < hashsize(hashtable->order); i++)
|
||||
for(i = 0; i < num_buckets(hashtable); i++)
|
||||
{
|
||||
hashtable->buckets[i].first = hashtable->buckets[i].last =
|
||||
&hashtable->list;
|
||||
@@ -308,7 +316,7 @@ void *hashtable_iter_at(hashtable_t *hashtable, const char *key)
|
||||
bucket_t *bucket;
|
||||
|
||||
hash = hash_str(key);
|
||||
bucket = &hashtable->buckets[hash & hashmask(hashtable->order)];
|
||||
bucket = &hashtable->buckets[hash % num_buckets(hashtable)];
|
||||
|
||||
pair = hashtable_find_pair(hashtable, bucket, key, hash);
|
||||
if(!pair)
|
||||
|
||||
+2
-3
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2009-2014 Petri Lehtinen <petri@digip.org>
|
||||
* Copyright (c) 2009-2013 Petri Lehtinen <petri@digip.org>
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the MIT license. See LICENSE for details.
|
||||
@@ -32,7 +32,7 @@ struct hashtable_bucket {
|
||||
typedef struct hashtable {
|
||||
size_t size;
|
||||
struct hashtable_bucket *buckets;
|
||||
size_t order; /* hashtable has pow(2, order) buckets */
|
||||
size_t num_buckets; /* index to primes[] */
|
||||
struct hashtable_list list;
|
||||
} hashtable_t;
|
||||
|
||||
@@ -40,7 +40,6 @@ typedef struct hashtable {
|
||||
#define hashtable_key_to_iter(key_) \
|
||||
(&(container_of(key_, struct hashtable_pair, key)->list))
|
||||
|
||||
|
||||
/**
|
||||
* hashtable_init - Initialize a hashtable object
|
||||
*
|
||||
|
||||
@@ -1,277 +0,0 @@
|
||||
/* Generate sizeof(uint32_t) bytes of as random data as possible to seed
|
||||
the hash function.
|
||||
*/
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include <jansson_private_config.h>
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <time.h>
|
||||
|
||||
#ifdef HAVE_STDINT_H
|
||||
#include <stdint.h>
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_FCNTL_H
|
||||
#include <fcntl.h>
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_SCHED_H
|
||||
#include <sched.h>
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_SYS_STAT_H
|
||||
#include <sys/stat.h>
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_SYS_TIME_H
|
||||
#include <sys/time.h>
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_SYS_TYPES_H
|
||||
#include <sys/types.h>
|
||||
#endif
|
||||
|
||||
#if defined(_WIN32)
|
||||
/* For GetModuleHandle(), GetProcAddress() and GetCurrentProcessId() */
|
||||
#include <windows.h>
|
||||
#endif
|
||||
|
||||
#include "jansson.h"
|
||||
|
||||
|
||||
static uint32_t buf_to_uint32(char *data) {
|
||||
size_t i;
|
||||
uint32_t result = 0;
|
||||
|
||||
for (i = 0; i < sizeof(uint32_t); i++)
|
||||
result = (result << 8) | (unsigned char)data[i];
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* /dev/urandom */
|
||||
#if !defined(_WIN32) && defined(USE_URANDOM)
|
||||
static int seed_from_urandom(uint32_t *seed) {
|
||||
/* Use unbuffered I/O if we have open(), close() and read(). Otherwise
|
||||
fall back to fopen() */
|
||||
|
||||
char data[sizeof(uint32_t)];
|
||||
int ok;
|
||||
|
||||
#if defined(HAVE_OPEN) && defined(HAVE_CLOSE) && defined(HAVE_READ)
|
||||
int urandom;
|
||||
urandom = open("/dev/urandom", O_RDONLY);
|
||||
if (urandom == -1)
|
||||
return 1;
|
||||
|
||||
ok = read(urandom, data, sizeof(uint32_t)) == sizeof(uint32_t);
|
||||
close(urandom);
|
||||
#else
|
||||
FILE *urandom;
|
||||
|
||||
urandom = fopen("/dev/urandom", "rb");
|
||||
if (!urandom)
|
||||
return 1;
|
||||
|
||||
ok = fread(data, 1, sizeof(uint32_t), urandom) == sizeof(uint32_t);
|
||||
fclose(urandom);
|
||||
#endif
|
||||
|
||||
if (!ok)
|
||||
return 1;
|
||||
|
||||
*seed = buf_to_uint32(data);
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
/* Windows Crypto API */
|
||||
#if defined(_WIN32) && defined(USE_WINDOWS_CRYPTOAPI)
|
||||
#include <wincrypt.h>
|
||||
|
||||
typedef BOOL (WINAPI *CRYPTACQUIRECONTEXTA)(HCRYPTPROV *phProv, LPCSTR pszContainer, LPCSTR pszProvider, DWORD dwProvType, DWORD dwFlags);
|
||||
typedef BOOL (WINAPI *CRYPTGENRANDOM)(HCRYPTPROV hProv, DWORD dwLen, BYTE *pbBuffer);
|
||||
typedef BOOL (WINAPI *CRYPTRELEASECONTEXT)(HCRYPTPROV hProv, DWORD dwFlags);
|
||||
|
||||
static int seed_from_windows_cryptoapi(uint32_t *seed)
|
||||
{
|
||||
HINSTANCE hAdvAPI32 = NULL;
|
||||
CRYPTACQUIRECONTEXTA pCryptAcquireContext = NULL;
|
||||
CRYPTGENRANDOM pCryptGenRandom = NULL;
|
||||
CRYPTRELEASECONTEXT pCryptReleaseContext = NULL;
|
||||
HCRYPTPROV hCryptProv = 0;
|
||||
BYTE data[sizeof(uint32_t)];
|
||||
int ok;
|
||||
|
||||
hAdvAPI32 = GetModuleHandle(TEXT("advapi32.dll"));
|
||||
if(hAdvAPI32 == NULL)
|
||||
return 1;
|
||||
|
||||
pCryptAcquireContext = (CRYPTACQUIRECONTEXTA)GetProcAddress(hAdvAPI32, "CryptAcquireContextA");
|
||||
if (!pCryptAcquireContext)
|
||||
return 1;
|
||||
|
||||
pCryptGenRandom = (CRYPTGENRANDOM)GetProcAddress(hAdvAPI32, "CryptGenRandom");
|
||||
if (!pCryptGenRandom)
|
||||
return 1;
|
||||
|
||||
pCryptReleaseContext = (CRYPTRELEASECONTEXT)GetProcAddress(hAdvAPI32, "CryptReleaseContext");
|
||||
if (!pCryptReleaseContext)
|
||||
return 1;
|
||||
|
||||
if (!pCryptAcquireContext(&hCryptProv, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT))
|
||||
return 1;
|
||||
|
||||
ok = pCryptGenRandom(hCryptProv, sizeof(uint32_t), data);
|
||||
pCryptReleaseContext(hCryptProv, 0);
|
||||
|
||||
if (!ok)
|
||||
return 1;
|
||||
|
||||
*seed = buf_to_uint32((char *)data);
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
/* gettimeofday() and getpid() */
|
||||
static int seed_from_timestamp_and_pid(uint32_t *seed) {
|
||||
#ifdef HAVE_GETTIMEOFDAY
|
||||
/* XOR of seconds and microseconds */
|
||||
struct timeval tv;
|
||||
gettimeofday(&tv, NULL);
|
||||
*seed = (uint32_t)tv.tv_sec ^ (uint32_t)tv.tv_usec;
|
||||
#else
|
||||
/* Seconds only */
|
||||
*seed = (uint32_t)time(NULL);
|
||||
#endif
|
||||
|
||||
/* XOR with PID for more randomness */
|
||||
#if defined(_WIN32)
|
||||
*seed ^= (uint32_t)GetCurrentProcessId();
|
||||
#elif defined(HAVE_GETPID)
|
||||
*seed ^= (uint32_t)getpid();
|
||||
#endif
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static uint32_t generate_seed() {
|
||||
uint32_t seed;
|
||||
int done = 0;
|
||||
|
||||
#if !defined(_WIN32) && defined(USE_URANDOM)
|
||||
if (!done && seed_from_urandom(&seed) == 0)
|
||||
done = 1;
|
||||
#endif
|
||||
|
||||
#if defined(_WIN32) && defined(USE_WINDOWS_CRYPTOAPI)
|
||||
if (!done && seed_from_windows_cryptoapi(&seed) == 0)
|
||||
done = 1;
|
||||
#endif
|
||||
|
||||
if (!done) {
|
||||
/* Fall back to timestamp and PID if no better randomness is
|
||||
available */
|
||||
seed_from_timestamp_and_pid(&seed);
|
||||
}
|
||||
|
||||
/* Make sure the seed is never zero */
|
||||
if (seed == 0)
|
||||
seed = 1;
|
||||
|
||||
return seed;
|
||||
}
|
||||
|
||||
|
||||
volatile uint32_t hashtable_seed = 0;
|
||||
|
||||
#if defined(HAVE_ATOMIC_BUILTINS) && (defined(HAVE_SCHED_YIELD) || !defined(_WIN32))
|
||||
static volatile char seed_initialized = 0;
|
||||
|
||||
void json_object_seed(size_t seed) {
|
||||
uint32_t new_seed = (uint32_t)seed;
|
||||
|
||||
if (hashtable_seed == 0) {
|
||||
if (__atomic_test_and_set(&seed_initialized, __ATOMIC_RELAXED) == 0) {
|
||||
/* Do the seeding ourselves */
|
||||
if (new_seed == 0)
|
||||
new_seed = generate_seed();
|
||||
|
||||
__atomic_store_n(&hashtable_seed, new_seed, __ATOMIC_RELEASE);
|
||||
} else {
|
||||
/* Wait for another thread to do the seeding */
|
||||
do {
|
||||
#ifdef HAVE_SCHED_YIELD
|
||||
sched_yield();
|
||||
#endif
|
||||
} while(__atomic_load_n(&hashtable_seed, __ATOMIC_ACQUIRE) == 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
#elif defined(HAVE_SYNC_BUILTINS) && (defined(HAVE_SCHED_YIELD) || !defined(_WIN32))
|
||||
void json_object_seed(size_t seed) {
|
||||
uint32_t new_seed = (uint32_t)seed;
|
||||
|
||||
if (hashtable_seed == 0) {
|
||||
if (new_seed == 0) {
|
||||
/* Explicit synchronization fences are not supported by the
|
||||
__sync builtins, so every thread getting here has to
|
||||
generate the seed value.
|
||||
*/
|
||||
new_seed = generate_seed();
|
||||
}
|
||||
|
||||
do {
|
||||
if (__sync_bool_compare_and_swap(&hashtable_seed, 0, new_seed)) {
|
||||
/* We were the first to seed */
|
||||
break;
|
||||
} else {
|
||||
/* Wait for another thread to do the seeding */
|
||||
#ifdef HAVE_SCHED_YIELD
|
||||
sched_yield();
|
||||
#endif
|
||||
}
|
||||
} while(hashtable_seed == 0);
|
||||
}
|
||||
}
|
||||
#elif defined(_WIN32)
|
||||
static long seed_initialized = 0;
|
||||
void json_object_seed(size_t seed) {
|
||||
uint32_t new_seed = (uint32_t)seed;
|
||||
|
||||
if (hashtable_seed == 0) {
|
||||
if (InterlockedIncrement(&seed_initialized) == 1) {
|
||||
/* Do the seeding ourselves */
|
||||
if (new_seed == 0)
|
||||
new_seed = generate_seed();
|
||||
|
||||
hashtable_seed = new_seed;
|
||||
} else {
|
||||
/* Wait for another thread to do the seeding */
|
||||
do {
|
||||
SwitchToThread();
|
||||
} while (hashtable_seed == 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
#else
|
||||
/* Fall back to a thread-unsafe version */
|
||||
void json_object_seed(size_t seed) {
|
||||
uint32_t new_seed = (uint32_t)seed;
|
||||
|
||||
if (hashtable_seed == 0) {
|
||||
if (new_seed == 0)
|
||||
new_seed = generate_seed();
|
||||
|
||||
hashtable_seed = new_seed;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
+19
-28
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2009-2014 Petri Lehtinen <petri@digip.org>
|
||||
* Copyright (c) 2009-2013 Petri Lehtinen <petri@digip.org>
|
||||
*
|
||||
* Jansson is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the MIT license. See LICENSE for details.
|
||||
@@ -21,11 +21,11 @@ extern "C" {
|
||||
/* version */
|
||||
|
||||
#define JANSSON_MAJOR_VERSION 2
|
||||
#define JANSSON_MINOR_VERSION 7
|
||||
#define JANSSON_MINOR_VERSION 5
|
||||
#define JANSSON_MICRO_VERSION 0
|
||||
|
||||
/* Micro version is omitted if it's 0 */
|
||||
#define JANSSON_VERSION "2.7"
|
||||
#define JANSSON_VERSION "2.5"
|
||||
|
||||
/* Version as a 3-byte hex number, e.g. 0x010201 == 1.2.1. Use this
|
||||
for numeric comparisons, e.g. #if JANSSON_VERSION_HEX >= ... */
|
||||
@@ -67,26 +67,23 @@ typedef long json_int_t;
|
||||
#endif
|
||||
|
||||
#define json_typeof(json) ((json)->type)
|
||||
#define json_is_object(json) ((json) && json_typeof(json) == JSON_OBJECT)
|
||||
#define json_is_array(json) ((json) && json_typeof(json) == JSON_ARRAY)
|
||||
#define json_is_string(json) ((json) && json_typeof(json) == JSON_STRING)
|
||||
#define json_is_integer(json) ((json) && json_typeof(json) == JSON_INTEGER)
|
||||
#define json_is_real(json) ((json) && json_typeof(json) == JSON_REAL)
|
||||
#define json_is_object(json) (json && json_typeof(json) == JSON_OBJECT)
|
||||
#define json_is_array(json) (json && json_typeof(json) == JSON_ARRAY)
|
||||
#define json_is_string(json) (json && json_typeof(json) == JSON_STRING)
|
||||
#define json_is_integer(json) (json && json_typeof(json) == JSON_INTEGER)
|
||||
#define json_is_real(json) (json && json_typeof(json) == JSON_REAL)
|
||||
#define json_is_number(json) (json_is_integer(json) || json_is_real(json))
|
||||
#define json_is_true(json) ((json) && json_typeof(json) == JSON_TRUE)
|
||||
#define json_is_false(json) ((json) && json_typeof(json) == JSON_FALSE)
|
||||
#define json_boolean_value json_is_true
|
||||
#define json_is_true(json) (json && json_typeof(json) == JSON_TRUE)
|
||||
#define json_is_false(json) (json && json_typeof(json) == JSON_FALSE)
|
||||
#define json_is_boolean(json) (json_is_true(json) || json_is_false(json))
|
||||
#define json_is_null(json) ((json) && json_typeof(json) == JSON_NULL)
|
||||
#define json_is_null(json) (json && json_typeof(json) == JSON_NULL)
|
||||
|
||||
/* construction, destruction, reference counting */
|
||||
|
||||
json_t *json_object(void);
|
||||
json_t *json_array(void);
|
||||
json_t *json_string(const char *value);
|
||||
json_t *json_stringn(const char *value, size_t len);
|
||||
json_t *json_string_nocheck(const char *value);
|
||||
json_t *json_stringn_nocheck(const char *value, size_t len);
|
||||
json_t *json_integer(json_int_t value);
|
||||
json_t *json_real(double value);
|
||||
json_t *json_true(void);
|
||||
@@ -129,7 +126,6 @@ typedef struct {
|
||||
|
||||
/* getters, setters, manipulation */
|
||||
|
||||
void json_object_seed(size_t seed);
|
||||
size_t json_object_size(const json_t *object);
|
||||
json_t *json_object_get(const json_t *object, const char *key);
|
||||
int json_object_set_new(json_t *object, const char *key, json_t *value);
|
||||
@@ -203,18 +199,16 @@ int json_array_insert(json_t *array, size_t ind, json_t *value)
|
||||
}
|
||||
|
||||
const char *json_string_value(const json_t *string);
|
||||
size_t json_string_length(const json_t *string);
|
||||
json_int_t json_integer_value(const json_t *integer);
|
||||
double json_real_value(const json_t *real);
|
||||
double json_number_value(const json_t *json);
|
||||
|
||||
int json_string_set(json_t *string, const char *value);
|
||||
int json_string_setn(json_t *string, const char *value, size_t len);
|
||||
int json_string_set_nocheck(json_t *string, const char *value);
|
||||
int json_string_setn_nocheck(json_t *string, const char *value, size_t len);
|
||||
int json_integer_set(json_t *integer, json_int_t value);
|
||||
int json_real_set(json_t *real, double value);
|
||||
|
||||
|
||||
/* pack, unpack */
|
||||
|
||||
json_t *json_pack(const char *fmt, ...);
|
||||
@@ -246,7 +240,6 @@ json_t *json_deep_copy(const json_t *value);
|
||||
#define JSON_DISABLE_EOF_CHECK 0x2
|
||||
#define JSON_DECODE_ANY 0x4
|
||||
#define JSON_DECODE_INT_AS_REAL 0x8
|
||||
#define JSON_ALLOW_NUL 0x10
|
||||
|
||||
typedef size_t (*json_load_callback_t)(void *buffer, size_t buflen, void *data);
|
||||
|
||||
@@ -259,15 +252,13 @@ json_t *json_load_callback(json_load_callback_t callback, void *data, size_t fla
|
||||
|
||||
/* encoding */
|
||||
|
||||
#define JSON_MAX_INDENT 0x1F
|
||||
#define JSON_INDENT(n) ((n) & JSON_MAX_INDENT)
|
||||
#define JSON_COMPACT 0x20
|
||||
#define JSON_ENSURE_ASCII 0x40
|
||||
#define JSON_SORT_KEYS 0x80
|
||||
#define JSON_PRESERVE_ORDER 0x100
|
||||
#define JSON_ENCODE_ANY 0x200
|
||||
#define JSON_ESCAPE_SLASH 0x400
|
||||
#define JSON_REAL_PRECISION(n) (((n) & 0x1F) << 11)
|
||||
#define JSON_INDENT(n) (n & 0x1F)
|
||||
#define JSON_COMPACT 0x20
|
||||
#define JSON_ENSURE_ASCII 0x40
|
||||
#define JSON_SORT_KEYS 0x80
|
||||
#define JSON_PRESERVE_ORDER 0x100
|
||||
#define JSON_ENCODE_ANY 0x200
|
||||
#define JSON_ESCAPE_SLASH 0x400
|
||||
|
||||
typedef int (*json_dump_callback_t)(const char *buffer, size_t size, void *data);
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2010-2014 Petri Lehtinen <petri@digip.org>
|
||||
* Copyright (c) 2010-2013 Petri Lehtinen <petri@digip.org>
|
||||
*
|
||||
* Jansson is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the MIT license. See LICENSE for details.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2009-2014 Petri Lehtinen <petri@digip.org>
|
||||
* Copyright (c) 2009-2013 Petri Lehtinen <petri@digip.org>
|
||||
*
|
||||
* Jansson is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the MIT license. See LICENSE for details.
|
||||
@@ -49,7 +49,6 @@ typedef struct {
|
||||
typedef struct {
|
||||
json_t json;
|
||||
char *value;
|
||||
size_t length;
|
||||
} json_string_t;
|
||||
|
||||
typedef struct {
|
||||
@@ -65,13 +64,9 @@ typedef struct {
|
||||
#define json_to_object(json_) container_of(json_, json_object_t, json)
|
||||
#define json_to_array(json_) container_of(json_, json_array_t, json)
|
||||
#define json_to_string(json_) container_of(json_, json_string_t, json)
|
||||
#define json_to_real(json_) container_of(json_, json_real_t, json)
|
||||
#define json_to_real(json_) container_of(json_, json_real_t, json)
|
||||
#define json_to_integer(json_) container_of(json_, json_integer_t, json)
|
||||
|
||||
/* Create a string by taking ownership of an existing buffer */
|
||||
json_t *jsonp_stringn_nocheck_own(const char *value, size_t len);
|
||||
|
||||
/* Error message formatting */
|
||||
void jsonp_error_init(json_error_t *error, const char *source);
|
||||
void jsonp_error_set_source(json_error_t *error, const char *source);
|
||||
void jsonp_error_set(json_error_t *error, int line, int column,
|
||||
@@ -81,14 +76,13 @@ void jsonp_error_vset(json_error_t *error, int line, int column,
|
||||
|
||||
/* Locale independent string<->double conversions */
|
||||
int jsonp_strtod(strbuffer_t *strbuffer, double *out);
|
||||
int jsonp_dtostr(char *buffer, size_t size, double value, int prec);
|
||||
int jsonp_dtostr(char *buffer, size_t size, double value);
|
||||
|
||||
/* Wrappers for custom memory functions */
|
||||
void* jsonp_malloc(size_t size);
|
||||
void jsonp_free(void *ptr);
|
||||
char *jsonp_strndup(const char *str, size_t length);
|
||||
char *jsonp_strdup(const char *str);
|
||||
char *jsonp_strndup(const char *str, size_t len);
|
||||
|
||||
/* Windows compatibility */
|
||||
#ifdef _WIN32
|
||||
|
||||
+39
-67
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2009-2014 Petri Lehtinen <petri@digip.org>
|
||||
* Copyright (c) 2009-2013 Petri Lehtinen <petri@digip.org>
|
||||
*
|
||||
* Jansson is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the MIT license. See LICENSE for details.
|
||||
@@ -63,10 +63,7 @@ typedef struct {
|
||||
strbuffer_t saved_text;
|
||||
int token;
|
||||
union {
|
||||
struct {
|
||||
char *val;
|
||||
size_t len;
|
||||
} string;
|
||||
char *string;
|
||||
json_int_t integer;
|
||||
double real;
|
||||
} value;
|
||||
@@ -282,13 +279,6 @@ static void lex_save_cached(lex_t *lex)
|
||||
}
|
||||
}
|
||||
|
||||
static void lex_free_string(lex_t *lex)
|
||||
{
|
||||
jsonp_free(lex->value.string.val);
|
||||
lex->value.string.val = NULL;
|
||||
lex->value.string.len = 0;
|
||||
}
|
||||
|
||||
/* assumes that str points to 'u' plus at least 4 valid hex digits */
|
||||
static int32_t decode_unicode_escape(const char *str)
|
||||
{
|
||||
@@ -307,7 +297,7 @@ static int32_t decode_unicode_escape(const char *str)
|
||||
else if(l_isupper(c))
|
||||
value += c - 'A' + 10;
|
||||
else
|
||||
return -1;
|
||||
assert(0);
|
||||
}
|
||||
|
||||
return value;
|
||||
@@ -320,7 +310,7 @@ static void lex_scan_string(lex_t *lex, json_error_t *error)
|
||||
char *t;
|
||||
int i;
|
||||
|
||||
lex->value.string.val = NULL;
|
||||
lex->value.string = NULL;
|
||||
lex->token = TOKEN_INVALID;
|
||||
|
||||
c = lex_get_save(lex, error);
|
||||
@@ -375,12 +365,14 @@ static void lex_scan_string(lex_t *lex, json_error_t *error)
|
||||
- two \uXXXX escapes (length 12) forming an UTF-16 surrogate pair
|
||||
are converted to 4 bytes
|
||||
*/
|
||||
t = jsonp_malloc(lex->saved_text.length + 1);
|
||||
if(!t) {
|
||||
lex->value.string = jsonp_malloc(lex->saved_text.length + 1);
|
||||
if(!lex->value.string) {
|
||||
/* this is not very nice, since TOKEN_INVALID is returned */
|
||||
goto out;
|
||||
}
|
||||
lex->value.string.val = t;
|
||||
|
||||
/* the target */
|
||||
t = lex->value.string;
|
||||
|
||||
/* + 1 to skip the " */
|
||||
p = strbuffer_value(&lex->saved_text) + 1;
|
||||
@@ -389,24 +381,17 @@ static void lex_scan_string(lex_t *lex, json_error_t *error)
|
||||
if(*p == '\\') {
|
||||
p++;
|
||||
if(*p == 'u') {
|
||||
size_t length;
|
||||
char buffer[4];
|
||||
int length;
|
||||
int32_t value;
|
||||
|
||||
value = decode_unicode_escape(p);
|
||||
if(value < 0) {
|
||||
error_set(error, lex, "invalid Unicode escape '%.6s'", p - 1);
|
||||
goto out;
|
||||
}
|
||||
p += 5;
|
||||
|
||||
if(0xD800 <= value && value <= 0xDBFF) {
|
||||
/* surrogate pair */
|
||||
if(*p == '\\' && *(p + 1) == 'u') {
|
||||
int32_t value2 = decode_unicode_escape(++p);
|
||||
if(value2 < 0) {
|
||||
error_set(error, lex, "invalid Unicode escape '%.6s'", p - 1);
|
||||
goto out;
|
||||
}
|
||||
p += 5;
|
||||
|
||||
if(0xDC00 <= value2 && value2 <= 0xDFFF) {
|
||||
@@ -435,9 +420,16 @@ static void lex_scan_string(lex_t *lex, json_error_t *error)
|
||||
error_set(error, lex, "invalid Unicode '\\u%04X'", value);
|
||||
goto out;
|
||||
}
|
||||
else if(value == 0)
|
||||
{
|
||||
error_set(error, lex, "\\u0000 is not allowed");
|
||||
goto out;
|
||||
}
|
||||
|
||||
if(utf8_encode(value, t, &length))
|
||||
if(utf8_encode(value, buffer, &length))
|
||||
assert(0);
|
||||
|
||||
memcpy(t, buffer, length);
|
||||
t += length;
|
||||
}
|
||||
else {
|
||||
@@ -459,12 +451,11 @@ static void lex_scan_string(lex_t *lex, json_error_t *error)
|
||||
*(t++) = *(p++);
|
||||
}
|
||||
*t = '\0';
|
||||
lex->value.string.len = t - lex->value.string.val;
|
||||
lex->token = TOKEN_STRING;
|
||||
return;
|
||||
|
||||
out:
|
||||
lex_free_string(lex);
|
||||
jsonp_free(lex->value.string);
|
||||
}
|
||||
|
||||
#ifndef JANSSON_USING_CMAKE /* disabled if using cmake */
|
||||
@@ -483,7 +474,7 @@ static int lex_scan_number(lex_t *lex, int c, json_error_t *error)
|
||||
{
|
||||
const char *saved_text;
|
||||
char *end;
|
||||
double doubleval;
|
||||
double value;
|
||||
|
||||
lex->token = TOKEN_INVALID;
|
||||
|
||||
@@ -508,16 +499,16 @@ static int lex_scan_number(lex_t *lex, int c, json_error_t *error)
|
||||
}
|
||||
|
||||
if(c != '.' && c != 'E' && c != 'e') {
|
||||
json_int_t intval;
|
||||
json_int_t value;
|
||||
|
||||
lex_unget_unsave(lex, c);
|
||||
|
||||
saved_text = strbuffer_value(&lex->saved_text);
|
||||
|
||||
errno = 0;
|
||||
intval = json_strtoint(saved_text, &end, 10);
|
||||
value = json_strtoint(saved_text, &end, 10);
|
||||
if(errno == ERANGE) {
|
||||
if(intval < 0)
|
||||
if(value < 0)
|
||||
error_set(error, lex, "too big negative integer");
|
||||
else
|
||||
error_set(error, lex, "too big integer");
|
||||
@@ -527,7 +518,7 @@ static int lex_scan_number(lex_t *lex, int c, json_error_t *error)
|
||||
assert(end == saved_text + lex->saved_text.length);
|
||||
|
||||
lex->token = TOKEN_INTEGER;
|
||||
lex->value.integer = intval;
|
||||
lex->value.integer = value;
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -561,13 +552,13 @@ static int lex_scan_number(lex_t *lex, int c, json_error_t *error)
|
||||
|
||||
lex_unget_unsave(lex, c);
|
||||
|
||||
if(jsonp_strtod(&lex->saved_text, &doubleval)) {
|
||||
if(jsonp_strtod(&lex->saved_text, &value)) {
|
||||
error_set(error, lex, "real number overflow");
|
||||
goto out;
|
||||
}
|
||||
|
||||
lex->token = TOKEN_REAL;
|
||||
lex->value.real = doubleval;
|
||||
lex->value.real = value;
|
||||
return 0;
|
||||
|
||||
out:
|
||||
@@ -580,8 +571,10 @@ static int lex_scan(lex_t *lex, json_error_t *error)
|
||||
|
||||
strbuffer_clear(&lex->saved_text);
|
||||
|
||||
if(lex->token == TOKEN_STRING)
|
||||
lex_free_string(lex);
|
||||
if(lex->token == TOKEN_STRING) {
|
||||
jsonp_free(lex->value.string);
|
||||
lex->value.string = NULL;
|
||||
}
|
||||
|
||||
c = lex_get(lex, error);
|
||||
while(c == ' ' || c == '\t' || c == '\n' || c == '\r')
|
||||
@@ -642,14 +635,13 @@ out:
|
||||
return lex->token;
|
||||
}
|
||||
|
||||
static char *lex_steal_string(lex_t *lex, size_t *out_len)
|
||||
static char *lex_steal_string(lex_t *lex)
|
||||
{
|
||||
char *result = NULL;
|
||||
if(lex->token == TOKEN_STRING) {
|
||||
result = lex->value.string.val;
|
||||
*out_len = lex->value.string.len;
|
||||
lex->value.string.val = NULL;
|
||||
lex->value.string.len = 0;
|
||||
if(lex->token == TOKEN_STRING)
|
||||
{
|
||||
result = lex->value.string;
|
||||
lex->value.string = NULL;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
@@ -667,7 +659,7 @@ static int lex_init(lex_t *lex, get_func get, void *data)
|
||||
static void lex_close(lex_t *lex)
|
||||
{
|
||||
if(lex->token == TOKEN_STRING)
|
||||
lex_free_string(lex);
|
||||
jsonp_free(lex->value.string);
|
||||
strbuffer_close(&lex->saved_text);
|
||||
}
|
||||
|
||||
@@ -688,7 +680,6 @@ static json_t *parse_object(lex_t *lex, size_t flags, json_error_t *error)
|
||||
|
||||
while(1) {
|
||||
char *key;
|
||||
size_t len;
|
||||
json_t *value;
|
||||
|
||||
if(lex->token != TOKEN_STRING) {
|
||||
@@ -696,14 +687,9 @@ static json_t *parse_object(lex_t *lex, size_t flags, json_error_t *error)
|
||||
goto error;
|
||||
}
|
||||
|
||||
key = lex_steal_string(lex, &len);
|
||||
key = lex_steal_string(lex);
|
||||
if(!key)
|
||||
return NULL;
|
||||
if (memchr(key, '\0', len)) {
|
||||
jsonp_free(key);
|
||||
error_set(error, lex, "NUL byte in object key not supported");
|
||||
goto error;
|
||||
}
|
||||
|
||||
if(flags & JSON_REJECT_DUPLICATES) {
|
||||
if(json_object_get(object, key)) {
|
||||
@@ -802,21 +788,7 @@ static json_t *parse_value(lex_t *lex, size_t flags, json_error_t *error)
|
||||
|
||||
switch(lex->token) {
|
||||
case TOKEN_STRING: {
|
||||
const char *value = lex->value.string.val;
|
||||
size_t len = lex->value.string.len;
|
||||
|
||||
if(!(flags & JSON_ALLOW_NUL)) {
|
||||
if(memchr(value, '\0', len)) {
|
||||
error_set(error, lex, "\\u0000 is not allowed without JSON_ALLOW_NUL");
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
|
||||
json = jsonp_stringn_nocheck_own(value, len);
|
||||
if(json) {
|
||||
lex->value.string.val = NULL;
|
||||
lex->value.string.len = 0;
|
||||
}
|
||||
json = json_string_nocheck(lex->value.string);
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,381 +0,0 @@
|
||||
/*
|
||||
-------------------------------------------------------------------------------
|
||||
lookup3.c, by Bob Jenkins, May 2006, Public Domain.
|
||||
|
||||
These are functions for producing 32-bit hashes for hash table lookup.
|
||||
hashword(), hashlittle(), hashlittle2(), hashbig(), mix(), and final()
|
||||
are externally useful functions. Routines to test the hash are included
|
||||
if SELF_TEST is defined. You can use this free for any purpose. It's in
|
||||
the public domain. It has no warranty.
|
||||
|
||||
You probably want to use hashlittle(). hashlittle() and hashbig()
|
||||
hash byte arrays. hashlittle() is is faster than hashbig() on
|
||||
little-endian machines. Intel and AMD are little-endian machines.
|
||||
On second thought, you probably want hashlittle2(), which is identical to
|
||||
hashlittle() except it returns two 32-bit hashes for the price of one.
|
||||
You could implement hashbig2() if you wanted but I haven't bothered here.
|
||||
|
||||
If you want to find a hash of, say, exactly 7 integers, do
|
||||
a = i1; b = i2; c = i3;
|
||||
mix(a,b,c);
|
||||
a += i4; b += i5; c += i6;
|
||||
mix(a,b,c);
|
||||
a += i7;
|
||||
final(a,b,c);
|
||||
then use c as the hash value. If you have a variable length array of
|
||||
4-byte integers to hash, use hashword(). If you have a byte array (like
|
||||
a character string), use hashlittle(). If you have several byte arrays, or
|
||||
a mix of things, see the comments above hashlittle().
|
||||
|
||||
Why is this so big? I read 12 bytes at a time into 3 4-byte integers,
|
||||
then mix those integers. This is fast (you can do a lot more thorough
|
||||
mixing with 12*3 instructions on 3 integers than you can with 3 instructions
|
||||
on 1 byte), but shoehorning those bytes into integers efficiently is messy.
|
||||
-------------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include <jansson_private_config.h>
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_STDINT_H
|
||||
#include <stdint.h> /* defines uint32_t etc */
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_SYS_PARAM_H
|
||||
#include <sys/param.h> /* attempt to define endianness */
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_ENDIAN_H
|
||||
# include <endian.h> /* attempt to define endianness */
|
||||
#endif
|
||||
|
||||
/*
|
||||
* My best guess at if you are big-endian or little-endian. This may
|
||||
* need adjustment.
|
||||
*/
|
||||
#if (defined(__BYTE_ORDER) && defined(__LITTLE_ENDIAN) && \
|
||||
__BYTE_ORDER == __LITTLE_ENDIAN) || \
|
||||
(defined(i386) || defined(__i386__) || defined(__i486__) || \
|
||||
defined(__i586__) || defined(__i686__) || defined(vax) || defined(MIPSEL))
|
||||
# define HASH_LITTLE_ENDIAN 1
|
||||
# define HASH_BIG_ENDIAN 0
|
||||
#elif (defined(__BYTE_ORDER) && defined(__BIG_ENDIAN) && \
|
||||
__BYTE_ORDER == __BIG_ENDIAN) || \
|
||||
(defined(sparc) || defined(POWERPC) || defined(mc68000) || defined(sel))
|
||||
# define HASH_LITTLE_ENDIAN 0
|
||||
# define HASH_BIG_ENDIAN 1
|
||||
#else
|
||||
# define HASH_LITTLE_ENDIAN 0
|
||||
# define HASH_BIG_ENDIAN 0
|
||||
#endif
|
||||
|
||||
#define hashsize(n) ((uint32_t)1<<(n))
|
||||
#define hashmask(n) (hashsize(n)-1)
|
||||
#define rot(x,k) (((x)<<(k)) | ((x)>>(32-(k))))
|
||||
|
||||
/*
|
||||
-------------------------------------------------------------------------------
|
||||
mix -- mix 3 32-bit values reversibly.
|
||||
|
||||
This is reversible, so any information in (a,b,c) before mix() is
|
||||
still in (a,b,c) after mix().
|
||||
|
||||
If four pairs of (a,b,c) inputs are run through mix(), or through
|
||||
mix() in reverse, there are at least 32 bits of the output that
|
||||
are sometimes the same for one pair and different for another pair.
|
||||
This was tested for:
|
||||
* pairs that differed by one bit, by two bits, in any combination
|
||||
of top bits of (a,b,c), or in any combination of bottom bits of
|
||||
(a,b,c).
|
||||
* "differ" is defined as +, -, ^, or ~^. For + and -, I transformed
|
||||
the output delta to a Gray code (a^(a>>1)) so a string of 1's (as
|
||||
is commonly produced by subtraction) look like a single 1-bit
|
||||
difference.
|
||||
* the base values were pseudorandom, all zero but one bit set, or
|
||||
all zero plus a counter that starts at zero.
|
||||
|
||||
Some k values for my "a-=c; a^=rot(c,k); c+=b;" arrangement that
|
||||
satisfy this are
|
||||
4 6 8 16 19 4
|
||||
9 15 3 18 27 15
|
||||
14 9 3 7 17 3
|
||||
Well, "9 15 3 18 27 15" didn't quite get 32 bits diffing
|
||||
for "differ" defined as + with a one-bit base and a two-bit delta. I
|
||||
used http://burtleburtle.net/bob/hash/avalanche.html to choose
|
||||
the operations, constants, and arrangements of the variables.
|
||||
|
||||
This does not achieve avalanche. There are input bits of (a,b,c)
|
||||
that fail to affect some output bits of (a,b,c), especially of a. The
|
||||
most thoroughly mixed value is c, but it doesn't really even achieve
|
||||
avalanche in c.
|
||||
|
||||
This allows some parallelism. Read-after-writes are good at doubling
|
||||
the number of bits affected, so the goal of mixing pulls in the opposite
|
||||
direction as the goal of parallelism. I did what I could. Rotates
|
||||
seem to cost as much as shifts on every machine I could lay my hands
|
||||
on, and rotates are much kinder to the top and bottom bits, so I used
|
||||
rotates.
|
||||
-------------------------------------------------------------------------------
|
||||
*/
|
||||
#define mix(a,b,c) \
|
||||
{ \
|
||||
a -= c; a ^= rot(c, 4); c += b; \
|
||||
b -= a; b ^= rot(a, 6); a += c; \
|
||||
c -= b; c ^= rot(b, 8); b += a; \
|
||||
a -= c; a ^= rot(c,16); c += b; \
|
||||
b -= a; b ^= rot(a,19); a += c; \
|
||||
c -= b; c ^= rot(b, 4); b += a; \
|
||||
}
|
||||
|
||||
/*
|
||||
-------------------------------------------------------------------------------
|
||||
final -- final mixing of 3 32-bit values (a,b,c) into c
|
||||
|
||||
Pairs of (a,b,c) values differing in only a few bits will usually
|
||||
produce values of c that look totally different. This was tested for
|
||||
* pairs that differed by one bit, by two bits, in any combination
|
||||
of top bits of (a,b,c), or in any combination of bottom bits of
|
||||
(a,b,c).
|
||||
* "differ" is defined as +, -, ^, or ~^. For + and -, I transformed
|
||||
the output delta to a Gray code (a^(a>>1)) so a string of 1's (as
|
||||
is commonly produced by subtraction) look like a single 1-bit
|
||||
difference.
|
||||
* the base values were pseudorandom, all zero but one bit set, or
|
||||
all zero plus a counter that starts at zero.
|
||||
|
||||
These constants passed:
|
||||
14 11 25 16 4 14 24
|
||||
12 14 25 16 4 14 24
|
||||
and these came close:
|
||||
4 8 15 26 3 22 24
|
||||
10 8 15 26 3 22 24
|
||||
11 8 15 26 3 22 24
|
||||
-------------------------------------------------------------------------------
|
||||
*/
|
||||
#define final(a,b,c) \
|
||||
{ \
|
||||
c ^= b; c -= rot(b,14); \
|
||||
a ^= c; a -= rot(c,11); \
|
||||
b ^= a; b -= rot(a,25); \
|
||||
c ^= b; c -= rot(b,16); \
|
||||
a ^= c; a -= rot(c,4); \
|
||||
b ^= a; b -= rot(a,14); \
|
||||
c ^= b; c -= rot(b,24); \
|
||||
}
|
||||
|
||||
/*
|
||||
-------------------------------------------------------------------------------
|
||||
hashlittle() -- hash a variable-length key into a 32-bit value
|
||||
k : the key (the unaligned variable-length array of bytes)
|
||||
length : the length of the key, counting by bytes
|
||||
initval : can be any 4-byte value
|
||||
Returns a 32-bit value. Every bit of the key affects every bit of
|
||||
the return value. Two keys differing by one or two bits will have
|
||||
totally different hash values.
|
||||
|
||||
The best hash table sizes are powers of 2. There is no need to do
|
||||
mod a prime (mod is sooo slow!). If you need less than 32 bits,
|
||||
use a bitmask. For example, if you need only 10 bits, do
|
||||
h = (h & hashmask(10));
|
||||
In which case, the hash table should have hashsize(10) elements.
|
||||
|
||||
If you are hashing n strings (uint8_t **)k, do it like this:
|
||||
for (i=0, h=0; i<n; ++i) h = hashlittle( k[i], len[i], h);
|
||||
|
||||
By Bob Jenkins, 2006. bob_jenkins@burtleburtle.net. You may use this
|
||||
code any way you wish, private, educational, or commercial. It's free.
|
||||
|
||||
Use for hash table lookup, or anything where one collision in 2^^32 is
|
||||
acceptable. Do NOT use for cryptographic purposes.
|
||||
-------------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
static uint32_t hashlittle(const void *key, size_t length, uint32_t initval)
|
||||
{
|
||||
uint32_t a,b,c; /* internal state */
|
||||
union { const void *ptr; size_t i; } u; /* needed for Mac Powerbook G4 */
|
||||
|
||||
/* Set up the internal state */
|
||||
a = b = c = 0xdeadbeef + ((uint32_t)length) + initval;
|
||||
|
||||
u.ptr = key;
|
||||
if (HASH_LITTLE_ENDIAN && ((u.i & 0x3) == 0)) {
|
||||
const uint32_t *k = (const uint32_t *)key; /* read 32-bit chunks */
|
||||
|
||||
/* Detect Valgrind or AddressSanitizer */
|
||||
#ifdef VALGRIND
|
||||
# define NO_MASKING_TRICK 1
|
||||
#else
|
||||
# if defined(__has_feature) /* Clang */
|
||||
# if __has_feature(address_sanitizer) /* is ASAN enabled? */
|
||||
# define NO_MASKING_TRICK 1
|
||||
# endif
|
||||
# else
|
||||
# if defined(__SANITIZE_ADDRESS__) /* GCC 4.8.x, is ASAN enabled? */
|
||||
# define NO_MASKING_TRICK 1
|
||||
# endif
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifdef NO_MASKING_TRICK
|
||||
const uint8_t *k8;
|
||||
#endif
|
||||
|
||||
/*------ all but last block: aligned reads and affect 32 bits of (a,b,c) */
|
||||
while (length > 12)
|
||||
{
|
||||
a += k[0];
|
||||
b += k[1];
|
||||
c += k[2];
|
||||
mix(a,b,c);
|
||||
length -= 12;
|
||||
k += 3;
|
||||
}
|
||||
|
||||
/*----------------------------- handle the last (probably partial) block */
|
||||
/*
|
||||
* "k[2]&0xffffff" actually reads beyond the end of the string, but
|
||||
* then masks off the part it's not allowed to read. Because the
|
||||
* string is aligned, the masked-off tail is in the same word as the
|
||||
* rest of the string. Every machine with memory protection I've seen
|
||||
* does it on word boundaries, so is OK with this. But VALGRIND will
|
||||
* still catch it and complain. The masking trick does make the hash
|
||||
* noticably faster for short strings (like English words).
|
||||
*/
|
||||
#ifndef NO_MASKING_TRICK
|
||||
|
||||
switch(length)
|
||||
{
|
||||
case 12: c+=k[2]; b+=k[1]; a+=k[0]; break;
|
||||
case 11: c+=k[2]&0xffffff; b+=k[1]; a+=k[0]; break;
|
||||
case 10: c+=k[2]&0xffff; b+=k[1]; a+=k[0]; break;
|
||||
case 9 : c+=k[2]&0xff; b+=k[1]; a+=k[0]; break;
|
||||
case 8 : b+=k[1]; a+=k[0]; break;
|
||||
case 7 : b+=k[1]&0xffffff; a+=k[0]; break;
|
||||
case 6 : b+=k[1]&0xffff; a+=k[0]; break;
|
||||
case 5 : b+=k[1]&0xff; a+=k[0]; break;
|
||||
case 4 : a+=k[0]; break;
|
||||
case 3 : a+=k[0]&0xffffff; break;
|
||||
case 2 : a+=k[0]&0xffff; break;
|
||||
case 1 : a+=k[0]&0xff; break;
|
||||
case 0 : return c; /* zero length strings require no mixing */
|
||||
}
|
||||
|
||||
#else /* make valgrind happy */
|
||||
|
||||
k8 = (const uint8_t *)k;
|
||||
switch(length)
|
||||
{
|
||||
case 12: c+=k[2]; b+=k[1]; a+=k[0]; break;
|
||||
case 11: c+=((uint32_t)k8[10])<<16; /* fall through */
|
||||
case 10: c+=((uint32_t)k8[9])<<8; /* fall through */
|
||||
case 9 : c+=k8[8]; /* fall through */
|
||||
case 8 : b+=k[1]; a+=k[0]; break;
|
||||
case 7 : b+=((uint32_t)k8[6])<<16; /* fall through */
|
||||
case 6 : b+=((uint32_t)k8[5])<<8; /* fall through */
|
||||
case 5 : b+=k8[4]; /* fall through */
|
||||
case 4 : a+=k[0]; break;
|
||||
case 3 : a+=((uint32_t)k8[2])<<16; /* fall through */
|
||||
case 2 : a+=((uint32_t)k8[1])<<8; /* fall through */
|
||||
case 1 : a+=k8[0]; break;
|
||||
case 0 : return c;
|
||||
}
|
||||
|
||||
#endif /* !valgrind */
|
||||
|
||||
} else if (HASH_LITTLE_ENDIAN && ((u.i & 0x1) == 0)) {
|
||||
const uint16_t *k = (const uint16_t *)key; /* read 16-bit chunks */
|
||||
const uint8_t *k8;
|
||||
|
||||
/*--------------- all but last block: aligned reads and different mixing */
|
||||
while (length > 12)
|
||||
{
|
||||
a += k[0] + (((uint32_t)k[1])<<16);
|
||||
b += k[2] + (((uint32_t)k[3])<<16);
|
||||
c += k[4] + (((uint32_t)k[5])<<16);
|
||||
mix(a,b,c);
|
||||
length -= 12;
|
||||
k += 6;
|
||||
}
|
||||
|
||||
/*----------------------------- handle the last (probably partial) block */
|
||||
k8 = (const uint8_t *)k;
|
||||
switch(length)
|
||||
{
|
||||
case 12: c+=k[4]+(((uint32_t)k[5])<<16);
|
||||
b+=k[2]+(((uint32_t)k[3])<<16);
|
||||
a+=k[0]+(((uint32_t)k[1])<<16);
|
||||
break;
|
||||
case 11: c+=((uint32_t)k8[10])<<16; /* fall through */
|
||||
case 10: c+=k[4];
|
||||
b+=k[2]+(((uint32_t)k[3])<<16);
|
||||
a+=k[0]+(((uint32_t)k[1])<<16);
|
||||
break;
|
||||
case 9 : c+=k8[8]; /* fall through */
|
||||
case 8 : b+=k[2]+(((uint32_t)k[3])<<16);
|
||||
a+=k[0]+(((uint32_t)k[1])<<16);
|
||||
break;
|
||||
case 7 : b+=((uint32_t)k8[6])<<16; /* fall through */
|
||||
case 6 : b+=k[2];
|
||||
a+=k[0]+(((uint32_t)k[1])<<16);
|
||||
break;
|
||||
case 5 : b+=k8[4]; /* fall through */
|
||||
case 4 : a+=k[0]+(((uint32_t)k[1])<<16);
|
||||
break;
|
||||
case 3 : a+=((uint32_t)k8[2])<<16; /* fall through */
|
||||
case 2 : a+=k[0];
|
||||
break;
|
||||
case 1 : a+=k8[0];
|
||||
break;
|
||||
case 0 : return c; /* zero length requires no mixing */
|
||||
}
|
||||
|
||||
} else { /* need to read the key one byte at a time */
|
||||
const uint8_t *k = (const uint8_t *)key;
|
||||
|
||||
/*--------------- all but the last block: affect some 32 bits of (a,b,c) */
|
||||
while (length > 12)
|
||||
{
|
||||
a += k[0];
|
||||
a += ((uint32_t)k[1])<<8;
|
||||
a += ((uint32_t)k[2])<<16;
|
||||
a += ((uint32_t)k[3])<<24;
|
||||
b += k[4];
|
||||
b += ((uint32_t)k[5])<<8;
|
||||
b += ((uint32_t)k[6])<<16;
|
||||
b += ((uint32_t)k[7])<<24;
|
||||
c += k[8];
|
||||
c += ((uint32_t)k[9])<<8;
|
||||
c += ((uint32_t)k[10])<<16;
|
||||
c += ((uint32_t)k[11])<<24;
|
||||
mix(a,b,c);
|
||||
length -= 12;
|
||||
k += 12;
|
||||
}
|
||||
|
||||
/*-------------------------------- last block: affect all 32 bits of (c) */
|
||||
switch(length) /* all the case statements fall through */
|
||||
{
|
||||
case 12: c+=((uint32_t)k[11])<<24;
|
||||
case 11: c+=((uint32_t)k[10])<<16;
|
||||
case 10: c+=((uint32_t)k[9])<<8;
|
||||
case 9 : c+=k[8];
|
||||
case 8 : b+=((uint32_t)k[7])<<24;
|
||||
case 7 : b+=((uint32_t)k[6])<<16;
|
||||
case 6 : b+=((uint32_t)k[5])<<8;
|
||||
case 5 : b+=k[4];
|
||||
case 4 : a+=((uint32_t)k[3])<<24;
|
||||
case 3 : a+=((uint32_t)k[2])<<16;
|
||||
case 2 : a+=((uint32_t)k[1])<<8;
|
||||
case 1 : a+=k[0];
|
||||
break;
|
||||
case 0 : return c;
|
||||
}
|
||||
}
|
||||
|
||||
final(a,b,c);
|
||||
return c;
|
||||
}
|
||||
+7
-12
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2009-2014 Petri Lehtinen <petri@digip.org>
|
||||
* Copyright (c) 2009-2013 Petri Lehtinen <petri@digip.org>
|
||||
* Copyright (c) 2011-2012 Basile Starynkevitch <basile@starynkevitch.net>
|
||||
*
|
||||
* Jansson is free software; you can redistribute it and/or modify it
|
||||
@@ -12,10 +12,6 @@
|
||||
#include "jansson.h"
|
||||
#include "jansson_private.h"
|
||||
|
||||
/* C89 allows these to be macros */
|
||||
#undef malloc
|
||||
#undef free
|
||||
|
||||
/* memory function pointers */
|
||||
static json_malloc_t do_malloc = malloc;
|
||||
static json_free_t do_free = free;
|
||||
@@ -37,20 +33,19 @@ void jsonp_free(void *ptr)
|
||||
}
|
||||
|
||||
char *jsonp_strdup(const char *str)
|
||||
{
|
||||
return jsonp_strndup(str, strlen(str));
|
||||
}
|
||||
|
||||
char *jsonp_strndup(const char *str, size_t len)
|
||||
{
|
||||
char *new_str;
|
||||
size_t len;
|
||||
|
||||
len = strlen(str);
|
||||
if(len == (size_t)-1)
|
||||
return NULL;
|
||||
|
||||
new_str = jsonp_malloc(len + 1);
|
||||
if(!new_str)
|
||||
return NULL;
|
||||
|
||||
memcpy(new_str, str, len);
|
||||
new_str[len] = '\0';
|
||||
memcpy(new_str, str, len + 1);
|
||||
return new_str;
|
||||
}
|
||||
|
||||
|
||||
+29
-72
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2009-2014 Petri Lehtinen <petri@digip.org>
|
||||
* Copyright (c) 2009-2013 Petri Lehtinen <petri@digip.org>
|
||||
* Copyright (c) 2011-2012 Graeme Smecher <graeme.smecher@mail.mcgill.ca>
|
||||
*
|
||||
* Jansson is free software; you can redistribute it and/or modify
|
||||
@@ -125,18 +125,19 @@ static json_t *pack(scanner_t *s, va_list *ap);
|
||||
/* ours will be set to 1 if jsonp_free() must be called for the result
|
||||
afterwards */
|
||||
static char *read_string(scanner_t *s, va_list *ap,
|
||||
const char *purpose, size_t *out_len, int *ours)
|
||||
const char *purpose, int *ours)
|
||||
{
|
||||
char t;
|
||||
strbuffer_t strbuff;
|
||||
const char *str;
|
||||
size_t length;
|
||||
char *result;
|
||||
|
||||
next_token(s);
|
||||
t = token(s);
|
||||
prev_token(s);
|
||||
|
||||
if(t != '#' && t != '%' && t != '+') {
|
||||
if(t != '#' && t != '+') {
|
||||
/* Optimize the simple case */
|
||||
str = va_arg(*ap, const char *);
|
||||
|
||||
@@ -145,14 +146,11 @@ static char *read_string(scanner_t *s, va_list *ap,
|
||||
return NULL;
|
||||
}
|
||||
|
||||
length = strlen(str);
|
||||
|
||||
if(!utf8_check_string(str, length)) {
|
||||
if(!utf8_check_string(str, -1)) {
|
||||
set_error(s, "<args>", "Invalid UTF-8 %s", purpose);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
*out_len = length;
|
||||
*ours = 0;
|
||||
return (char *)str;
|
||||
}
|
||||
@@ -172,9 +170,6 @@ static char *read_string(scanner_t *s, va_list *ap,
|
||||
if(token(s) == '#') {
|
||||
length = va_arg(*ap, int);
|
||||
}
|
||||
else if(token(s) == '%') {
|
||||
length = va_arg(*ap, size_t);
|
||||
}
|
||||
else {
|
||||
prev_token(s);
|
||||
length = strlen(str);
|
||||
@@ -193,15 +188,15 @@ static char *read_string(scanner_t *s, va_list *ap,
|
||||
}
|
||||
}
|
||||
|
||||
if(!utf8_check_string(strbuff.value, strbuff.length)) {
|
||||
result = strbuffer_steal_value(&strbuff);
|
||||
|
||||
if(!utf8_check_string(result, -1)) {
|
||||
set_error(s, "<args>", "Invalid UTF-8 %s", purpose);
|
||||
strbuffer_close(&strbuff);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
*out_len = strbuff.length;
|
||||
*ours = 1;
|
||||
return strbuffer_steal_value(&strbuff);
|
||||
return result;
|
||||
}
|
||||
|
||||
static json_t *pack_object(scanner_t *s, va_list *ap)
|
||||
@@ -211,7 +206,6 @@ static json_t *pack_object(scanner_t *s, va_list *ap)
|
||||
|
||||
while(token(s) != '}') {
|
||||
char *key;
|
||||
size_t len;
|
||||
int ours;
|
||||
json_t *value;
|
||||
|
||||
@@ -225,19 +219,15 @@ static json_t *pack_object(scanner_t *s, va_list *ap)
|
||||
goto error;
|
||||
}
|
||||
|
||||
key = read_string(s, ap, "object key", &len, &ours);
|
||||
key = read_string(s, ap, "object key", &ours);
|
||||
if(!key)
|
||||
goto error;
|
||||
|
||||
next_token(s);
|
||||
|
||||
value = pack(s, ap);
|
||||
if(!value) {
|
||||
if(ours)
|
||||
jsonp_free(key);
|
||||
|
||||
if(!value)
|
||||
goto error;
|
||||
}
|
||||
|
||||
if(json_object_set_new_nocheck(object, key, value)) {
|
||||
if(ours)
|
||||
@@ -300,20 +290,20 @@ static json_t *pack(scanner_t *s, va_list *ap)
|
||||
case '[':
|
||||
return pack_array(s, ap);
|
||||
|
||||
case 's': /* string */
|
||||
{
|
||||
case 's': { /* string */
|
||||
char *str;
|
||||
size_t len;
|
||||
int ours;
|
||||
json_t *result;
|
||||
|
||||
str = read_string(s, ap, "string", &len, &ours);
|
||||
str = read_string(s, ap, "string", &ours);
|
||||
if(!str)
|
||||
return NULL;
|
||||
|
||||
if (ours)
|
||||
return jsonp_stringn_nocheck_own(str, len);
|
||||
else
|
||||
return json_stringn_nocheck(str, len);
|
||||
result = json_string_nocheck(str);
|
||||
if(ours)
|
||||
jsonp_free(str);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
case 'n': /* null */
|
||||
@@ -350,7 +340,6 @@ static int unpack_object(scanner_t *s, json_t *root, va_list *ap)
|
||||
{
|
||||
int ret = -1;
|
||||
int strict = 0;
|
||||
int gotopt = 0;
|
||||
|
||||
/* Use a set (emulated by a hashtable) to check that all object
|
||||
keys are accessed. Checking that the correct number of keys
|
||||
@@ -407,7 +396,7 @@ static int unpack_object(scanner_t *s, json_t *root, va_list *ap)
|
||||
next_token(s);
|
||||
|
||||
if(token(s) == '?') {
|
||||
opt = gotopt = 1;
|
||||
opt = 1;
|
||||
next_token(s);
|
||||
}
|
||||
|
||||
@@ -433,26 +422,10 @@ static int unpack_object(scanner_t *s, json_t *root, va_list *ap)
|
||||
if(strict == 0 && (s->flags & JSON_STRICT))
|
||||
strict = 1;
|
||||
|
||||
if(root && strict == 1) {
|
||||
/* We need to check that all non optional items have been parsed */
|
||||
const char *key;
|
||||
json_t *value;
|
||||
long unpacked = 0;
|
||||
if (gotopt) {
|
||||
/* We have optional keys, we need to iter on each key */
|
||||
json_object_foreach(root, key, value) {
|
||||
if(!hashtable_get(&key_set, key)) {
|
||||
unpacked++;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
/* No optional keys, we can just compare the number of items */
|
||||
unpacked = (long)json_object_size(root) - (long)key_set.size;
|
||||
}
|
||||
if (unpacked) {
|
||||
set_error(s, "<validation>", "%li object item(s) left unpacked", unpacked);
|
||||
goto out;
|
||||
}
|
||||
if(root && strict == 1 && key_set.size != json_object_size(root)) {
|
||||
long diff = (long)json_object_size(root) - (long)key_set.size;
|
||||
set_error(s, "<validation>", "%li object item(s) left unpacked", diff);
|
||||
goto out;
|
||||
}
|
||||
|
||||
ret = 0;
|
||||
@@ -550,32 +523,16 @@ static int unpack(scanner_t *s, json_t *root, va_list *ap)
|
||||
}
|
||||
|
||||
if(!(s->flags & JSON_VALIDATE_ONLY)) {
|
||||
const char **str_target;
|
||||
size_t *len_target = NULL;
|
||||
const char **target;
|
||||
|
||||
str_target = va_arg(*ap, const char **);
|
||||
if(!str_target) {
|
||||
target = va_arg(*ap, const char **);
|
||||
if(!target) {
|
||||
set_error(s, "<args>", "NULL string argument");
|
||||
return -1;
|
||||
}
|
||||
|
||||
next_token(s);
|
||||
|
||||
if(token(s) == '%') {
|
||||
len_target = va_arg(*ap, size_t *);
|
||||
if(!len_target) {
|
||||
set_error(s, "<args>", "NULL string length argument");
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
else
|
||||
prev_token(s);
|
||||
|
||||
if(root) {
|
||||
*str_target = json_string_value(root);
|
||||
if(len_target)
|
||||
*len_target = json_string_length(root);
|
||||
}
|
||||
if(root)
|
||||
*target = json_string_value(root);
|
||||
}
|
||||
return 0;
|
||||
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2009-2014 Petri Lehtinen <petri@digip.org>
|
||||
* Copyright (c) 2009-2013 Petri Lehtinen <petri@digip.org>
|
||||
*
|
||||
* Jansson is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the MIT license. See LICENSE for details.
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2009-2014 Petri Lehtinen <petri@digip.org>
|
||||
* Copyright (c) 2009-2013 Petri Lehtinen <petri@digip.org>
|
||||
*
|
||||
* Jansson is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the MIT license. See LICENSE for details.
|
||||
|
||||
+5
-9
@@ -2,13 +2,12 @@
|
||||
#include <errno.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
#include "jansson_private.h"
|
||||
#include "strbuffer.h"
|
||||
|
||||
/* need jansson_private_config.h to get the correct snprintf */
|
||||
/* need config.h to get the correct snprintf */
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include <jansson_private_config.h>
|
||||
#include <config.h>
|
||||
#endif
|
||||
|
||||
#if JSON_HAVE_LOCALECONV
|
||||
@@ -70,7 +69,7 @@ int jsonp_strtod(strbuffer_t *strbuffer, double *out)
|
||||
value = strtod(strbuffer->value, &end);
|
||||
assert(end == strbuffer->value + strbuffer->length);
|
||||
|
||||
if((value == HUGE_VAL || value == -HUGE_VAL) && errno == ERANGE) {
|
||||
if(errno == ERANGE && value != 0) {
|
||||
/* Overflow */
|
||||
return -1;
|
||||
}
|
||||
@@ -79,16 +78,13 @@ int jsonp_strtod(strbuffer_t *strbuffer, double *out)
|
||||
return 0;
|
||||
}
|
||||
|
||||
int jsonp_dtostr(char *buffer, size_t size, double value, int precision)
|
||||
int jsonp_dtostr(char *buffer, size_t size, double value)
|
||||
{
|
||||
int ret;
|
||||
char *start, *end;
|
||||
size_t length;
|
||||
|
||||
if (precision == 0)
|
||||
precision = 17;
|
||||
|
||||
ret = snprintf(buffer, size, "%.*g", precision, value);
|
||||
ret = snprintf(buffer, size, "%.17g", value);
|
||||
if(ret < 0)
|
||||
return -1;
|
||||
|
||||
|
||||
+16
-13
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2009-2014 Petri Lehtinen <petri@digip.org>
|
||||
* Copyright (c) 2009-2013 Petri Lehtinen <petri@digip.org>
|
||||
*
|
||||
* Jansson is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the MIT license. See LICENSE for details.
|
||||
@@ -8,7 +8,7 @@
|
||||
#include <string.h>
|
||||
#include "utf.h"
|
||||
|
||||
int utf8_encode(int32_t codepoint, char *buffer, size_t *size)
|
||||
int utf8_encode(int32_t codepoint, char *buffer, int *size)
|
||||
{
|
||||
if(codepoint < 0)
|
||||
return -1;
|
||||
@@ -44,7 +44,7 @@ int utf8_encode(int32_t codepoint, char *buffer, size_t *size)
|
||||
return 0;
|
||||
}
|
||||
|
||||
size_t utf8_check_first(char byte)
|
||||
int utf8_check_first(char byte)
|
||||
{
|
||||
unsigned char u = (unsigned char)byte;
|
||||
|
||||
@@ -80,9 +80,9 @@ size_t utf8_check_first(char byte)
|
||||
}
|
||||
}
|
||||
|
||||
size_t utf8_check_full(const char *buffer, size_t size, int32_t *codepoint)
|
||||
int utf8_check_full(const char *buffer, int size, int32_t *codepoint)
|
||||
{
|
||||
size_t i;
|
||||
int i;
|
||||
int32_t value = 0;
|
||||
unsigned char u = (unsigned char)buffer[0];
|
||||
|
||||
@@ -136,12 +136,12 @@ size_t utf8_check_full(const char *buffer, size_t size, int32_t *codepoint)
|
||||
return 1;
|
||||
}
|
||||
|
||||
const char *utf8_iterate(const char *buffer, size_t bufsize, int32_t *codepoint)
|
||||
const char *utf8_iterate(const char *buffer, int32_t *codepoint)
|
||||
{
|
||||
size_t count;
|
||||
int count;
|
||||
int32_t value;
|
||||
|
||||
if(!bufsize)
|
||||
if(!*buffer)
|
||||
return buffer;
|
||||
|
||||
count = utf8_check_first(buffer[0]);
|
||||
@@ -152,7 +152,7 @@ const char *utf8_iterate(const char *buffer, size_t bufsize, int32_t *codepoint)
|
||||
value = (unsigned char)buffer[0];
|
||||
else
|
||||
{
|
||||
if(count > bufsize || !utf8_check_full(buffer, count, &value))
|
||||
if(!utf8_check_full(buffer, count, &value))
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@@ -162,18 +162,21 @@ const char *utf8_iterate(const char *buffer, size_t bufsize, int32_t *codepoint)
|
||||
return buffer + count;
|
||||
}
|
||||
|
||||
int utf8_check_string(const char *string, size_t length)
|
||||
int utf8_check_string(const char *string, int length)
|
||||
{
|
||||
size_t i;
|
||||
int i;
|
||||
|
||||
if(length == -1)
|
||||
length = strlen(string);
|
||||
|
||||
for(i = 0; i < length; i++)
|
||||
{
|
||||
size_t count = utf8_check_first(string[i]);
|
||||
int count = utf8_check_first(string[i]);
|
||||
if(count == 0)
|
||||
return 0;
|
||||
else if(count > 1)
|
||||
{
|
||||
if(count > length - i)
|
||||
if(i + count > length)
|
||||
return 0;
|
||||
|
||||
if(!utf8_check_full(&string[i], count, NULL))
|
||||
|
||||
+23
-11
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2009-2014 Petri Lehtinen <petri@digip.org>
|
||||
* Copyright (c) 2009-2013 Petri Lehtinen <petri@digip.org>
|
||||
*
|
||||
* Jansson is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the MIT license. See LICENSE for details.
|
||||
@@ -9,19 +9,31 @@
|
||||
#define UTF_H
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include <jansson_private_config.h>
|
||||
#endif
|
||||
#include <config.h>
|
||||
|
||||
#ifdef HAVE_STDINT_H
|
||||
#include <stdint.h>
|
||||
#endif
|
||||
#ifdef HAVE_INTTYPES_H
|
||||
/* inttypes.h includes stdint.h in a standard environment, so there's
|
||||
no need to include stdint.h separately. If inttypes.h doesn't define
|
||||
int32_t, it's defined in config.h. */
|
||||
#include <inttypes.h>
|
||||
#endif /* HAVE_INTTYPES_H */
|
||||
|
||||
int utf8_encode(int32_t codepoint, char *buffer, size_t *size);
|
||||
#else /* !HAVE_CONFIG_H */
|
||||
#ifdef _WIN32
|
||||
typedef int int32_t;
|
||||
#else /* !_WIN32 */
|
||||
/* Assume a standard environment */
|
||||
#include <inttypes.h>
|
||||
#endif /* _WIN32 */
|
||||
|
||||
size_t utf8_check_first(char byte);
|
||||
size_t utf8_check_full(const char *buffer, size_t size, int32_t *codepoint);
|
||||
const char *utf8_iterate(const char *buffer, size_t size, int32_t *codepoint);
|
||||
#endif /* HAVE_CONFIG_H */
|
||||
|
||||
int utf8_check_string(const char *string, size_t length);
|
||||
int utf8_encode(int codepoint, char *buffer, int *size);
|
||||
|
||||
int utf8_check_first(char byte);
|
||||
int utf8_check_full(const char *buffer, int size, int32_t *codepoint);
|
||||
const char *utf8_iterate(const char *buffer, int32_t *codepoint);
|
||||
|
||||
int utf8_check_string(const char *string, int length);
|
||||
|
||||
#endif
|
||||
+19
-110
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2009-2014 Petri Lehtinen <petri@digip.org>
|
||||
* Copyright (c) 2009-2013 Petri Lehtinen <petri@digip.org>
|
||||
*
|
||||
* Jansson is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the MIT license. See LICENSE for details.
|
||||
@@ -9,19 +9,11 @@
|
||||
#define _GNU_SOURCE
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include <jansson_private_config.h>
|
||||
#endif
|
||||
|
||||
#include <stddef.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
|
||||
#ifdef HAVE_STDINT_H
|
||||
#include <stdint.h>
|
||||
#endif
|
||||
|
||||
#include "jansson.h"
|
||||
#include "hashtable.h"
|
||||
#include "jansson_private.h"
|
||||
@@ -29,10 +21,8 @@
|
||||
|
||||
/* Work around nonstandard isnan() and isinf() implementations */
|
||||
#ifndef isnan
|
||||
#ifndef __sun
|
||||
static JSON_INLINE int isnan(double x) { return x != x; }
|
||||
#endif
|
||||
#endif
|
||||
#ifndef isinf
|
||||
static JSON_INLINE int isinf(double x) { return !isnan(x) && isnan(x - x); }
|
||||
#endif
|
||||
@@ -46,19 +36,11 @@ static JSON_INLINE void json_init(json_t *json, json_type type)
|
||||
|
||||
/*** object ***/
|
||||
|
||||
extern volatile uint32_t hashtable_seed;
|
||||
|
||||
json_t *json_object(void)
|
||||
{
|
||||
json_object_t *object = jsonp_malloc(sizeof(json_object_t));
|
||||
if(!object)
|
||||
return NULL;
|
||||
|
||||
if (!hashtable_seed) {
|
||||
/* Autoseed */
|
||||
json_object_seed(0);
|
||||
}
|
||||
|
||||
json_init(&object->json, JSON_OBJECT);
|
||||
|
||||
if(hashtable_init(&object->hashtable))
|
||||
@@ -94,7 +76,7 @@ json_t *json_object_get(const json_t *json, const char *key)
|
||||
{
|
||||
json_object_t *object;
|
||||
|
||||
if(!key || !json_is_object(json))
|
||||
if(!json_is_object(json))
|
||||
return NULL;
|
||||
|
||||
object = json_to_object(json);
|
||||
@@ -126,7 +108,7 @@ int json_object_set_new_nocheck(json_t *json, const char *key, json_t *value)
|
||||
|
||||
int json_object_set_new(json_t *json, const char *key, json_t *value)
|
||||
{
|
||||
if(!key || !utf8_check_string(key, strlen(key)))
|
||||
if(!key || !utf8_check_string(key, -1))
|
||||
{
|
||||
json_decref(value);
|
||||
return -1;
|
||||
@@ -139,7 +121,7 @@ int json_object_del(json_t *json, const char *key)
|
||||
{
|
||||
json_object_t *object;
|
||||
|
||||
if(!key || !json_is_object(json))
|
||||
if(!json_is_object(json))
|
||||
return -1;
|
||||
|
||||
object = json_to_object(json);
|
||||
@@ -638,68 +620,33 @@ static json_t *json_array_deep_copy(const json_t *array)
|
||||
|
||||
/*** string ***/
|
||||
|
||||
static json_t *string_create(const char *value, size_t len, int own)
|
||||
json_t *json_string_nocheck(const char *value)
|
||||
{
|
||||
char *v;
|
||||
json_string_t *string;
|
||||
|
||||
if(!value)
|
||||
return NULL;
|
||||
|
||||
if(own)
|
||||
v = (char *)value;
|
||||
else {
|
||||
v = jsonp_strndup(value, len);
|
||||
if(!v)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
string = jsonp_malloc(sizeof(json_string_t));
|
||||
if(!string) {
|
||||
if(!own)
|
||||
jsonp_free(v);
|
||||
if(!string)
|
||||
return NULL;
|
||||
json_init(&string->json, JSON_STRING);
|
||||
|
||||
string->value = jsonp_strdup(value);
|
||||
if(!string->value) {
|
||||
jsonp_free(string);
|
||||
return NULL;
|
||||
}
|
||||
json_init(&string->json, JSON_STRING);
|
||||
string->value = v;
|
||||
string->length = len;
|
||||
|
||||
return &string->json;
|
||||
}
|
||||
|
||||
json_t *json_string_nocheck(const char *value)
|
||||
{
|
||||
if(!value)
|
||||
return NULL;
|
||||
|
||||
return string_create(value, strlen(value), 0);
|
||||
}
|
||||
|
||||
json_t *json_stringn_nocheck(const char *value, size_t len)
|
||||
{
|
||||
return string_create(value, len, 0);
|
||||
}
|
||||
|
||||
/* this is private; "steal" is not a public API concept */
|
||||
json_t *jsonp_stringn_nocheck_own(const char *value, size_t len)
|
||||
{
|
||||
return string_create(value, len, 1);
|
||||
}
|
||||
|
||||
json_t *json_string(const char *value)
|
||||
{
|
||||
if(!value)
|
||||
if(!value || !utf8_check_string(value, -1))
|
||||
return NULL;
|
||||
|
||||
return json_stringn(value, strlen(value));
|
||||
}
|
||||
|
||||
json_t *json_stringn(const char *value, size_t len)
|
||||
{
|
||||
if(!value || !utf8_check_string(value, len))
|
||||
return NULL;
|
||||
|
||||
return json_stringn_nocheck(value, len);
|
||||
return json_string_nocheck(value);
|
||||
}
|
||||
|
||||
const char *json_string_value(const json_t *json)
|
||||
@@ -710,23 +657,7 @@ const char *json_string_value(const json_t *json)
|
||||
return json_to_string(json)->value;
|
||||
}
|
||||
|
||||
size_t json_string_length(const json_t *json)
|
||||
{
|
||||
if(!json_is_string(json))
|
||||
return 0;
|
||||
|
||||
return json_to_string(json)->length;
|
||||
}
|
||||
|
||||
int json_string_set_nocheck(json_t *json, const char *value)
|
||||
{
|
||||
if(!value)
|
||||
return -1;
|
||||
|
||||
return json_string_setn_nocheck(json, value, strlen(value));
|
||||
}
|
||||
|
||||
int json_string_setn_nocheck(json_t *json, const char *value, size_t len)
|
||||
{
|
||||
char *dup;
|
||||
json_string_t *string;
|
||||
@@ -734,32 +665,23 @@ int json_string_setn_nocheck(json_t *json, const char *value, size_t len)
|
||||
if(!json_is_string(json) || !value)
|
||||
return -1;
|
||||
|
||||
dup = jsonp_strndup(value, len);
|
||||
dup = jsonp_strdup(value);
|
||||
if(!dup)
|
||||
return -1;
|
||||
|
||||
string = json_to_string(json);
|
||||
jsonp_free(string->value);
|
||||
string->value = dup;
|
||||
string->length = len;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int json_string_set(json_t *json, const char *value)
|
||||
{
|
||||
if(!value)
|
||||
if(!value || !utf8_check_string(value, -1))
|
||||
return -1;
|
||||
|
||||
return json_string_setn(json, value, strlen(value));
|
||||
}
|
||||
|
||||
int json_string_setn(json_t *json, const char *value, size_t len)
|
||||
{
|
||||
if(!value || !utf8_check_string(value, len))
|
||||
return -1;
|
||||
|
||||
return json_string_setn_nocheck(json, value, len);
|
||||
return json_string_set_nocheck(json, value);
|
||||
}
|
||||
|
||||
static void json_delete_string(json_string_t *string)
|
||||
@@ -770,25 +692,12 @@ static void json_delete_string(json_string_t *string)
|
||||
|
||||
static int json_string_equal(json_t *string1, json_t *string2)
|
||||
{
|
||||
json_string_t *s1, *s2;
|
||||
|
||||
if(!json_is_string(string1) || !json_is_string(string2))
|
||||
return 0;
|
||||
|
||||
s1 = json_to_string(string1);
|
||||
s2 = json_to_string(string2);
|
||||
return s1->length == s2->length && !memcmp(s1->value, s2->value, s1->length);
|
||||
return strcmp(json_string_value(string1), json_string_value(string2)) == 0;
|
||||
}
|
||||
|
||||
static json_t *json_string_copy(const json_t *string)
|
||||
{
|
||||
json_string_t *s;
|
||||
|
||||
if(!json_is_string(string))
|
||||
return NULL;
|
||||
|
||||
s = json_to_string(string);
|
||||
return json_stringn_nocheck(s->value, s->length);
|
||||
return json_string_nocheck(json_string_value(string));
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -83,7 +83,7 @@
|
||||
Name="VCLinkerTool"
|
||||
AdditionalOptions="/FORCE:MULTIPLE"
|
||||
AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib winmm.lib vfw32.lib msacm32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib"
|
||||
OutputFile="$(OutDir)\fred2_open_3_7_3-DEBUG.exe"
|
||||
OutputFile="$(OutDir)\fred2_open_3_7_2-DEBUG.exe"
|
||||
LinkIncremental="2"
|
||||
SuppressStartupBanner="true"
|
||||
AdditionalLibraryDirectories=""$(ConfigurationName)";../../oggvorbis/lib;../../openal/libs/win32;../../openal/libs/win64;"
|
||||
@@ -197,7 +197,7 @@
|
||||
Name="VCLinkerTool"
|
||||
AdditionalOptions="/FORCE:MULTIPLE"
|
||||
AdditionalDependencies="wsock32.lib winmm.lib msacm32.lib vfw32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib"
|
||||
OutputFile="$(OutDir)\fred2_open_3_7_3.exe"
|
||||
OutputFile="$(OutDir)\fred2_open_3_7_2.exe"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
AdditionalLibraryDirectories=""$(ConfigurationName)";../../oggvorbis/lib;../../openal/libs/win32;../../openal/libs/win64;"
|
||||
|
||||
@@ -84,7 +84,7 @@
|
||||
LinkLibraryDependencies="true"
|
||||
UseLibraryDependencyInputs="false"
|
||||
AdditionalDependencies="odbc32.lib odbccp32.lib wsock32.lib winmm.lib vfw32.lib msacm32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib"
|
||||
OutputFile="$(OutDir)\fs2_open_3_7_3-DEBUG.exe"
|
||||
OutputFile="$(OutDir)\fs2_open_3_7_2-DEBUG.exe"
|
||||
LinkIncremental="2"
|
||||
SuppressStartupBanner="true"
|
||||
AdditionalLibraryDirectories=""$(ConfigurationName)";../../oggvorbis/lib;../../openal/libs/win32;../../openal/libs/win64;"
|
||||
@@ -199,7 +199,7 @@
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="odbc32.lib odbccp32.lib wsock32.lib winmm.lib vfw32.lib msacm32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib"
|
||||
OutputFile="$(OutDir)\fs2_open_3_7_3.exe"
|
||||
OutputFile="$(OutDir)\fs2_open_3_7_2.exe"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
AdditionalLibraryDirectories=""$(ConfigurationName)";../../oggvorbis/lib;../../openal/libs/win32;../../openal/libs/win64;"
|
||||
|
||||
@@ -29,8 +29,8 @@
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
Description="Copying build..."
|
||||
CommandLine="copy "$(TargetPath)" "$(FS2PATH)/wxfred2_open_3_7_3-debug.exe"
copy "$(ProjectDir)..\..\code\wxfred2\wxfred.xrc" "$(FS2PATH)\wxfred.xrc"
"
|
||||
Outputs="$(FS2PATH)/wxfred2_open_3_7_3-debug.exe;$(FS2PATH)\wxfred.xrc"
|
||||
CommandLine="copy "$(TargetPath)" "$(FS2PATH)/wxfred2_open_3_7_2-debug.exe"
copy "$(ProjectDir)..\..\code\wxfred2\wxfred.xrc" "$(FS2PATH)\wxfred.xrc"
"
|
||||
Outputs="$(FS2PATH)/wxfred2_open_3_7_2-debug.exe;$(FS2PATH)\wxfred.xrc"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCXMLDataGeneratorTool"
|
||||
@@ -80,15 +80,15 @@
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="odbc32.lib odbccp32.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib wxmsw28d_xrc.lib wxmsw28d_html.lib wxmsw28d_adv.lib wxmsw28d_core.lib wxbase28d_xml.lib wxbase28d.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexd.lib wxexpatd.lib"
|
||||
OutputFile="Debug/wxfred2_open_3_7_3-debug.exe"
|
||||
OutputFile="Debug/wxfred2_open_3_7_2-debug.exe"
|
||||
LinkIncremental="2"
|
||||
SuppressStartupBanner="true"
|
||||
AdditionalLibraryDirectories="$(WXWIN)/lib,$(WXWIN)/lib/vc_lib"
|
||||
IgnoreDefaultLibraryNames="libcd.lib,libcid.lib"
|
||||
GenerateDebugInformation="true"
|
||||
ProgramDatabaseFile=".\Debug/wxfred2_open_3_7_3-debug.pdb"
|
||||
ProgramDatabaseFile=".\Debug/wxfred2_open_3_7_2-debug.pdb"
|
||||
GenerateMapFile="true"
|
||||
MapFileName=".\Debug\Profile\wxfred2/wxfred2_open_3_7_3-debug.map"
|
||||
MapFileName=".\Debug\Profile\wxfred2/wxfred2_open_3_7_2-debug.map"
|
||||
SubSystem="2"
|
||||
TargetMachine="1"
|
||||
/>
|
||||
@@ -134,8 +134,8 @@
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
Description="Copying build..."
|
||||
CommandLine="copy "$(TargetPath)" "$(FS2PATH)\wxfred2_open_3_7_3.exe"
copy "$(ProjectDir)..\..\code\wxfred2\wxfred.xrc" "$(FS2PATH)\wxfred.xrc"
"
|
||||
Outputs="$(FS2PATH)\wxfred2_open_3_7_3.exe;$(FS2PATH)\wxfred.xrc"
|
||||
CommandLine="copy "$(TargetPath)" "$(FS2PATH)\wxfred2_open_3_7_2.exe"
copy "$(ProjectDir)..\..\code\wxfred2\wxfred.xrc" "$(FS2PATH)\wxfred.xrc"
"
|
||||
Outputs="$(FS2PATH)\wxfred2_open_3_7_2.exe;$(FS2PATH)\wxfred.xrc"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCXMLDataGeneratorTool"
|
||||
@@ -185,15 +185,15 @@
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="odbc32.lib odbccp32.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib wxmsw28_xrc.lib wxmsw28_html.lib wxmsw28_adv.lib wxmsw28_core.lib wxbase28_xml.lib wxbase28.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregex.lib wxexpat.lib"
|
||||
OutputFile="Release/wxfred2_open_3_7_3.exe"
|
||||
OutputFile="Release/wxfred2_open_3_7_2.exe"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
AdditionalLibraryDirectories="$(WXWIN)/lib,$(WXWIN)/lib/vc_lib"
|
||||
IgnoreDefaultLibraryNames="libc.lib,libci.lib"
|
||||
GenerateDebugInformation="false"
|
||||
ProgramDatabaseFile=".\Release/wxfred2_open_3_7_3.pdb"
|
||||
ProgramDatabaseFile=".\Release/wxfred2_open_3_7_2.pdb"
|
||||
GenerateMapFile="false"
|
||||
MapFileName=".\Release\Profile\wxfred2/wxfred2_open_3_7_3.map"
|
||||
MapFileName=".\Release\Profile\wxfred2/wxfred2_open_3_7_2.map"
|
||||
SubSystem="2"
|
||||
TargetMachine="1"
|
||||
/>
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;"
|
||||
PreprocessorDefinitions="_DEBUG;WIN32;_WINDOWS;FRED;WINVER=0x410;_WIN32_WINNT=0x500;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;"
|
||||
PreprocessorDefinitions="_DEBUG;WIN32;_WINDOWS;FRED;WINVER=0x410;_WIN32_WINNT=0x500;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;FS2_SPEECH;FS2_VOICER;"
|
||||
MinimalRebuild="true"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
@@ -84,7 +84,7 @@
|
||||
Name="VCLinkerTool"
|
||||
AdditionalOptions="/FORCE:MULTIPLE"
|
||||
AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib winmm.lib vfw32.lib msacm32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib"
|
||||
OutputFile="$(OutDir)\fred2_open_3_7_3_NO-SSE-DEBUG.exe"
|
||||
OutputFile="$(OutDir)\fred2_open_3_7_2_NO-SSE-DEBUG.exe"
|
||||
LinkIncremental="2"
|
||||
SuppressStartupBanner="true"
|
||||
AdditionalLibraryDirectories=""$(ConfigurationName)";../../oggvorbis/lib;../../openal/libs/win32;../../openal/libs/win64;"
|
||||
@@ -160,7 +160,7 @@
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;"
|
||||
PreprocessorDefinitions="_DEBUG;WIN32;_WINDOWS;FRED;WINVER=0x410;_WIN32_WINNT=0x500;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;"
|
||||
PreprocessorDefinitions="_DEBUG;WIN32;_WINDOWS;FRED;WINVER=0x410;_WIN32_WINNT=0x500;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;FS2_SPEECH;FS2_VOICER;"
|
||||
MinimalRebuild="true"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
@@ -193,7 +193,7 @@
|
||||
Name="VCLinkerTool"
|
||||
AdditionalOptions="/FORCE:MULTIPLE"
|
||||
AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib winmm.lib vfw32.lib msacm32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib"
|
||||
OutputFile="$(OutDir)\fred2_open_3_7_3_SSE-DEBUG.exe"
|
||||
OutputFile="$(OutDir)\fred2_open_3_7_2_SSE-DEBUG.exe"
|
||||
LinkIncremental="2"
|
||||
SuppressStartupBanner="true"
|
||||
AdditionalLibraryDirectories=""$(ConfigurationName)";../../oggvorbis/lib;../../openal/libs/win32;../../openal/libs/win64;"
|
||||
@@ -269,7 +269,7 @@
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;"
|
||||
PreprocessorDefinitions="_DEBUG;WIN32;_WINDOWS;FRED;WINVER=0x410;_WIN32_WINNT=0x500;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;"
|
||||
PreprocessorDefinitions="_DEBUG;WIN32;_WINDOWS;FRED;WINVER=0x410;_WIN32_WINNT=0x500;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;FS2_SPEECH;FS2_VOICER;"
|
||||
MinimalRebuild="true"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
@@ -302,7 +302,7 @@
|
||||
Name="VCLinkerTool"
|
||||
AdditionalOptions="/FORCE:MULTIPLE"
|
||||
AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib winmm.lib vfw32.lib msacm32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib"
|
||||
OutputFile="$(OutDir)\fred2_open_3_7_3-DEBUG.exe"
|
||||
OutputFile="$(OutDir)\fred2_open_3_7_2-DEBUG.exe"
|
||||
LinkIncremental="2"
|
||||
SuppressStartupBanner="true"
|
||||
AdditionalLibraryDirectories=""$(ConfigurationName)";../../oggvorbis/lib;../../openal/libs/win32;../../openal/libs/win64;"
|
||||
@@ -385,7 +385,7 @@
|
||||
OmitFramePointers="true"
|
||||
WholeProgramOptimization="true"
|
||||
AdditionalIncludeDirectories="../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;"
|
||||
PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;FRED;WINVER=0x410;_WIN32_WINNT=0x500;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;"
|
||||
PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;FRED;WINVER=0x410;_WIN32_WINNT=0x500;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;FS2_SPEECH;FS2_VOICER;"
|
||||
StringPooling="true"
|
||||
RuntimeLibrary="0"
|
||||
BufferSecurityCheck="false"
|
||||
@@ -416,7 +416,7 @@
|
||||
Name="VCLinkerTool"
|
||||
AdditionalOptions="/FORCE:MULTIPLE"
|
||||
AdditionalDependencies="wsock32.lib winmm.lib msacm32.lib vfw32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib"
|
||||
OutputFile="$(OutDir)\fred2_open_3_7_3_NO-SSE.exe"
|
||||
OutputFile="$(OutDir)\fred2_open_3_7_2_NO-SSE.exe"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
AdditionalLibraryDirectories=""$(ConfigurationName)";../../oggvorbis/lib;../../openal/libs/win32;../../openal/libs/win64;"
|
||||
@@ -499,7 +499,7 @@
|
||||
OmitFramePointers="true"
|
||||
WholeProgramOptimization="true"
|
||||
AdditionalIncludeDirectories="../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;"
|
||||
PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;FRED;WINVER=0x410;_WIN32_WINNT=0x500;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;"
|
||||
PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;FRED;WINVER=0x410;_WIN32_WINNT=0x500;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;FS2_SPEECH;FS2_VOICER;"
|
||||
StringPooling="true"
|
||||
RuntimeLibrary="0"
|
||||
BufferSecurityCheck="false"
|
||||
@@ -531,7 +531,7 @@
|
||||
Name="VCLinkerTool"
|
||||
AdditionalOptions="/FORCE:MULTIPLE"
|
||||
AdditionalDependencies="wsock32.lib winmm.lib msacm32.lib vfw32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib"
|
||||
OutputFile="$(OutDir)\fred2_open_3_7_3_SSE.exe"
|
||||
OutputFile="$(OutDir)\fred2_open_3_7_2_SSE.exe"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
AdditionalLibraryDirectories=""$(ConfigurationName)";../../oggvorbis/lib;../../openal/libs/win32;../../openal/libs/win64;"
|
||||
@@ -614,7 +614,7 @@
|
||||
OmitFramePointers="true"
|
||||
WholeProgramOptimization="true"
|
||||
AdditionalIncludeDirectories="../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;"
|
||||
PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;FRED;WINVER=0x410;_WIN32_WINNT=0x500;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;"
|
||||
PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;FRED;WINVER=0x410;_WIN32_WINNT=0x500;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;FS2_SPEECH;FS2_VOICER;"
|
||||
StringPooling="true"
|
||||
RuntimeLibrary="0"
|
||||
BufferSecurityCheck="false"
|
||||
@@ -646,7 +646,7 @@
|
||||
Name="VCLinkerTool"
|
||||
AdditionalOptions="/FORCE:MULTIPLE"
|
||||
AdditionalDependencies="wsock32.lib winmm.lib msacm32.lib vfw32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib"
|
||||
OutputFile="$(OutDir)\fred2_open_3_7_3.exe"
|
||||
OutputFile="$(OutDir)\fred2_open_3_7_2.exe"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
AdditionalLibraryDirectories=""$(ConfigurationName)";../../oggvorbis/lib;../../openal/libs/win32;../../openal/libs/win64;"
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;"
|
||||
PreprocessorDefinitions="_WINDOWS;WIN32;_DEBUG;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;"
|
||||
PreprocessorDefinitions="_WINDOWS;WIN32;_DEBUG;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;FS2_SPEECH;FS2_VOICER;"
|
||||
MinimalRebuild="true"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
@@ -75,7 +75,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
PreprocessorDefinitions="_DEBUG;_VC08;"
|
||||
PreprocessorDefinitions="_DEBUG;_VC08;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;"
|
||||
Culture="1033"
|
||||
/>
|
||||
<Tool
|
||||
@@ -87,7 +87,7 @@
|
||||
UseLibraryDependencyInputs="false"
|
||||
AdditionalDependencies="odbc32.lib odbccp32.lib wsock32.lib winmm.lib vfw32.lib msacm32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib ole32.lib advapi32.lib gdi32.lib user32.lib"
|
||||
ShowProgress="0"
|
||||
OutputFile="$(OutDir)\fs2_open_3_7_3_NO-SSE-DEBUG.exe"
|
||||
OutputFile="$(OutDir)\fs2_open_3_7_2_NO-SSE-DEBUG.exe"
|
||||
LinkIncremental="2"
|
||||
SuppressStartupBanner="true"
|
||||
AdditionalLibraryDirectories=""$(ConfigurationName)";../../oggvorbis/lib;../../openal/libs/win32;../../openal/libs/win64;"
|
||||
@@ -164,7 +164,7 @@
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;"
|
||||
PreprocessorDefinitions="_WINDOWS;WIN32;_DEBUG;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;"
|
||||
PreprocessorDefinitions="_WINDOWS;WIN32;_DEBUG;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;FS2_SPEECH;FS2_VOICER;"
|
||||
MinimalRebuild="true"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
@@ -188,7 +188,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
PreprocessorDefinitions="_DEBUG;_VC08;"
|
||||
PreprocessorDefinitions="_DEBUG;_VC08;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;"
|
||||
Culture="1033"
|
||||
/>
|
||||
<Tool
|
||||
@@ -200,7 +200,7 @@
|
||||
UseLibraryDependencyInputs="false"
|
||||
AdditionalDependencies="odbc32.lib odbccp32.lib wsock32.lib winmm.lib vfw32.lib msacm32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib ole32.lib advapi32.lib gdi32.lib user32.lib"
|
||||
ShowProgress="0"
|
||||
OutputFile="$(OutDir)\fs2_open_3_7_3_SSE-DEBUG.exe"
|
||||
OutputFile="$(OutDir)\fs2_open_3_7_2_SSE-DEBUG.exe"
|
||||
LinkIncremental="2"
|
||||
SuppressStartupBanner="true"
|
||||
AdditionalLibraryDirectories=""$(ConfigurationName)";../../oggvorbis/lib;../../openal/libs/win32;../../openal/libs/win64;"
|
||||
@@ -277,7 +277,7 @@
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;"
|
||||
PreprocessorDefinitions="_WINDOWS;WIN32;_DEBUG;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;"
|
||||
PreprocessorDefinitions="_WINDOWS;WIN32;_DEBUG;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;FS2_SPEECH;FS2_VOICER;"
|
||||
MinimalRebuild="true"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
@@ -301,7 +301,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
PreprocessorDefinitions="_DEBUG;_VC08;_SSE2;"
|
||||
PreprocessorDefinitions="_DEBUG;_VC08;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;_SSE2;"
|
||||
Culture="1033"
|
||||
/>
|
||||
<Tool
|
||||
@@ -313,7 +313,7 @@
|
||||
UseLibraryDependencyInputs="false"
|
||||
AdditionalDependencies="odbc32.lib odbccp32.lib wsock32.lib winmm.lib vfw32.lib msacm32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib ole32.lib advapi32.lib gdi32.lib user32.lib"
|
||||
ShowProgress="0"
|
||||
OutputFile="$(OutDir)\fs2_open_3_7_3-DEBUG.exe"
|
||||
OutputFile="$(OutDir)\fs2_open_3_7_2-DEBUG.exe"
|
||||
LinkIncremental="2"
|
||||
SuppressStartupBanner="true"
|
||||
AdditionalLibraryDirectories=""$(ConfigurationName)";../../oggvorbis/lib;../../openal/libs/win32;../../openal/libs/win64;"
|
||||
@@ -397,7 +397,7 @@
|
||||
OmitFramePointers="true"
|
||||
WholeProgramOptimization="true"
|
||||
AdditionalIncludeDirectories="../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;"
|
||||
PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;"
|
||||
PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;FS2_SPEECH;FS2_VOICER;"
|
||||
StringPooling="true"
|
||||
RuntimeLibrary="0"
|
||||
BufferSecurityCheck="false"
|
||||
@@ -419,7 +419,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
PreprocessorDefinitions="NDEBUG;_VC08;"
|
||||
PreprocessorDefinitions="NDEBUG;_VC08;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;"
|
||||
Culture="1033"
|
||||
/>
|
||||
<Tool
|
||||
@@ -428,7 +428,7 @@
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="odbc32.lib odbccp32.lib wsock32.lib winmm.lib vfw32.lib msacm32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib"
|
||||
OutputFile="$(OutDir)\fs2_open_3_7_3_NO-SSE.exe"
|
||||
OutputFile="$(OutDir)\fs2_open_3_7_2_NO-SSE.exe"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
AdditionalLibraryDirectories=""$(ConfigurationName)";../../oggvorbis/lib;../../openal/libs/win32;../../openal/libs/win64;"
|
||||
@@ -514,7 +514,7 @@
|
||||
OmitFramePointers="true"
|
||||
WholeProgramOptimization="true"
|
||||
AdditionalIncludeDirectories="../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;"
|
||||
PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;"
|
||||
PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;FS2_SPEECH;FS2_VOICER;"
|
||||
StringPooling="true"
|
||||
RuntimeLibrary="0"
|
||||
BufferSecurityCheck="false"
|
||||
@@ -537,7 +537,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
PreprocessorDefinitions="NDEBUG;_VC08;"
|
||||
PreprocessorDefinitions="NDEBUG;_VC08;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;"
|
||||
Culture="1033"
|
||||
/>
|
||||
<Tool
|
||||
@@ -546,7 +546,7 @@
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="odbc32.lib odbccp32.lib wsock32.lib winmm.lib vfw32.lib msacm32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib"
|
||||
OutputFile="$(OutDir)\fs2_open_3_7_3_SSE.exe"
|
||||
OutputFile="$(OutDir)\fs2_open_3_7_2_SSE.exe"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
AdditionalLibraryDirectories=""$(ConfigurationName)";../../oggvorbis/lib;../../openal/libs/win32;../../openal/libs/win64;"
|
||||
@@ -632,7 +632,7 @@
|
||||
OmitFramePointers="true"
|
||||
WholeProgramOptimization="true"
|
||||
AdditionalIncludeDirectories="../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;"
|
||||
PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;"
|
||||
PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;FS2_SPEECH;FS2_VOICER;"
|
||||
StringPooling="true"
|
||||
RuntimeLibrary="0"
|
||||
BufferSecurityCheck="false"
|
||||
@@ -655,7 +655,7 @@
|
||||
/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
PreprocessorDefinitions="NDEBUG;_VC08;_SSE2;"
|
||||
PreprocessorDefinitions="NDEBUG;_VC08;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;FS2_VOICER;_SSE2;"
|
||||
Culture="1033"
|
||||
/>
|
||||
<Tool
|
||||
@@ -664,7 +664,7 @@
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="odbc32.lib odbccp32.lib wsock32.lib winmm.lib vfw32.lib msacm32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib"
|
||||
OutputFile="$(OutDir)\fs2_open_3_7_3.exe"
|
||||
OutputFile="$(OutDir)\fs2_open_3_7_2.exe"
|
||||
LinkIncremental="1"
|
||||
SuppressStartupBanner="true"
|
||||
AdditionalLibraryDirectories=""$(ConfigurationName)";../../oggvorbis/lib;../../openal/libs/win32;../../openal/libs/win64;"
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;"
|
||||
PreprocessorDefinitions="_WINDOWS;WIN32;_DEBUG;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;"
|
||||
PreprocessorDefinitions="_WINDOWS;WIN32;_DEBUG;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;FS2_SPEECH;FS2_VOICER;"
|
||||
MinimalRebuild="true"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
@@ -123,7 +123,7 @@
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;"
|
||||
PreprocessorDefinitions="_WINDOWS;WIN32;_DEBUG;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;"
|
||||
PreprocessorDefinitions="_WINDOWS;WIN32;_DEBUG;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;FS2_SPEECH;FS2_VOICER;"
|
||||
MinimalRebuild="true"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
@@ -206,7 +206,7 @@
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;"
|
||||
PreprocessorDefinitions="_WINDOWS;WIN32;_DEBUG;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;"
|
||||
PreprocessorDefinitions="_WINDOWS;WIN32;_DEBUG;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;FS2_SPEECH;FS2_VOICER;"
|
||||
MinimalRebuild="true"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
@@ -296,7 +296,7 @@
|
||||
OmitFramePointers="true"
|
||||
WholeProgramOptimization="true"
|
||||
AdditionalIncludeDirectories="../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;"
|
||||
PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;"
|
||||
PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;FS2_SPEECH;FS2_VOICER;"
|
||||
StringPooling="true"
|
||||
ExceptionHandling="1"
|
||||
RuntimeLibrary="0"
|
||||
@@ -382,7 +382,7 @@
|
||||
OmitFramePointers="true"
|
||||
WholeProgramOptimization="true"
|
||||
AdditionalIncludeDirectories="../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;"
|
||||
PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;"
|
||||
PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;FS2_SPEECH;FS2_VOICER;"
|
||||
StringPooling="true"
|
||||
ExceptionHandling="1"
|
||||
RuntimeLibrary="0"
|
||||
@@ -469,7 +469,7 @@
|
||||
OmitFramePointers="true"
|
||||
WholeProgramOptimization="true"
|
||||
AdditionalIncludeDirectories="../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;"
|
||||
PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;"
|
||||
PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;FS2_SPEECH;FS2_VOICER;"
|
||||
StringPooling="true"
|
||||
ExceptionHandling="1"
|
||||
RuntimeLibrary="0"
|
||||
|
||||
@@ -125,12 +125,12 @@
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">fred2_open_3_7_3-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE|Win32'">fred2_open_3_7_3_SSE-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE2|Win32'">fred2_open_3_7_3_SSE2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">fred2_open_3_7_3</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE|Win32'">fred2_open_3_7_3_SSE</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE2|Win32'">fred2_open_3_7_3_SSE2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">fred2_open_3_7_2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE|Win32'">fred2_open_3_7_2_SSE-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE2|Win32'">fred2_open_3_7_2_SSE2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">fred2_open_3_7_2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE|Win32'">fred2_open_3_7_2_SSE</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE2|Win32'">fred2_open_3_7_2_SSE2</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<CustomBuildStep>
|
||||
|
||||
@@ -124,12 +124,12 @@
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">fs2_open_3_7_3-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE|Win32'">fs2_open_3_7_3_SSE-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE2|Win32'">fs2_open_3_7_3_SSE2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">fs2_open_3_7_3</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE|Win32'">fs2_open_3_7_3_SSE</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE2|Win32'">fs2_open_3_7_3_SSE2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">fs2_open_3_7_2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE|Win32'">fs2_open_3_7_2_SSE-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE2|Win32'">fs2_open_3_7_2_SSE2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">fs2_open_3_7_2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE|Win32'">fs2_open_3_7_2_SSE</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE2|Win32'">fs2_open_3_7_2_SSE2</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<CustomBuildStep>
|
||||
|
||||
@@ -100,7 +100,7 @@
|
||||
<AdditionalDependencies>comctl32.lib;rpcrt4.lib;winmm.lib;advapi32.lib;wsock32.lib;wxmsw29ud_core.lib;wxbase29ud.lib</AdditionalDependencies>
|
||||
</Link>
|
||||
<CustomBuildStep>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\wxfred2_open_3_7_3-debug.exe" </Command>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\wxfred2_open_3_7_2-debug.exe" </Command>
|
||||
<Message>Copying build...</Message>
|
||||
<Outputs>$(FS2PATH)\wxfred2_open$(FS_VERSION_FULL)-debug.exe;$(FS2PATH)\wxfred.xrc;%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
@@ -159,9 +159,9 @@
|
||||
<AdditionalDependencies>comctl32.lib;rpcrt4.lib;winmm.lib;advapi32.lib;wsock32.lib;wxmsw29u_core.lib;wxbase29u.lib</AdditionalDependencies>
|
||||
</Link>
|
||||
<CustomBuildStep>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)/wxfred2_open_3_7_3.exe"</Command>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)/wxfred2_open_3_7_2.exe"</Command>
|
||||
<Message>Copying build...</Message>
|
||||
<Outputs>$(FS2PATH)\wxfred2_open_3_7_3.exe;%(Outputs)</Outputs>
|
||||
<Outputs>$(FS2PATH)\wxfred2_open_3_7_2.exe;%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
|
||||
@@ -171,14 +171,14 @@
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">fred2_open_3_7_3-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE|Win32'">fred2_open_3_7_3_SSE-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE2|Win32'">fred2_open_3_7_3_SSE2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug AVX|Win32'">fred2_open_3_7_3_AVX-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">fred2_open_3_7_3</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE|Win32'">fred2_open_3_7_3_SSE2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE2|Win32'">fred2_open_3_7_3_SSE2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release AVX|Win32'">fred2_open_3_7_3_AVX</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">fred2_open_3_7_2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE|Win32'">fred2_open_3_7_2_SSE-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE2|Win32'">fred2_open_3_7_2_SSE2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug AVX|Win32'">fred2_open_3_7_2_AVX-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">fred2_open_3_7_2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE|Win32'">fred2_open_3_7_2_SSE2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE2|Win32'">fred2_open_3_7_2_SSE2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release AVX|Win32'">fred2_open_3_7_2_AVX</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<CustomBuildStep>
|
||||
|
||||
@@ -170,14 +170,14 @@
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">fs2_open_3_7_3-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE|Win32'">fs2_open_3_7_3_SSE-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE2|Win32'">fs2_open_3_7_3_SSE2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug AVX|Win32'">fs2_open_3_7_3_AVX-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">fs2_open_3_7_3</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE|Win32'">fs2_open_3_7_3_SSE</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE2|Win32'">fs2_open_3_7_3_SSE2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release AVX|Win32'">fs2_open_3_7_3_AVX</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">fs2_open_3_7_2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE|Win32'">fs2_open_3_7_2_SSE-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE2|Win32'">fs2_open_3_7_2_SSE2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug AVX|Win32'">fs2_open_3_7_2_AVX-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">fs2_open_3_7_2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE|Win32'">fs2_open_3_7_2_SSE</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE2|Win32'">fs2_open_3_7_2_SSE2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release AVX|Win32'">fs2_open_3_7_2_AVX</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<CustomBuildStep>
|
||||
|
||||
@@ -95,10 +95,10 @@
|
||||
<AdditionalDependencies>odbc32.lib;odbccp32.lib;comctl32.lib;rpcrt4.lib;wsock32.lib;winmm.lib;wxmsw28d_xrc.lib;wxmsw28d_html.lib;wxmsw28d_adv.lib;wxmsw28d_core.lib;wxbase28d_xml.lib;wxbase28d.lib;wxtiffd.lib;wxjpegd.lib;wxpngd.lib;wxzlibd.lib;wxregexd.lib;wxexpatd.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
</Link>
|
||||
<CustomBuildStep>
|
||||
<Command>copy %(FullPath) "$(FS2PATH)/wxfred2_open_3_7_3-debug.exe"
|
||||
<Command>copy %(FullPath) "$(FS2PATH)/wxfred2_open_3_7_2-debug.exe"
|
||||
copy "$(ProjectDir)..\..\code\wxfred2\wxfred.xrc" "$(FS2PATH)\wxfred.xrc"</Command>
|
||||
<Message>Copying build...</Message>
|
||||
<Outputs>$(FS2PATH)/wxfred2_open_3_7_3-debug.exe;$(FS2PATH)\wxfred.xrc;%(Outputs)</Outputs>
|
||||
<Outputs>$(FS2PATH)/wxfred2_open_3_7_2-debug.exe;$(FS2PATH)\wxfred.xrc;%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
@@ -146,10 +146,10 @@ copy "$(ProjectDir)..\..\code\wxfred2\wxfred.xrc" "$(FS2PATH)\wxfred.xrc"</Comma
|
||||
<AdditionalDependencies>odbc32.lib;odbccp32.lib;comctl32.lib;rpcrt4.lib;wsock32.lib;winmm.lib;wxmsw28_xrc.lib;wxmsw28_html.lib;wxmsw28_adv.lib;wxmsw28_core.lib;wxbase28_xml.lib;wxbase28.lib;wxtiff.lib;wxjpeg.lib;wxpng.lib;wxzlib.lib;wxregex.lib;wxexpat.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
</Link>
|
||||
<CustomBuildStep>
|
||||
<Command>copy %(FullPath) "$(FS2PATH)\wxfred2_open_3_7_3.exe"
|
||||
<Command>copy %(FullPath) "$(FS2PATH)\wxfred2_open_3_7_2.exe"
|
||||
copy "$(ProjectDir)..\..\code\wxfred2\wxfred.xrc" "$(FS2PATH)\wxfred.xrc"</Command>
|
||||
<Message>Copying build...</Message>
|
||||
<Outputs>$(FS2PATH)\wxfred2_open_3_7_3.exe;$(FS2PATH)\wxfred.xrc;%(Outputs)</Outputs>
|
||||
<Outputs>$(FS2PATH)\wxfred2_open_3_7_2.exe;$(FS2PATH)\wxfred.xrc;%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
|
||||
@@ -170,17 +170,22 @@
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">fred2_open_3_7_3-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE|Win32'">fred2_open_3_7_3_SSE-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE2|Win32'">fred2_open_3_7_3_SSE2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug AVX|Win32'">fred2_open_3_7_3_AVX-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">fred2_open_3_7_3</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE|Win32'">fred2_open_3_7_3_SSE2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE2|Win32'">fred2_open_3_7_3_SSE2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release AVX|Win32'">fred2_open_3_7_3_AVX</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">fred2_open_3_7_2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE|Win32'">fred2_open_3_7_2_SSE-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE2|Win32'">fred2_open_3_7_2_SSE2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug AVX|Win32'">fred2_open_3_7_2_AVX-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">fred2_open_3_7_2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE|Win32'">fred2_open_3_7_2_SSE2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE2|Win32'">fred2_open_3_7_2_SSE2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release AVX|Win32'">fred2_open_3_7_2_AVX</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<CustomBuildStep />
|
||||
<CustomBuildStep>
|
||||
<Message>Copying build...</Message>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
</Command>
|
||||
<Outputs>$(FS2PATH)\$(TargetFileName);%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
@@ -194,6 +199,7 @@
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>_DEBUG;WIN32;_WINDOWS;FRED;WINVER=0x501;_WIN32_WINNT=0x501;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
@@ -208,7 +214,6 @@
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<EnablePREfast>false</EnablePREfast>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;_VC08;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
@@ -223,6 +228,7 @@
|
||||
<IgnoreSpecificDefaultLibraries>libc.lib;libcd.lib;libcmt.lib;libci.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<GenerateMapFile>true</GenerateMapFile>
|
||||
<MapFileName>$(TargetDir)$(TargetName).map</MapFileName>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
@@ -237,13 +243,17 @@
|
||||
<OutputFile>$(IntDir)$(ProjectName).bsc</OutputFile>
|
||||
</Bscmake>
|
||||
<PostBuildEvent>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"</Command>
|
||||
<Message>Copying FRED build...</Message>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug SSE|Win32'">
|
||||
<CustomBuildStep />
|
||||
<CustomBuildStep>
|
||||
<Message>Copying build...</Message>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
</Command>
|
||||
<Outputs>$(FS2PATH)\$(TargetFileName);%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
@@ -257,6 +267,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>_DEBUG;WIN32;_WINDOWS;FRED;WINVER=0x501;_WIN32_WINNT=0x501;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
@@ -273,7 +284,6 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<EnablePREfast>false</EnablePREfast>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;_VC08;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
@@ -288,6 +298,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<IgnoreSpecificDefaultLibraries>libc.lib;libcd.lib;libcmt.lib;libci.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<GenerateMapFile>true</GenerateMapFile>
|
||||
<MapFileName>$(TargetDir)$(TargetName).map</MapFileName>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
@@ -302,13 +313,17 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<OutputFile>$(IntDir)$(ProjectName).bsc</OutputFile>
|
||||
</Bscmake>
|
||||
<PostBuildEvent>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"</Command>
|
||||
<Message>Copying FRED build...</Message>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug SSE2|Win32'">
|
||||
<CustomBuildStep />
|
||||
<CustomBuildStep>
|
||||
<Message>Copying build...</Message>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
</Command>
|
||||
<Outputs>$(FS2PATH)\$(TargetFileName);%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
@@ -322,6 +337,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>_DEBUG;WIN32;_WINDOWS;FRED;WINVER=0x501;_WIN32_WINNT=0x501;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
@@ -338,7 +354,6 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<EnablePREfast>false</EnablePREfast>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;_VC08;_SSE2;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
@@ -353,6 +368,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<IgnoreSpecificDefaultLibraries>libc.lib;libcd.lib;libcmt.lib;libci.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<GenerateMapFile>true</GenerateMapFile>
|
||||
<MapFileName>$(TargetDir)$(TargetName).map</MapFileName>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
@@ -367,13 +383,17 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<OutputFile>$(IntDir)$(ProjectName).bsc</OutputFile>
|
||||
</Bscmake>
|
||||
<PostBuildEvent>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"</Command>
|
||||
<Message>Copying FRED build...</Message>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug AVX|Win32'">
|
||||
<CustomBuildStep />
|
||||
<CustomBuildStep>
|
||||
<Message>Copying build...</Message>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
</Command>
|
||||
<Outputs>$(FS2PATH)\$(TargetFileName);%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
@@ -387,6 +407,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>_DEBUG;WIN32;_WINDOWS;FRED;WINVER=0x501;_WIN32_WINNT=0x501;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
@@ -403,7 +424,6 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<EnablePREfast>false</EnablePREfast>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;_VC08;_SSE2;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
@@ -418,6 +438,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<IgnoreSpecificDefaultLibraries>libc.lib;libcd.lib;libcmt.lib;libci.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<GenerateMapFile>true</GenerateMapFile>
|
||||
<MapFileName>$(TargetDir)$(TargetName).map</MapFileName>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
@@ -432,13 +453,17 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<OutputFile>$(IntDir)$(ProjectName).bsc</OutputFile>
|
||||
</Bscmake>
|
||||
<PostBuildEvent>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"</Command>
|
||||
<Message>Copying FRED build...</Message>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<CustomBuildStep />
|
||||
<CustomBuildStep>
|
||||
<Message>Copying build...</Message>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
</Command>
|
||||
<Outputs>$(FS2PATH)\$(TargetFileName);%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
@@ -462,7 +487,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>false</FunctionLevelLinking>
|
||||
<FloatingPointModel>Precise</FloatingPointModel>
|
||||
<FloatingPointModel>Fast</FloatingPointModel>
|
||||
<PrecompiledHeaderOutputFile>$(OutDir)$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||
@@ -472,8 +497,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<BrowseInformationFile>$(IntDir)</BrowseInformationFile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<EnablePREfast>false</EnablePREfast>
|
||||
<DebugInformationFormat>OldStyle</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;_VC08;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
@@ -487,6 +511,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<EnableUAC>false</EnableUAC>
|
||||
<IgnoreSpecificDefaultLibraries>libc.lib;libcd.lib;libci.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<GenerateMapFile>true</GenerateMapFile>
|
||||
<MapFileName>$(TargetDir)$(TargetName).map</MapFileName>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
@@ -495,20 +520,23 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<AdditionalOptions>/FORCE:MULTIPLE %(AdditionalOptions)</AdditionalOptions>
|
||||
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
</Link>
|
||||
<Bscmake>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<OutputFile>$(IntDir)$(ProjectName).bsc</OutputFile>
|
||||
</Bscmake>
|
||||
<PostBuildEvent>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"</Command>
|
||||
<Message>Copying FRED build...</Message>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release SSE|Win32'">
|
||||
<CustomBuildStep />
|
||||
<CustomBuildStep>
|
||||
<Message>Copying build...</Message>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
</Command>
|
||||
<Outputs>$(FS2PATH)\$(TargetFileName);%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
@@ -543,8 +571,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<BrowseInformationFile>$(IntDir)</BrowseInformationFile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<EnablePREfast>false</EnablePREfast>
|
||||
<DebugInformationFormat>OldStyle</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;_VC08;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
@@ -558,6 +585,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<EnableUAC>false</EnableUAC>
|
||||
<IgnoreSpecificDefaultLibraries>libc.lib;libcd.lib;libci.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<GenerateMapFile>true</GenerateMapFile>
|
||||
<MapFileName>$(TargetDir)$(TargetName).map</MapFileName>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
@@ -566,20 +594,23 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<AdditionalOptions>/FORCE:MULTIPLE %(AdditionalOptions)</AdditionalOptions>
|
||||
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
</Link>
|
||||
<Bscmake>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<OutputFile>$(IntDir)$(ProjectName).bsc</OutputFile>
|
||||
</Bscmake>
|
||||
<PostBuildEvent>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"</Command>
|
||||
<Message>Copying FRED build...</Message>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release SSE2|Win32'">
|
||||
<CustomBuildStep />
|
||||
<CustomBuildStep>
|
||||
<Message>Copying build...</Message>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
</Command>
|
||||
<Outputs>$(FS2PATH)\$(TargetFileName);%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
@@ -614,8 +645,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<BrowseInformationFile>$(IntDir)</BrowseInformationFile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<EnablePREfast>false</EnablePREfast>
|
||||
<DebugInformationFormat>OldStyle</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;_VC08;_SSE2;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
@@ -629,6 +659,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<EnableUAC>false</EnableUAC>
|
||||
<IgnoreSpecificDefaultLibraries>libc.lib;libcd.lib;libci.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<GenerateMapFile>true</GenerateMapFile>
|
||||
<MapFileName>$(TargetDir)$(TargetName).map</MapFileName>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
@@ -637,20 +668,23 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<AdditionalOptions>/FORCE:MULTIPLE %(AdditionalOptions)</AdditionalOptions>
|
||||
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
</Link>
|
||||
<Bscmake>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<OutputFile>$(IntDir)$(ProjectName).bsc</OutputFile>
|
||||
</Bscmake>
|
||||
<PostBuildEvent>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"</Command>
|
||||
<Message>Copying FRED build...</Message>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release AVX|Win32'">
|
||||
<CustomBuildStep />
|
||||
<CustomBuildStep>
|
||||
<Message>Copying build...</Message>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
</Command>
|
||||
<Outputs>$(FS2PATH)\$(TargetFileName);%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
@@ -674,7 +708,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>false</FunctionLevelLinking>
|
||||
<EnableEnhancedInstructionSet>AdvancedVectorExtensions</EnableEnhancedInstructionSet>
|
||||
<EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
|
||||
<FloatingPointModel>Precise</FloatingPointModel>
|
||||
<PrecompiledHeaderOutputFile>$(OutDir)$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||
@@ -685,8 +719,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<BrowseInformationFile>$(IntDir)</BrowseInformationFile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<EnablePREfast>false</EnablePREfast>
|
||||
<DebugInformationFormat>OldStyle</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;_VC08;_SSE2;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
@@ -700,6 +733,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<EnableUAC>false</EnableUAC>
|
||||
<IgnoreSpecificDefaultLibraries>libc.lib;libcd.lib;libci.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<GenerateMapFile>true</GenerateMapFile>
|
||||
<MapFileName>$(TargetDir)$(TargetName).map</MapFileName>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
@@ -708,15 +742,13 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<AdditionalOptions>/FORCE:MULTIPLE %(AdditionalOptions)</AdditionalOptions>
|
||||
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
</Link>
|
||||
<Bscmake>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<OutputFile>$(IntDir)$(ProjectName).bsc</OutputFile>
|
||||
</Bscmake>
|
||||
<PostBuildEvent>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"</Command>
|
||||
<Message>Copying FRED build...</Message>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
|
||||
@@ -169,17 +169,22 @@
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">fs2_open_3_7_3-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE|Win32'">fs2_open_3_7_3_SSE-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE2|Win32'">fs2_open_3_7_3_SSE2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug AVX|Win32'">fs2_open_3_7_3_AVX-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">fs2_open_3_7_3</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE|Win32'">fs2_open_3_7_3_SSE</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE2|Win32'">fs2_open_3_7_3_SSE2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release AVX|Win32'">fs2_open_3_7_3_AVX</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">fs2_open_3_7_2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE|Win32'">fs2_open_3_7_2_SSE-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE2|Win32'">fs2_open_3_7_2_SSE2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug AVX|Win32'">fs2_open_3_7_2_AVX-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">fs2_open_3_7_2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE|Win32'">fs2_open_3_7_2_SSE</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE2|Win32'">fs2_open_3_7_2_SSE2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release AVX|Win32'">fs2_open_3_7_2_AVX</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<CustomBuildStep />
|
||||
<CustomBuildStep>
|
||||
<Message>Copying build...</Message>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
</Command>
|
||||
<Outputs>$(FS2PATH)\$(TargetFileName);%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
@@ -192,7 +197,8 @@
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>FS2_SPEECH;FS2_VOICER;_WINDOWS;WIN32;_DEBUG;USE_OPENAL;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>_WINDOWS;WIN32;_DEBUG;USE_OPENAL;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
@@ -208,9 +214,11 @@
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<UndefinePreprocessorDefinitions>NDEBUG;%(UndefinePreprocessorDefinitions)</UndefinePreprocessorDefinitions>
|
||||
<EnablePREfast>false</EnablePREfast>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;_VC08;FS2_VOICER;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>_DEBUG;_VC08;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<ProjectReference>
|
||||
@@ -227,8 +235,9 @@
|
||||
<IgnoreSpecificDefaultLibraries>libc.lib;libcd.lib;libcmt.lib;libci.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<GenerateMapFile>true</GenerateMapFile>
|
||||
<MapFileName>$(TargetDir)$(TargetName).map</MapFileName>
|
||||
<MapExports>false</MapExports>
|
||||
<MapExports>true</MapExports>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
@@ -242,15 +251,19 @@
|
||||
</OutputFile>
|
||||
</Bscmake>
|
||||
<PostBuildEvent>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"</Command>
|
||||
</PostBuildEvent>
|
||||
<PostBuildEvent>
|
||||
<Message>Copying build...</Message>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug SSE|Win32'">
|
||||
<CustomBuildStep />
|
||||
<CustomBuildStep>
|
||||
<Message>Copying build...</Message>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
</Command>
|
||||
<Outputs>$(FS2PATH)\$(TargetFileName);%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
@@ -263,7 +276,8 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>FS2_SPEECH;FS2_VOICER;_WINDOWS;WIN32;_DEBUG;USE_OPENAL;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>_WINDOWS;WIN32;_DEBUG;USE_OPENAL;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
@@ -281,9 +295,10 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<UndefinePreprocessorDefinitions>NDEBUG;%(UndefinePreprocessorDefinitions)</UndefinePreprocessorDefinitions>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;_VC08;FS2_VOICER;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>_DEBUG;_VC08;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<ProjectReference>
|
||||
@@ -300,8 +315,9 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<IgnoreSpecificDefaultLibraries>libc.lib;libcd.lib;libcmt.lib;libci.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<GenerateMapFile>true</GenerateMapFile>
|
||||
<MapFileName>$(TargetDir)$(TargetName).map</MapFileName>
|
||||
<MapExports>false</MapExports>
|
||||
<MapExports>true</MapExports>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
@@ -315,15 +331,19 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
</OutputFile>
|
||||
</Bscmake>
|
||||
<PostBuildEvent>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"</Command>
|
||||
</PostBuildEvent>
|
||||
<PostBuildEvent>
|
||||
<Message>Copying build...</Message>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug SSE2|Win32'">
|
||||
<CustomBuildStep />
|
||||
<CustomBuildStep>
|
||||
<Message>Copying build...</Message>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
</Command>
|
||||
<Outputs>$(FS2PATH)\$(TargetFileName);%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
@@ -336,7 +356,8 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>FS2_SPEECH;FS2_VOICER;_WINDOWS;WIN32;_DEBUG;USE_OPENAL;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>_WINDOWS;WIN32;_DEBUG;USE_OPENAL;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
@@ -354,9 +375,10 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<UndefinePreprocessorDefinitions>NDEBUG;%(UndefinePreprocessorDefinitions)</UndefinePreprocessorDefinitions>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;_VC08;_SSE2;FS2_VOICER;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>_DEBUG;_VC08;_SSE2;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<ProjectReference>
|
||||
@@ -373,8 +395,9 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<IgnoreSpecificDefaultLibraries>libc.lib;libcd.lib;libcmt.lib;libci.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<GenerateMapFile>true</GenerateMapFile>
|
||||
<MapFileName>$(TargetDir)$(TargetName).map</MapFileName>
|
||||
<MapExports>false</MapExports>
|
||||
<MapExports>true</MapExports>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
@@ -388,15 +411,19 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
</OutputFile>
|
||||
</Bscmake>
|
||||
<PostBuildEvent>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"</Command>
|
||||
</PostBuildEvent>
|
||||
<PostBuildEvent>
|
||||
<Message>Copying build...</Message>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug AVX|Win32'">
|
||||
<CustomBuildStep />
|
||||
<CustomBuildStep>
|
||||
<Message>Copying build...</Message>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
</Command>
|
||||
<Outputs>$(FS2PATH)\$(TargetFileName);%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
@@ -409,7 +436,8 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>FS2_SPEECH;FS2_VOICER;_WINDOWS;WIN32;_DEBUG;USE_OPENAL;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>_WINDOWS;WIN32;_DEBUG;USE_OPENAL;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
@@ -427,9 +455,10 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<UndefinePreprocessorDefinitions>NDEBUG;%(UndefinePreprocessorDefinitions)</UndefinePreprocessorDefinitions>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;_VC08;_SSE2;FS2_VOICER;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>_DEBUG;_VC08;_SSE2;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<ProjectReference>
|
||||
@@ -446,8 +475,9 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<IgnoreSpecificDefaultLibraries>libc.lib;libcd.lib;libcmt.lib;libci.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<GenerateMapFile>true</GenerateMapFile>
|
||||
<MapFileName>$(TargetDir)$(TargetName).map</MapFileName>
|
||||
<MapExports>false</MapExports>
|
||||
<MapExports>true</MapExports>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
@@ -461,15 +491,19 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
</OutputFile>
|
||||
</Bscmake>
|
||||
<PostBuildEvent>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"</Command>
|
||||
</PostBuildEvent>
|
||||
<PostBuildEvent>
|
||||
<Message>Copying build...</Message>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<CustomBuildStep />
|
||||
<CustomBuildStep>
|
||||
<Message>Copying build...</Message>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
</Command>
|
||||
<Outputs>$(FS2PATH)\$(TargetFileName);%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
@@ -480,19 +514,19 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
</HeaderFileName>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>Full</Optimization>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<AdditionalIncludeDirectories>../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>FS2_SPEECH;FS2_VOICER;NDEBUG;WIN32;_WINDOWS;USE_OPENAL;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>NDEBUG;WIN32;_WINDOWS;USE_OPENAL;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>false</FunctionLevelLinking>
|
||||
<FloatingPointModel>Precise</FloatingPointModel>
|
||||
<FloatingPointModel>Fast</FloatingPointModel>
|
||||
<PrecompiledHeaderOutputFile>$(OutDir)$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||
@@ -505,10 +539,9 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<UndefinePreprocessorDefinitions>_DEBUG;%(UndefinePreprocessorDefinitions)</UndefinePreprocessorDefinitions>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<AdditionalOptions>/Zo %(AdditionalOptions)</AdditionalOptions>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;_VC08;FS2_VOICER;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>NDEBUG;_VC08;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
@@ -519,8 +552,9 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<EnableUAC>false</EnableUAC>
|
||||
<IgnoreSpecificDefaultLibraries>libc.lib;libcd.lib;libci.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<GenerateMapFile>true</GenerateMapFile>
|
||||
<MapFileName>$(TargetDir)$(TargetName).map</MapFileName>
|
||||
<MapExports>false</MapExports>
|
||||
<MapExports>true</MapExports>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
@@ -528,7 +562,6 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
</Link>
|
||||
<Bscmake>
|
||||
<AdditionalOptions>"$(IntDir)*.sbr" %(AdditionalOptions)</AdditionalOptions>
|
||||
@@ -536,15 +569,19 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<OutputFile>$(IntDir)$(ProjectName).bsc</OutputFile>
|
||||
</Bscmake>
|
||||
<PostBuildEvent>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"</Command>
|
||||
</PostBuildEvent>
|
||||
<PostBuildEvent>
|
||||
<Message>Copying build...</Message>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release SSE|Win32'">
|
||||
<CustomBuildStep />
|
||||
<CustomBuildStep>
|
||||
<Message>Copying build...</Message>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
</Command>
|
||||
<Outputs>$(FS2PATH)\$(TargetFileName);%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
@@ -562,7 +599,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<AdditionalIncludeDirectories>../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>FS2_SPEECH;FS2_VOICER;NDEBUG;WIN32;_WINDOWS;USE_OPENAL;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>NDEBUG;WIN32;_WINDOWS;USE_OPENAL;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
@@ -578,13 +615,13 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<BrowseInformationFile>$(IntDir)</BrowseInformationFile>
|
||||
<WarningLevel>Level2</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<UndefinePreprocessorDefinitions>_DEBUG;%(UndefinePreprocessorDefinitions)</UndefinePreprocessorDefinitions>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<AdditionalOptions>/Zo %(AdditionalOptions)</AdditionalOptions>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;_VC08;FS2_VOICER;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>NDEBUG;_VC08;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
@@ -595,6 +632,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<EnableUAC>false</EnableUAC>
|
||||
<IgnoreSpecificDefaultLibraries>libc.lib;libcd.lib;libci.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<GenerateMapFile>true</GenerateMapFile>
|
||||
<MapFileName>$(TargetDir)$(TargetName).map</MapFileName>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
|
||||
@@ -603,8 +641,6 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<MapExports>false</MapExports>
|
||||
</Link>
|
||||
<Bscmake>
|
||||
<AdditionalOptions>"$(IntDir)*.sbr" %(AdditionalOptions)</AdditionalOptions>
|
||||
@@ -612,15 +648,19 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<OutputFile>$(IntDir)$(ProjectName).bsc</OutputFile>
|
||||
</Bscmake>
|
||||
<PostBuildEvent>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"</Command>
|
||||
</PostBuildEvent>
|
||||
<PostBuildEvent>
|
||||
<Message>Copying build...</Message>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release SSE2|Win32'">
|
||||
<CustomBuildStep />
|
||||
<CustomBuildStep>
|
||||
<Message>Copying build...</Message>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
</Command>
|
||||
<Outputs>$(FS2PATH)\$(TargetFileName);%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
@@ -638,7 +678,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<AdditionalIncludeDirectories>../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>FS2_SPEECH;FS2_VOICER;NDEBUG;WIN32;_WINDOWS;USE_OPENAL;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>NDEBUG;WIN32;_WINDOWS;USE_OPENAL;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
@@ -654,13 +694,13 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<BrowseInformationFile>$(IntDir)</BrowseInformationFile>
|
||||
<WarningLevel>Level2</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<UndefinePreprocessorDefinitions>_DEBUG;%(UndefinePreprocessorDefinitions)</UndefinePreprocessorDefinitions>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<AdditionalOptions>/Zo %(AdditionalOptions)</AdditionalOptions>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;_VC08;_SSE2;FS2_VOICER;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>NDEBUG;_VC08;_SSE2;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
@@ -672,6 +712,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<UACUIAccess>false</UACUIAccess>
|
||||
<IgnoreSpecificDefaultLibraries>libc.lib;libcd.lib;libci.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<GenerateMapFile>true</GenerateMapFile>
|
||||
<MapFileName>$(TargetDir)$(TargetName).map</MapFileName>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
|
||||
@@ -680,9 +721,6 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<MapExports>false</MapExports>
|
||||
</Link>
|
||||
<Bscmake>
|
||||
<AdditionalOptions>"$(IntDir)*.sbr" %(AdditionalOptions)</AdditionalOptions>
|
||||
@@ -690,16 +728,19 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<OutputFile>$(IntDir)$(ProjectName).bsc</OutputFile>
|
||||
</Bscmake>
|
||||
<PostBuildEvent>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"</Command>
|
||||
</PostBuildEvent>
|
||||
<PostBuildEvent>
|
||||
<Message>Copying build...</Message>
|
||||
</PostBuildEvent>
|
||||
<ProjectReference />
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release AVX|Win32'">
|
||||
<CustomBuildStep />
|
||||
<CustomBuildStep>
|
||||
<Message>Copying build...</Message>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
</Command>
|
||||
<Outputs>$(FS2PATH)\$(TargetFileName);%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
@@ -717,12 +758,12 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<AdditionalIncludeDirectories>../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>FS2_SPEECH;FS2_VOICER;NDEBUG;WIN32;_WINDOWS;USE_OPENAL;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>NDEBUG;WIN32;_WINDOWS;USE_OPENAL;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>false</FunctionLevelLinking>
|
||||
<EnableEnhancedInstructionSet>AdvancedVectorExtensions</EnableEnhancedInstructionSet>
|
||||
<EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
|
||||
<FloatingPointModel>Precise</FloatingPointModel>
|
||||
<PrecompiledHeaderOutputFile>$(OutDir)$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||
@@ -733,13 +774,13 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<BrowseInformationFile>$(IntDir)</BrowseInformationFile>
|
||||
<WarningLevel>Level2</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<UndefinePreprocessorDefinitions>_DEBUG;%(UndefinePreprocessorDefinitions)</UndefinePreprocessorDefinitions>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<AdditionalOptions>/Zo %(AdditionalOptions)</AdditionalOptions>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;_VC08;_SSE2;FS2_VOICER;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>NDEBUG;_VC08;_SSE2;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
@@ -751,6 +792,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<UACUIAccess>false</UACUIAccess>
|
||||
<IgnoreSpecificDefaultLibraries>libc.lib;libcd.lib;libci.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<GenerateMapFile>true</GenerateMapFile>
|
||||
<MapFileName>$(TargetDir)$(TargetName).map</MapFileName>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
|
||||
@@ -759,9 +801,6 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<MapExports>false</MapExports>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
</Link>
|
||||
<Bscmake>
|
||||
<AdditionalOptions>"$(IntDir)*.sbr" %(AdditionalOptions)</AdditionalOptions>
|
||||
@@ -769,8 +808,7 @@ copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command
|
||||
<OutputFile>$(IntDir)$(ProjectName).bsc</OutputFile>
|
||||
</Bscmake>
|
||||
<PostBuildEvent>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"
|
||||
copy /y "$(OutputPath)$(TargetName).pdb" "$(FS2PATH)\$(TargetName).pdb"</Command>
|
||||
<Command>copy /y "$(TargetPath)" "$(FS2PATH)\$(TargetFileName)"</Command>
|
||||
</PostBuildEvent>
|
||||
<PostBuildEvent>
|
||||
<Message>Copying build...</Message>
|
||||
|
||||
@@ -158,7 +158,8 @@
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>FS2_SPEECH;FS2_VOICER;_WINDOWS;WIN32;_DEBUG;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>_WINDOWS;WIN32;_DEBUG;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
@@ -174,8 +175,6 @@
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<UndefinePreprocessorDefinitions>NDEBUG;%(UndefinePreprocessorDefinitions)</UndefinePreprocessorDefinitions>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<EnablePREfast>false</EnablePREfast>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
@@ -200,7 +199,8 @@
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>FS2_SPEECH;FS2_VOICER;_WINDOWS;WIN32;_DEBUG;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>_WINDOWS;WIN32;_DEBUG;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
@@ -218,8 +218,6 @@
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<UndefinePreprocessorDefinitions>NDEBUG;%(UndefinePreprocessorDefinitions)</UndefinePreprocessorDefinitions>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<EnablePREfast>false</EnablePREfast>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
@@ -244,7 +242,8 @@
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>FS2_SPEECH;FS2_VOICER;_WINDOWS;WIN32;_DEBUG;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>_WINDOWS;WIN32;_DEBUG;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
@@ -262,8 +261,6 @@
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<UndefinePreprocessorDefinitions>NDEBUG;%(UndefinePreprocessorDefinitions)</UndefinePreprocessorDefinitions>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<EnablePREfast>false</EnablePREfast>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
@@ -288,7 +285,8 @@
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>FS2_SPEECH;FS2_VOICER;_WINDOWS;WIN32;_DEBUG;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>_WINDOWS;WIN32;_DEBUG;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
@@ -306,8 +304,6 @@
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
|
||||
<UndefinePreprocessorDefinitions>NDEBUG;%(UndefinePreprocessorDefinitions)</UndefinePreprocessorDefinitions>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<EnablePREfast>false</EnablePREfast>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
@@ -338,13 +334,13 @@
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<AdditionalIncludeDirectories>../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>FS2_SPEECH;FS2_VOICER;NDEBUG;WIN32;_WINDOWS;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>NDEBUG;WIN32;_WINDOWS;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>false</FunctionLevelLinking>
|
||||
<FloatingPointModel>Precise</FloatingPointModel>
|
||||
<FloatingPointModel>Fast</FloatingPointModel>
|
||||
<PrecompiledHeaderOutputFile>$(OutDir)$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||
@@ -354,10 +350,9 @@
|
||||
<BrowseInformationFile>$(IntDir)</BrowseInformationFile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<UndefinePreprocessorDefinitions>_DEBUG;%(UndefinePreprocessorDefinitions)</UndefinePreprocessorDefinitions>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<EnablePREfast>false</EnablePREfast>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
@@ -382,7 +377,7 @@
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<AdditionalIncludeDirectories>../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>FS2_SPEECH;FS2_VOICER;NDEBUG;WIN32;_WINDOWS;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>NDEBUG;WIN32;_WINDOWS;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
@@ -399,10 +394,9 @@
|
||||
<BrowseInformationFile>$(IntDir)</BrowseInformationFile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<UndefinePreprocessorDefinitions>_DEBUG;%(UndefinePreprocessorDefinitions)</UndefinePreprocessorDefinitions>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<EnablePREfast>false</EnablePREfast>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
@@ -427,7 +421,7 @@
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<AdditionalIncludeDirectories>../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>FS2_SPEECH;FS2_VOICER;NDEBUG;WIN32;_WINDOWS;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>NDEBUG;WIN32;_WINDOWS;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
@@ -444,10 +438,9 @@
|
||||
<BrowseInformationFile>$(IntDir)</BrowseInformationFile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<UndefinePreprocessorDefinitions>_DEBUG;%(UndefinePreprocessorDefinitions)</UndefinePreprocessorDefinitions>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<EnablePREfast>false</EnablePREfast>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
@@ -472,13 +465,13 @@
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<AdditionalIncludeDirectories>../../code;../../libjpeg;../../libpng;../../lua;../../oggvorbis/include;../../openal/include;../../zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>FS2_SPEECH;FS2_VOICER;NDEBUG;WIN32;_WINDOWS;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions>NDEBUG;WIN32;_WINDOWS;PDB_DEBUGGING;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>false</FunctionLevelLinking>
|
||||
<EnableEnhancedInstructionSet>AdvancedVectorExtensions</EnableEnhancedInstructionSet>
|
||||
<EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
|
||||
<FloatingPointModel>Precise</FloatingPointModel>
|
||||
<PrecompiledHeaderOutputFile>$(OutDir)$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||
@@ -489,10 +482,9 @@
|
||||
<BrowseInformationFile>$(IntDir)</BrowseInformationFile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<UndefinePreprocessorDefinitions>_DEBUG;%(UndefinePreprocessorDefinitions)</UndefinePreprocessorDefinitions>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<EnablePREfast>false</EnablePREfast>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
@@ -536,8 +528,8 @@
|
||||
<ClCompile Include="..\..\code\cutscene\oggplayer.cpp" />
|
||||
<ClCompile Include="..\..\code\Debris\debris.cpp" />
|
||||
<ClCompile Include="..\..\code\debugconsole\console.cpp" />
|
||||
<ClCompile Include="..\..\code\debugconsole\consolecmds.cpp" />
|
||||
<ClCompile Include="..\..\code\debugconsole\consoleparse.cpp" />
|
||||
<ClCompile Include="..\..\code\debugconsole\consolecmds.cpp" />
|
||||
<ClCompile Include="..\..\code\debugconsole\consoleparse.cpp" />
|
||||
<ClCompile Include="..\..\code\fireball\fireballs.cpp" />
|
||||
<ClCompile Include="..\..\code\fireball\warpineffect.cpp" />
|
||||
<ClCompile Include="..\..\code\gamehelp\contexthelp.cpp" />
|
||||
@@ -817,8 +809,8 @@
|
||||
<ClInclude Include="..\..\code\cutscene\mvelib.h" />
|
||||
<ClInclude Include="..\..\code\cutscene\oggplayer.h" />
|
||||
<ClInclude Include="..\..\code\debugconsole\console.h" />
|
||||
<ClInclude Include="..\..\code\debugconsole\consoleparse.h" />
|
||||
<ClInclude Include="..\..\code\Debris\debris.h" />
|
||||
<ClInclude Include="..\..\code\debugconsole\consoleparse.h" />
|
||||
<ClInclude Include="..\..\code\Debris\debris.h" />
|
||||
<ClInclude Include="..\..\code\DirectX\vasync.h" />
|
||||
<ClInclude Include="..\..\code\DirectX\vdinput.h" />
|
||||
<ClInclude Include="..\..\code\DirectX\vdplay.h" />
|
||||
|
||||
@@ -166,6 +166,7 @@
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_LIB;WIN32;_DEBUG;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
@@ -197,6 +198,7 @@
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_LIB;WIN32;_DEBUG;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
@@ -230,6 +232,7 @@
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_LIB;WIN32;_DEBUG;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
@@ -263,6 +266,7 @@
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_LIB;WIN32;_DEBUG;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
@@ -307,7 +311,7 @@
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>false</FunctionLevelLinking>
|
||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
||||
<FloatingPointModel>Precise</FloatingPointModel>
|
||||
<FloatingPointModel>Fast</FloatingPointModel>
|
||||
<PrecompiledHeaderOutputFile>$(OutDir)$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||
@@ -423,7 +427,7 @@
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>false</FunctionLevelLinking>
|
||||
<EnableEnhancedInstructionSet>AdvancedVectorExtensions</EnableEnhancedInstructionSet>
|
||||
<EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
|
||||
<FloatingPointModel>Precise</FloatingPointModel>
|
||||
<PrecompiledHeaderOutputFile>$(OutDir)$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||
|
||||
@@ -170,6 +170,7 @@
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
@@ -201,6 +202,7 @@
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
@@ -234,6 +236,7 @@
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
@@ -267,6 +270,7 @@
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
@@ -310,7 +314,7 @@
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<FloatingPointModel>Precise</FloatingPointModel>
|
||||
<FloatingPointModel>Fast</FloatingPointModel>
|
||||
<PrecompiledHeaderOutputFile>$(OutDir)$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||
@@ -429,7 +433,7 @@
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<EnableEnhancedInstructionSet>AdvancedVectorExtensions</EnableEnhancedInstructionSet>
|
||||
<EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
|
||||
<FloatingPointModel>Precise</FloatingPointModel>
|
||||
<PrecompiledHeaderOutputFile>$(OutDir)$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||
|
||||
@@ -159,6 +159,7 @@
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>PNG_DEBUG=1;WIN32;_DEBUG;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
@@ -189,6 +190,7 @@
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>PNG_DEBUG=1;WIN32;_DEBUG;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
@@ -221,6 +223,7 @@
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>PNG_DEBUG=1;WIN32;_DEBUG;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
@@ -253,6 +256,7 @@
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>PNG_DEBUG=1;WIN32;_DEBUG;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
@@ -297,14 +301,15 @@
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>false</FunctionLevelLinking>
|
||||
<FloatingPointModel>Precise</FloatingPointModel>
|
||||
<FloatingPointModel>Fast</FloatingPointModel>
|
||||
<PrecompiledHeaderOutputFile>$(OutDir)$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||
<ProgramDataBaseFileName>$(IntDir)</ProgramDataBaseFileName>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<CompileAs>CompileAsC</CompileAs>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
@@ -346,7 +351,8 @@
|
||||
<ProgramDataBaseFileName>$(IntDir)</ProgramDataBaseFileName>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<CompileAs>CompileAsC</CompileAs>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
@@ -388,7 +394,8 @@
|
||||
<ProgramDataBaseFileName>$(IntDir)</ProgramDataBaseFileName>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<CompileAs>CompileAsC</CompileAs>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
@@ -422,7 +429,7 @@
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>false</FunctionLevelLinking>
|
||||
<EnableEnhancedInstructionSet>AdvancedVectorExtensions</EnableEnhancedInstructionSet>
|
||||
<EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
|
||||
<FloatingPointModel>Precise</FloatingPointModel>
|
||||
<PrecompiledHeaderOutputFile>$(OutDir)$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||
@@ -430,7 +437,8 @@
|
||||
<ProgramDataBaseFileName>$(IntDir)</ProgramDataBaseFileName>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<CompileAs>CompileAsC</CompileAs>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
|
||||
@@ -95,10 +95,10 @@
|
||||
<AdditionalDependencies>odbc32.lib;odbccp32.lib;comctl32.lib;rpcrt4.lib;wsock32.lib;winmm.lib;wxmsw28d_xrc.lib;wxmsw28d_html.lib;wxmsw28d_adv.lib;wxmsw28d_core.lib;wxbase28d_xml.lib;wxbase28d.lib;wxtiffd.lib;wxjpegd.lib;wxpngd.lib;wxzlibd.lib;wxregexd.lib;wxexpatd.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
</Link>
|
||||
<CustomBuildStep>
|
||||
<Command>copy %(FullPath) "$(FS2PATH)/wxfred2_open_3_7_3-debug.exe"
|
||||
<Command>copy %(FullPath) "$(FS2PATH)/wxfred2_open_3_7_2-debug.exe"
|
||||
copy "$(ProjectDir)..\..\code\wxfred2\wxfred.xrc" "$(FS2PATH)\wxfred.xrc"</Command>
|
||||
<Message>Copying build...</Message>
|
||||
<Outputs>$(FS2PATH)/wxfred2_open_3_7_3-debug.exe;$(FS2PATH)\wxfred.xrc;%(Outputs)</Outputs>
|
||||
<Outputs>$(FS2PATH)/wxfred2_open_3_7_2-debug.exe;$(FS2PATH)\wxfred.xrc;%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
@@ -146,10 +146,10 @@ copy "$(ProjectDir)..\..\code\wxfred2\wxfred.xrc" "$(FS2PATH)\wxfred.xrc"</Comma
|
||||
<AdditionalDependencies>odbc32.lib;odbccp32.lib;comctl32.lib;rpcrt4.lib;wsock32.lib;winmm.lib;wxmsw28_xrc.lib;wxmsw28_html.lib;wxmsw28_adv.lib;wxmsw28_core.lib;wxbase28_xml.lib;wxbase28.lib;wxtiff.lib;wxjpeg.lib;wxpng.lib;wxzlib.lib;wxregex.lib;wxexpat.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
</Link>
|
||||
<CustomBuildStep>
|
||||
<Command>copy %(FullPath) "$(FS2PATH)\wxfred2_open_3_7_3.exe"
|
||||
<Command>copy %(FullPath) "$(FS2PATH)\wxfred2_open_3_7_2.exe"
|
||||
copy "$(ProjectDir)..\..\code\wxfred2\wxfred.xrc" "$(FS2PATH)\wxfred.xrc"</Command>
|
||||
<Message>Copying build...</Message>
|
||||
<Outputs>$(FS2PATH)\wxfred2_open_3_7_3.exe;$(FS2PATH)\wxfred.xrc;%(Outputs)</Outputs>
|
||||
<Outputs>$(FS2PATH)\wxfred2_open_3_7_2.exe;$(FS2PATH)\wxfred.xrc;%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
|
||||
@@ -158,6 +158,7 @@
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
@@ -186,6 +187,7 @@
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
@@ -216,6 +218,7 @@
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
@@ -246,6 +249,7 @@
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0;_HAS_ITERATOR_DEBUGGING=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
@@ -285,7 +289,7 @@
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<FloatingPointModel>Precise</FloatingPointModel>
|
||||
<FloatingPointModel>Fast</FloatingPointModel>
|
||||
<PrecompiledHeaderOutputFile>$(OutDir)$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||
<ObjectFileName>$(IntDir)</ObjectFileName>
|
||||
@@ -395,7 +399,7 @@
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<EnableEnhancedInstructionSet>AdvancedVectorExtensions</EnableEnhancedInstructionSet>
|
||||
<EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
|
||||
<FloatingPointModel>Precise</FloatingPointModel>
|
||||
<PrecompiledHeaderOutputFile>$(OutDir)$(ProjectName).pch</PrecompiledHeaderOutputFile>
|
||||
<AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
|
||||
|
||||
@@ -170,14 +170,14 @@
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">fred2_open_3_7_3-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE|Win32'">fred2_open_3_7_3_SSE-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE2|Win32'">fred2_open_3_7_3_SSE2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug AVX|Win32'">fred2_open_3_7_3_AVX-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">fred2_open_3_7_3</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE|Win32'">fred2_open_3_7_3_SSE2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE2|Win32'">fred2_open_3_7_3_SSE2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release AVX|Win32'">fred2_open_3_7_3_AVX</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">fred2_open_3_7_2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE|Win32'">fred2_open_3_7_2_SSE-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE2|Win32'">fred2_open_3_7_2_SSE2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug AVX|Win32'">fred2_open_3_7_2_AVX-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">fred2_open_3_7_2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE|Win32'">fred2_open_3_7_2_SSE2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE2|Win32'">fred2_open_3_7_2_SSE2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release AVX|Win32'">fred2_open_3_7_2_AVX</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<CustomBuildStep>
|
||||
|
||||
@@ -169,14 +169,14 @@
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">fs2_open_3_7_3-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE|Win32'">fs2_open_3_7_3_SSE-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE2|Win32'">fs2_open_3_7_3_SSE2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug AVX|Win32'">fs2_open_3_7_3_AVX-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">fs2_open_3_7_3</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE|Win32'">fs2_open_3_7_3_SSE</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE2|Win32'">fs2_open_3_7_3_SSE2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release AVX|Win32'">fs2_open_3_7_3_AVX</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">fs2_open_3_7_2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE|Win32'">fs2_open_3_7_2_SSE-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug SSE2|Win32'">fs2_open_3_7_2_SSE2-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug AVX|Win32'">fs2_open_3_7_2_AVX-DEBUG</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">fs2_open_3_7_2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE|Win32'">fs2_open_3_7_2_SSE</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release SSE2|Win32'">fs2_open_3_7_2_SSE2</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release AVX|Win32'">fs2_open_3_7_2_AVX</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<CustomBuildStep>
|
||||
|
||||
@@ -95,10 +95,10 @@
|
||||
<AdditionalDependencies>odbc32.lib;odbccp32.lib;comctl32.lib;rpcrt4.lib;wsock32.lib;winmm.lib;wxmsw28d_xrc.lib;wxmsw28d_html.lib;wxmsw28d_adv.lib;wxmsw28d_core.lib;wxbase28d_xml.lib;wxbase28d.lib;wxtiffd.lib;wxjpegd.lib;wxpngd.lib;wxzlibd.lib;wxregexd.lib;wxexpatd.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
</Link>
|
||||
<CustomBuildStep>
|
||||
<Command>copy %(FullPath) "$(FS2PATH)/wxfred2_open_3_7_3-debug.exe"
|
||||
<Command>copy %(FullPath) "$(FS2PATH)/wxfred2_open_3_7_2-debug.exe"
|
||||
copy "$(ProjectDir)..\..\code\wxfred2\wxfred.xrc" "$(FS2PATH)\wxfred.xrc"</Command>
|
||||
<Message>Copying build...</Message>
|
||||
<Outputs>$(FS2PATH)/wxfred2_open_3_7_3-debug.exe;$(FS2PATH)\wxfred.xrc;%(Outputs)</Outputs>
|
||||
<Outputs>$(FS2PATH)/wxfred2_open_3_7_2-debug.exe;$(FS2PATH)\wxfred.xrc;%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
@@ -146,10 +146,10 @@ copy "$(ProjectDir)..\..\code\wxfred2\wxfred.xrc" "$(FS2PATH)\wxfred.xrc"</Comma
|
||||
<AdditionalDependencies>odbc32.lib;odbccp32.lib;comctl32.lib;rpcrt4.lib;wsock32.lib;winmm.lib;wxmsw28_xrc.lib;wxmsw28_html.lib;wxmsw28_adv.lib;wxmsw28_core.lib;wxbase28_xml.lib;wxbase28.lib;wxtiff.lib;wxjpeg.lib;wxpng.lib;wxzlib.lib;wxregex.lib;wxexpat.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
</Link>
|
||||
<CustomBuildStep>
|
||||
<Command>copy %(FullPath) "$(FS2PATH)\wxfred2_open_3_7_3.exe"
|
||||
<Command>copy %(FullPath) "$(FS2PATH)\wxfred2_open_3_7_2.exe"
|
||||
copy "$(ProjectDir)..\..\code\wxfred2\wxfred.xrc" "$(FS2PATH)\wxfred.xrc"</Command>
|
||||
<Message>Copying build...</Message>
|
||||
<Outputs>$(FS2PATH)\wxfred2_open_3_7_3.exe;$(FS2PATH)\wxfred.xrc;%(Outputs)</Outputs>
|
||||
<Outputs>$(FS2PATH)\wxfred2_open_3_7_2.exe;$(FS2PATH)\wxfred.xrc;%(Outputs)</Outputs>
|
||||
</CustomBuildStep>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
|
||||
@@ -54,14 +54,14 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386
|
||||
# ADD LINK32 wsock32.lib winmm.lib msacm32.lib vfw32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib /nologo /subsystem:windows /pdb:none /machine:I386 /nodefaultlib:"libc.lib" /nodefaultlib:"libcd.lib" /out:"Release/fred2_open_3_7_3.exe" /libpath:"Release" /libpath:"../../STLport-5.2.1/lib" /libpath:"../../oggvorbis/lib" /libpath:"../../openal/libs/win32" /libpath:"../../openal/libs/win64" /MAPINFO:EXPORTS /MAPINFO:LINES /FORCE:MULTIPLE
|
||||
# ADD LINK32 wsock32.lib winmm.lib msacm32.lib vfw32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib /nologo /subsystem:windows /pdb:none /machine:I386 /nodefaultlib:"libc.lib" /nodefaultlib:"libcd.lib" /out:"Release/fred2_open_3_7_2.exe" /libpath:"Release" /libpath:"../../STLport-5.2.1/lib" /libpath:"../../oggvorbis/lib" /libpath:"../../openal/libs/win32" /libpath:"../../openal/libs/win64" /MAPINFO:EXPORTS /MAPINFO:LINES /FORCE:MULTIPLE
|
||||
# SUBTRACT LINK32 /map
|
||||
# Begin Custom Build - Copying build...
|
||||
InputPath=.\Release\fred2_open_3_7_3.exe
|
||||
InputPath=.\Release\fred2_open_3_7_2.exe
|
||||
SOURCE="$(InputPath)"
|
||||
|
||||
"$(FS2PATH)/fred2_open_3_7_3.exe" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
|
||||
copy /y $(InputPath) "$(FS2PATH)/fred2_open_3_7_3.exe"
|
||||
"$(FS2PATH)/fred2_open_3_7_2.exe" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
|
||||
copy /y $(InputPath) "$(FS2PATH)/fred2_open_3_7_2.exe"
|
||||
|
||||
# End Custom Build
|
||||
|
||||
@@ -89,14 +89,14 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept
|
||||
# ADD LINK32 Quartz.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib winmm.lib vfw32.lib msacm32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib /nologo /subsystem:windows /map /debug /machine:I386 /nodefaultlib:"libc.lib" /nodefaultlib:"libcd.lib" /nodefaultlib:"libcmt.lib" /out:"Debug/fred2_open_3_7_3-debug.exe" /pdbtype:sept /libpath:"Debug" /libpath:"../../STLport-5.2.1/lib" /libpath:"../../oggvorbis/lib" /libpath:"../../openal/libs/win32" /libpath:"../../openal/libs/win64" /MAPINFO:EXPORTS /MAPINFO:LINES /FORCE:MULTIPLE
|
||||
# ADD LINK32 Quartz.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib winmm.lib vfw32.lib msacm32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib /nologo /subsystem:windows /map /debug /machine:I386 /nodefaultlib:"libc.lib" /nodefaultlib:"libcd.lib" /nodefaultlib:"libcmt.lib" /out:"Debug/fred2_open_3_7_2-debug.exe" /pdbtype:sept /libpath:"Debug" /libpath:"../../STLport-5.2.1/lib" /libpath:"../../oggvorbis/lib" /libpath:"../../openal/libs/win32" /libpath:"../../openal/libs/win64" /MAPINFO:EXPORTS /MAPINFO:LINES /FORCE:MULTIPLE
|
||||
# SUBTRACT LINK32 /pdb:none
|
||||
# Begin Custom Build - Copying build...
|
||||
InputPath=.\Debug\fred2_open_3_7_3-debug.exe
|
||||
InputPath=.\Debug\fred2_open_3_7_2-debug.exe
|
||||
SOURCE="$(InputPath)"
|
||||
|
||||
"$(FS2PATH)/fred2_open_3_7_3-debug.exe" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
|
||||
copy /y $(InputPath) "$(FS2PATH)/fred2_open_3_7_3-debug.exe"
|
||||
"$(FS2PATH)/fred2_open_3_7_2-debug.exe" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
|
||||
copy /y $(InputPath) "$(FS2PATH)/fred2_open_3_7_2-debug.exe"
|
||||
|
||||
# End Custom Build
|
||||
|
||||
|
||||
@@ -54,14 +54,14 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo /o"Release\Profile\Freespace2.bsc" "Release\Profile\*.sbr"
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386
|
||||
# ADD LINK32 Quartz.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib winmm.lib vfw32.lib msacm32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib /nologo /subsystem:windows /pdb:none /machine:I386 /nodefaultlib:"libc.lib" /nodefaultlib:"libcd.lib" /out:"Release/fs2_open_3_7_3.exe" /libpath:"Release" /libpath:"../../STLport-5.2.1/lib" /libpath:"../../oggvorbis/lib" /libpath:"../../openal/libs/win32" /libpath:"../../openal/libs/win64" /MAPINFO:EXPORTS /MAPINFO:LINES
|
||||
# ADD LINK32 Quartz.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib winmm.lib vfw32.lib msacm32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib /nologo /subsystem:windows /pdb:none /machine:I386 /nodefaultlib:"libc.lib" /nodefaultlib:"libcd.lib" /out:"Release/fs2_open_3_7_2.exe" /libpath:"Release" /libpath:"../../STLport-5.2.1/lib" /libpath:"../../oggvorbis/lib" /libpath:"../../openal/libs/win32" /libpath:"../../openal/libs/win64" /MAPINFO:EXPORTS /MAPINFO:LINES
|
||||
# SUBTRACT LINK32 /map /debug
|
||||
# Begin Custom Build - Copying build...
|
||||
InputPath=.\Release\fs2_open_3_7_3.exe
|
||||
InputPath=.\Release\fs2_open_3_7_2.exe
|
||||
SOURCE="$(InputPath)"
|
||||
|
||||
"$(FS2PATH)/fs2_open_3_7_3.exe" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
|
||||
copy /y $(InputPath) "$(FS2PATH)/fs2_open_3_7_3.exe"
|
||||
"$(FS2PATH)/fs2_open_3_7_2.exe" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
|
||||
copy /y $(InputPath) "$(FS2PATH)/fs2_open_3_7_2.exe"
|
||||
|
||||
# End Custom Build
|
||||
|
||||
@@ -89,14 +89,14 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo /o"Debug\Profile\Freespace2.bsc" "Debug\Profile\*.sbr"
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept
|
||||
# ADD LINK32 Quartz.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib winmm.lib vfw32.lib msacm32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib /nologo /subsystem:windows /map /debug /debugtype:both /machine:I386 /nodefaultlib:"libc.lib" /nodefaultlib:"libcd.lib" /nodefaultlib:"libcmt.lib" /out:"Debug\fs2_open_3_7_3-debug.exe" /libpath:"Debug" /libpath:"../../STLport-5.2.1/lib" /libpath:"../../oggvorbis/lib" /libpath:"../../openal/libs/win32" /libpath:"../../openal/libs/win64" /MAPINFO:EXPORTS /MAPINFO:LINES
|
||||
# ADD LINK32 Quartz.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib winmm.lib vfw32.lib msacm32.lib comctl32.lib openal32.lib ogg_static.lib vorbis_static.lib vorbisfile_static.lib theora_static.lib /nologo /subsystem:windows /map /debug /debugtype:both /machine:I386 /nodefaultlib:"libc.lib" /nodefaultlib:"libcd.lib" /nodefaultlib:"libcmt.lib" /out:"Debug\fs2_open_3_7_2-debug.exe" /libpath:"Debug" /libpath:"../../STLport-5.2.1/lib" /libpath:"../../oggvorbis/lib" /libpath:"../../openal/libs/win32" /libpath:"../../openal/libs/win64" /MAPINFO:EXPORTS /MAPINFO:LINES
|
||||
# SUBTRACT LINK32 /pdb:none /incremental:no
|
||||
# Begin Custom Build - Copying build...
|
||||
InputPath=.\Debug\fs2_open_3_7_3-debug.exe
|
||||
InputPath=.\Debug\fs2_open_3_7_2-debug.exe
|
||||
SOURCE="$(InputPath)"
|
||||
|
||||
"$(FS2PATH)/fs2_open_3_7_3-debug.exe" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
|
||||
copy /y $(InputPath) "$(FS2PATH)/fs2_open_3_7_3-debug.exe"
|
||||
"$(FS2PATH)/fs2_open_3_7_2-debug.exe" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
|
||||
copy /y $(InputPath) "$(FS2PATH)/fs2_open_3_7_2-debug.exe"
|
||||
|
||||
# End Custom Build
|
||||
|
||||
|
||||
@@ -54,18 +54,18 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo /o"Release/Profile/wxFRED2.bsc" "Release\Profile\*.sbr"
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib wxmsw28_xrc.lib wxmsw28_html.lib wxmsw28_adv.lib wxmsw28_core.lib wxbase28_xml.lib wxbase28.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregex.lib wxexpat.lib /nologo /subsystem:windows /pdb:none /machine:I386 /nodefaultlib:"libc.lib" /nodefaultlib:"libci.lib" /out:"Release/wxfred2_open_3_7_3.exe" /libpath:"../../STLport-5.2.1/lib" /libpath:"$(WXWIN)/lib" /libpath:"$(WXWIN)/lib/vc_lib"
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib wxmsw28_xrc.lib wxmsw28_html.lib wxmsw28_adv.lib wxmsw28_core.lib wxbase28_xml.lib wxbase28.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregex.lib wxexpat.lib /nologo /subsystem:windows /pdb:none /machine:I386 /nodefaultlib:"libc.lib" /nodefaultlib:"libci.lib" /out:"Release/wxfred2_open_3_7_2.exe" /libpath:"../../STLport-5.2.1/lib" /libpath:"$(WXWIN)/lib" /libpath:"$(WXWIN)/lib/vc_lib"
|
||||
# SUBTRACT LINK32 /map /debug /nodefaultlib
|
||||
# Begin Custom Build - Copying build...
|
||||
ProjDir=.
|
||||
InputPath=.\Release\wxfred2_open_3_7_3.exe
|
||||
InputPath=.\Release\wxfred2_open_3_7_2.exe
|
||||
SOURCE="$(InputPath)"
|
||||
|
||||
BuildCmds= \
|
||||
copy $(InputPath) "$(FS2PATH)\wxfred2_open_3_7_3.exe" \
|
||||
copy $(InputPath) "$(FS2PATH)\wxfred2_open_3_7_2.exe" \
|
||||
copy "$(ProjDir)\..\..\code\wxfred2\wxfred.xrc" "$(FS2PATH)\wxfred.xrc" \
|
||||
|
||||
"$(FS2PATH)\wxfred2_open_3_7_3.exe" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
|
||||
"$(FS2PATH)\wxfred2_open_3_7_2.exe" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
|
||||
$(BuildCmds)
|
||||
|
||||
"$(FS2PATH)\wxfred.xrc" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
|
||||
@@ -96,18 +96,18 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo /o"Debug/Profile/wxFRED2.bsc" "Debug\Profile\*.sbr"
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib wxmsw28d_xrc.lib wxmsw28d_html.lib wxmsw28d_adv.lib wxmsw28d_core.lib wxbase28d_xml.lib wxbase28d.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexd.lib wxexpatd.lib /nologo /subsystem:windows /map /debug /machine:I386 /nodefaultlib:"libcd.lib" /nodefaultlib:"libcid.lib" /out:"Debug/wxfred2_open_3_7_3-debug.exe" /pdbtype:sept /libpath:"../../STLport-5.2.1/lib" /libpath:"$(WXWIN)/lib" /libpath:"$(WXWIN)/lib/vc_lib"
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib wxmsw28d_xrc.lib wxmsw28d_html.lib wxmsw28d_adv.lib wxmsw28d_core.lib wxbase28d_xml.lib wxbase28d.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexd.lib wxexpatd.lib /nologo /subsystem:windows /map /debug /machine:I386 /nodefaultlib:"libcd.lib" /nodefaultlib:"libcid.lib" /out:"Debug/wxfred2_open_3_7_2-debug.exe" /pdbtype:sept /libpath:"../../STLport-5.2.1/lib" /libpath:"$(WXWIN)/lib" /libpath:"$(WXWIN)/lib/vc_lib"
|
||||
# SUBTRACT LINK32 /nodefaultlib
|
||||
# Begin Custom Build - Copying build...
|
||||
ProjDir=.
|
||||
InputPath=.\Debug\wxfred2_open_3_7_3-debug.exe
|
||||
InputPath=.\Debug\wxfred2_open_3_7_2-debug.exe
|
||||
SOURCE="$(InputPath)"
|
||||
|
||||
BuildCmds= \
|
||||
copy $(InputPath) "$(FS2PATH)/wxfred2_open_3_7_3-debug.exe" \
|
||||
copy $(InputPath) "$(FS2PATH)/wxfred2_open_3_7_2-debug.exe" \
|
||||
copy "$(ProjDir)\..\..\code\wxfred2\wxfred.xrc" "$(FS2PATH)\wxfred.xrc" \
|
||||
|
||||
"$(FS2PATH)/wxfred2_open_3_7_3-debug.exe" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
|
||||
"$(FS2PATH)/wxfred2_open_3_7_2-debug.exe" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
|
||||
$(BuildCmds)
|
||||
|
||||
"$(FS2PATH)\wxfred.xrc" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
|
||||
|
||||
Binary file not shown.
@@ -4534,7 +4534,7 @@
|
||||
i386,
|
||||
);
|
||||
COPY_PHASE_STRIP = NO;
|
||||
CURRENT_PROJECT_VERSION = "3.7.3";
|
||||
CURRENT_PROJECT_VERSION = 3.7.2;
|
||||
DEAD_CODE_STRIPPING = NO;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
DEPLOYMENT_POSTPROCESSING = YES;
|
||||
@@ -4567,7 +4567,7 @@
|
||||
i386,
|
||||
);
|
||||
COPY_PHASE_STRIP = NO;
|
||||
CURRENT_PROJECT_VERSION = "3.7.3";
|
||||
CURRENT_PROJECT_VERSION = 3.7.2;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
DEPLOYMENT_POSTPROCESSING = YES;
|
||||
|
||||
Binary file not shown.
@@ -614,8 +614,6 @@
|
||||
918A074C1804B4A600983AE1 /* libjansson.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 918A07221804AFAA00983AE1 /* libjansson.a */; };
|
||||
918A074D1804B4A600983AE1 /* libmongoose.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 918A07141804AF0F00983AE1 /* libmongoose.a */; };
|
||||
9193B29817EDFEB7003CC0BA /* profiling.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9193B29717EDFEB7003CC0BA /* profiling.cpp */; };
|
||||
91F4EE3A1AB32675006EF158 /* hashtable_seed.c in Sources */ = {isa = PBXBuildFile; fileRef = 91F4EE381AB32675006EF158 /* hashtable_seed.c */; };
|
||||
91F4EE3B1AB32675006EF158 /* lookup3.h in Headers */ = {isa = PBXBuildFile; fileRef = 91F4EE391AB32675006EF158 /* lookup3.h */; };
|
||||
F007DDF612F4F44600D2F6C1 /* jconfig.h in Headers */ = {isa = PBXBuildFile; fileRef = F007DDB512F4F44600D2F6C1 /* jconfig.h */; };
|
||||
F007DDF712F4F44600D2F6C1 /* jdct.h in Headers */ = {isa = PBXBuildFile; fileRef = F007DDB612F4F44600D2F6C1 /* jdct.h */; };
|
||||
F007DDF912F4F44600D2F6C1 /* jerror.h in Headers */ = {isa = PBXBuildFile; fileRef = F007DDB812F4F44600D2F6C1 /* jerror.h */; };
|
||||
@@ -1558,8 +1556,6 @@
|
||||
918A07361804B01800983AE1 /* utf.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = utf.h; sourceTree = "<group>"; };
|
||||
918A07371804B01800983AE1 /* value.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = value.c; sourceTree = "<group>"; };
|
||||
9193B29717EDFEB7003CC0BA /* profiling.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = profiling.cpp; sourceTree = "<group>"; };
|
||||
91F4EE381AB32675006EF158 /* hashtable_seed.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = hashtable_seed.c; sourceTree = "<group>"; };
|
||||
91F4EE391AB32675006EF158 /* lookup3.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = lookup3.h; sourceTree = "<group>"; };
|
||||
B2F67ED704C74A3F00A80002 /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = /System/Library/Frameworks/OpenGL.framework; sourceTree = "<absolute>"; };
|
||||
B2F67F1E04C773E400A80002 /* GLUT.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = GLUT.framework; path = /System/Library/Frameworks/GLUT.framework; sourceTree = "<absolute>"; };
|
||||
F007DDB512F4F44600D2F6C1 /* jconfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jconfig.h; sourceTree = "<group>"; };
|
||||
@@ -3120,8 +3116,6 @@
|
||||
918A07261804B01800983AE1 /* jansson */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
91F4EE381AB32675006EF158 /* hashtable_seed.c */,
|
||||
91F4EE391AB32675006EF158 /* lookup3.h */,
|
||||
918A07271804B01800983AE1 /* dump.c */,
|
||||
918A07281804B01800983AE1 /* error.c */,
|
||||
918A07291804B01800983AE1 /* hashtable.c */,
|
||||
@@ -3550,7 +3544,6 @@
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
918A07461804B01800983AE1 /* utf.h in Headers */,
|
||||
91F4EE3B1AB32675006EF158 /* lookup3.h in Headers */,
|
||||
918A073B1804B01800983AE1 /* hashtable.h in Headers */,
|
||||
918A073E1804B01800983AE1 /* jansson_private.h in Headers */,
|
||||
918A07431804B01800983AE1 /* strbuffer.h in Headers */,
|
||||
@@ -4226,7 +4219,6 @@
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
91F4EE3A1AB32675006EF158 /* hashtable_seed.c in Sources */,
|
||||
918A07451804B01800983AE1 /* utf.c in Sources */,
|
||||
918A07391804B01800983AE1 /* error.c in Sources */,
|
||||
918A07441804B01800983AE1 /* strconv.c in Sources */,
|
||||
@@ -4436,7 +4428,7 @@
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
COMBINE_HIDPI_IMAGES = YES;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
CURRENT_PROJECT_VERSION = "3.7.3";
|
||||
CURRENT_PROJECT_VERSION = "3.7.2";
|
||||
DEAD_CODE_STRIPPING = NO;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
DEPLOYMENT_POSTPROCESSING = YES;
|
||||
@@ -4482,7 +4474,7 @@
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
COMBINE_HIDPI_IMAGES = YES;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
CURRENT_PROJECT_VERSION = "3.7.3";
|
||||
CURRENT_PROJECT_VERSION = "3.7.2";
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
DEPLOYMENT_POSTPROCESSING = YES;
|
||||
@@ -4595,13 +4587,6 @@
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
EXECUTABLE_PREFIX = lib;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
_DEBUG,
|
||||
SCP_UNIX,
|
||||
USE_OPENAL,
|
||||
APPLE_APP,
|
||||
HAVE_STDINT_H,
|
||||
);
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
};
|
||||
@@ -4614,13 +4599,6 @@
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
EXECUTABLE_PREFIX = lib;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
NDEBUG,
|
||||
SCP_UNIX,
|
||||
USE_OPENAL,
|
||||
APPLE_APP,
|
||||
HAVE_STDINT_H,
|
||||
);
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
};
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
<Option virtualFolders="Freespace2/;" />
|
||||
<Build>
|
||||
<Target title="Debug">
|
||||
<Option output="../Debug/Freespace2/lib/fs2_open_3_7_3_debug" prefix_auto="1" extension_auto="1" />
|
||||
<Option output="../Debug/Freespace2/lib/fs2_open_3_7_2_debug" prefix_auto="1" extension_auto="1" />
|
||||
<Option working_dir="../freespaceDirectoryLink" />
|
||||
<Option object_output="../Debug/Freespace2/obj/" />
|
||||
<Option type="1" />
|
||||
@@ -24,7 +24,7 @@
|
||||
</Linker>
|
||||
</Target>
|
||||
<Target title="Release">
|
||||
<Option output="../Release/Freespace2/lib/fs2_open_3_7_3" prefix_auto="1" extension_auto="1" />
|
||||
<Option output="../Release/Freespace2/lib/fs2_open_3_7_2" prefix_auto="1" extension_auto="1" />
|
||||
<Option object_output="../Release/Freespace2/obj/" />
|
||||
<Option type="0" />
|
||||
<Option compiler="gcc" />
|
||||
|
||||
Reference in new issue
Block a user