summaryrefslogtreecommitdiff
path: root/fluid
diff options
context:
space:
mode:
authorMatthias Melcher <fltk@matthiasm.com>2010-02-20 21:14:47 +0000
committerMatthias Melcher <fltk@matthiasm.com>2010-02-20 21:14:47 +0000
commit2f82fd066321cde3e225fc87a9469849215413eb (patch)
tree0fb84acd8268a37ab45c2f2b3c358f6c962e75ea /fluid
parent7ae0c170ad2f63ac7e27d0496cd9c167e2bd0cbd (diff)
Mixed bag. Please see CHANGES.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7117 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'fluid')
-rw-r--r--fluid/Fl_Function_Type.cxx3
-rw-r--r--fluid/Fl_Type.h4
-rw-r--r--fluid/fluid.cxx28
-rw-r--r--fluid/ide_support.cxx454
-rw-r--r--fluid/ide_support.h6
-rw-r--r--fluid/ide_xcode.cxx174
6 files changed, 425 insertions, 244 deletions
diff --git a/fluid/Fl_Function_Type.cxx b/fluid/Fl_Function_Type.cxx
index 6cde5e680..bcaaf875b 100644
--- a/fluid/Fl_Function_Type.cxx
+++ b/fluid/Fl_Function_Type.cxx
@@ -739,8 +739,7 @@ Fl_Type *Fl_Data_Type::make() {
o->public_ = 1;
o->static_ = 1;
o->filename_ = 0;
- //char buf[32]; sprintf(buf, "data_%08x", (unsigned int)o);
- char buf[32]; sprintf(buf, "data_%p", o);
+ char buf[32]; sprintf(buf, "data_%016x", (unsigned long int)o);
o->name(buf);
o->add(p);
o->factory = this;
diff --git a/fluid/Fl_Type.h b/fluid/Fl_Type.h
index b8d860373..9390a23e7 100644
--- a/fluid/Fl_Type.h
+++ b/fluid/Fl_Type.h
@@ -821,6 +821,10 @@ public:
virtual const char *help() = 0;
// handle a command and return the number of args used, or 0
virtual int arg(int argc, char **argv, int &i) = 0;
+ // optional test the plugin
+ virtual int test(const char *a1=0L, const char *a2=0L, const char *a3=0L) {
+ return 0;
+ }
};
diff --git a/fluid/fluid.cxx b/fluid/fluid.cxx
index 774bad231..92786fe10 100644
--- a/fluid/fluid.cxx
+++ b/fluid/fluid.cxx
@@ -1572,6 +1572,32 @@ void print_cb(Fl_Return_Button *, void *) {
}
#endif // WIN32 && !__CYGWIN__
+void fltkdb_cb(Fl_Widget*, void*)
+{
+ int i;
+ Fl_Plugin_Manager pm("commandline");
+ for (i=0; i<pm.plugins(); i++) {
+ Fl_Commandline_Plugin *pi = (Fl_Commandline_Plugin*)pm.plugin(i);
+ if (strcmp(pi->name(), "FltkDB.fluid.fltk.org")==0) {
+ pi->test("/Users/matt/dev/fltk-1.3.0/fltk.db");
+ break;
+ }
+ }
+}
+
+void dbxcode_cb(Fl_Widget*, void*)
+{
+ int i;
+ Fl_Plugin_Manager pm("commandline");
+ for (i=0; i<pm.plugins(); i++) {
+ Fl_Commandline_Plugin *pi = (Fl_Commandline_Plugin*)pm.plugin(i);
+ if (strcmp(pi->name(), "ideXcode.fluid.fltk.org")==0) {
+ pi->test("/Users/matt/dev/fltk-1.3.0/fltk.db", "/Users/matt/dev/fltk-test");
+ break;
+ }
+ }
+}
+
////////////////////////////////////////////////////////////////
extern Fl_Menu_Item New_Menu[];
@@ -1666,6 +1692,8 @@ Fl_Menu_Item Main_Menu[] = {
{"&Shell",0,0,0,FL_SUBMENU},
{"Execute &Command...",FL_ALT+'x',(Fl_Callback *)show_shell_window},
{"Execute &Again...",FL_ALT+'g',(Fl_Callback *)do_shell_command},
+ {"--fltkdb",0,(Fl_Callback *)fltkdb_cb,0,FL_MENU_INVISIBLE},
+ {"--dbxcode",0,(Fl_Callback *)dbxcode_cb,0,FL_MENU_INVISIBLE},
{0},
{"&Help",0,0,0,FL_SUBMENU},
{"&About FLUID...",0,about_cb},
diff --git a/fluid/ide_support.cxx b/fluid/ide_support.cxx
index d8a528efd..b2daa8f74 100644
--- a/fluid/ide_support.cxx
+++ b/fluid/ide_support.cxx
@@ -202,7 +202,7 @@ Fl_Preferences::ID Fl_Target_Prefs::add_fl(Fl_IDE_Prefs &fdb, const char *pathAn
Fl_Preferences::ID Fl_Target_Prefs::depends_on(Fl_IDE_Prefs &dep) {
Fl_IDE_Prefs p(*this, "deps");
- Fl_Preferences d(p.add_with_key("refUUID", dep.name()));
+ return p.add_with_key("refUUID", dep.name());
}
Fl_Preferences::ID Fl_Target_Prefs::add_lib(Fl_IDE_Prefs &lib) {
@@ -211,9 +211,8 @@ Fl_Preferences::ID Fl_Target_Prefs::add_lib(Fl_IDE_Prefs &lib) {
return p.add_with_key("refUUID", lib.name());
}
-Fl_Preferences::ID Fl_Target_Prefs::add_external_lib(Fl_IDE_Prefs &fdb, const char *name) {
- char buf[1024]; sprintf(buf, "%s.lib", name);
- Fl_IDE_Prefs file(fdb.add_with_key("pathAndName", buf));
+Fl_Preferences::ID Fl_Target_Prefs::add_external_lib(Fl_IDE_Prefs &fdb, const char *pathAndName) {
+ Fl_IDE_Prefs file(fdb.add_with_key("pathAndName", pathAndName));
Fl_IDE_Prefs p(*this, "externals");
return p.add_with_key("refUUID", file.name());
}
@@ -271,6 +270,11 @@ const char *Fl_File_Prefs::fileExt() {
return pExt;
}
+void osx_only(Fl_Preferences::ID id) {
+ Fl_Preferences p(id);
+ p.set("only", "OS:OSX*"); // type:name#ver # is >, >=, <, <=, ==, !=, *
+}
+
//==============================================================================
// TODO: Find a good standard position for the database
@@ -291,163 +295,171 @@ int create_new_database(const char *filename)
Fl_Target_Prefs fltk_lib(libs_db.add_with_key("name", "fltk")); {
fltk_lib.add_source(files_db, "src/Fl.cxx");
- fltk_lib.add_source(files_db, "src/Fl_get_system_colors.cxx");
- fltk_lib.add_source(files_db, "src/Fl_get_key.cxx");
- fltk_lib.add_source(files_db, "src/fl_font.cxx");
- fltk_lib.add_source(files_db, "src/Fl_File_Input.cxx");
- fltk_lib.add_source(files_db, "src/Fl_File_Icon.cxx");
- fltk_lib.add_source(files_db, "src/fl_file_dir.cxx");
- fltk_lib.add_source(files_db, "src/Fl_File_Chooser2.cxx");
- fltk_lib.add_source(files_db, "src/Fl_File_Chooser.cxx");
- fltk_lib.add_source(files_db, "src/Fl_File_Browser.cxx");
- fltk_lib.add_source(files_db, "src/fl_engraved_label.cxx");
- fltk_lib.add_source(files_db, "src/fl_encoding_mac_roman.cxx");
- fltk_lib.add_source(files_db, "src/fl_draw_pixmap.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Adjuster.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Bitmap.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Box.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Browser.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Browser_.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Browser_load.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Button.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Chart.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Check_Browser.cxx");
fltk_lib.add_source(files_db, "src/Fl_Check_Button.cxx");
- fltk_lib.add_source(files_db, "src/fl_dnd.cxx");
- fltk_lib.add_source(files_db, "src/Fl_display.cxx");
- fltk_lib.add_source(files_db, "src/fl_diamond_box.cxx");
- fltk_lib.add_source(files_db, "src/fl_set_fonts.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Window_fullscreen.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Window.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Widget.cxx");
- fltk_lib.add_source(files_db, "src/Fl_visual.cxx");
- fltk_lib.add_source(files_db, "src/fl_vertex.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Round_Button.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Tooltip.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Window_iconize.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Window_hotspot.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Text_Display.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Scroll.cxx");
fltk_lib.add_source(files_db, "src/Fl_Choice.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Clock.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Color_Chooser.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Counter.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Dial.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Double_Window.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_File_Browser.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_File_Chooser.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_File_Chooser2.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_File_Icon.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_File_Input.cxx");
fltk_lib.add_source(files_db, "src/Fl_Group.cxx");
- fltk_lib.add_source(files_db, "src/fl_rounded_box.cxx");
- fltk_lib.add_source(files_db, "src/fl_overlay_visual.cxx");
- fltk_lib.add_source(files_db, "src/fl_shortcut.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Shared_Image.cxx");
- fltk_lib.add_source(files_db, "src/flstring.c");
- fltk_lib.add_source(files_db, "src/Fl_grab.cxx");
- fltk_lib.add_source(files_db, "src/Fl_arg.cxx");
- fltk_lib.add_source(files_db, "src/cmap.cxx");
- fltk_lib.add_source(files_db, "src/Fl_XPM_Image.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Help_View.cxx");
fltk_lib.add_source(files_db, "src/Fl_Image.cxx");
fltk_lib.add_source(files_db, "src/Fl_Input.cxx");
- fltk_lib.add_source(files_db, "src/fl_scroll_area.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Tiled_Image.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Tile.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Text_Editor.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Overlay_Window.cxx");
- fltk_lib.add_source(files_db, "src/Fl_own_colormap.cxx");
- fltk_lib.add_source(files_db, "src/filename_expand.cxx");
- fltk_lib.add_source(files_db, "src/filename_absolute.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Menu_.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Input_.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Light_Button.cxx");
fltk_lib.add_source(files_db, "src/Fl_Menu.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Multi_Label.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Menu_Window.cxx");
- fltk_lib.add_source(files_db, "src/Fl.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Dial.cxx");
- fltk_lib.add_source(files_db, "src/fl_curve.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Menu_global.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Menu_Button.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Menu_.cxx");
fltk_lib.add_source(files_db, "src/Fl_Menu_Bar.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Menu_Button.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Menu_Window.cxx");
fltk_lib.add_source(files_db, "src/Fl_Menu_add.cxx");
- fltk_lib.add_source(files_db, "src/filename_list.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Browser.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Value_Input.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Valuator.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Button.cxx");
- fltk_lib.add_source(files_db, "src/fl_read_image.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Progress.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Preferences.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Menu_global.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Multi_Label.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Native_File_Chooser.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Native_File_Chooser_common.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Overlay_Window.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Pack.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Pixmap.cxx");
fltk_lib.add_source(files_db, "src/Fl_Positioner.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Preferences.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Progress.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Repeat_Button.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Return_Button.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Roller.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Round_Button.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Scroll.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Scrollbar.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Shared_Image.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Single_Window.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Slider.cxx");
fltk_lib.add_source(files_db, "src/Fl_Sys_Menu_Bar.cxx");
- fltk_lib.add_source(files_db, "src/fl_symbols.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Light_Button.cxx");
- fltk_lib.add_source(files_db, "src/fl_labeltype.cxx");
- fltk_lib.add_source(files_db, "src/fl_draw.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Double_Window.cxx");
- fltk_lib.add_source(files_db, "src/Fl_XBM_Image.cxx");
- fltk_lib.add_source(files_db, "src/Fl_x.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Table.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Table_Row.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Tabs.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Text_Buffer.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Text_Display.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Text_Editor.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Tile.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Tiled_Image.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Tooltip.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Tree.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Tree_Item.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Tree_Item_Array.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Tree_Prefs.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Valuator.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Value_Input.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Value_Output.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Value_Slider.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Widget.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Window.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Window_fullscreen.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Window_hotspot.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_Window_iconize.cxx");
fltk_lib.add_source(files_db, "src/Fl_Wizard.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Help_View.cxx");
- fltk_lib.add_source(files_db, "src/fl_open_uri.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Input_.cxx");
- fltk_lib.add_source(files_db, "src/fl_line_style.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Adjuster.cxx");
- fltk_lib.add_source(files_db, "src/fl_rect.cxx");
- fltk_lib.add_source(files_db, "src/fl_arc.cxx");
- fltk_lib.add_source(files_db, "src/filename_ext.cxx");
- fltk_lib.add_source(files_db, "src/fl_set_font.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Scrollbar.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_XBM_Image.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_XPM_Image.cxx");
fltk_lib.add_source(files_db, "src/Fl_abort.cxx");
- fltk_lib.add_source(files_db, "src/fl_overlay.cxx");
- fltk_lib.add_source(files_db, "src/fl_oval_box.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Text_Buffer.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Tabs.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_add_idle.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_arg.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_compose.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_display.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_get_key.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_get_system_colors.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_grab.cxx");
fltk_lib.add_source(files_db, "src/Fl_lock.cxx");
- fltk_lib.add_source(files_db, "src/fl_cursor.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Counter.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Check_Browser.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Bitmap.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_own_colormap.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_visual.cxx");
+ fltk_lib.add_source(files_db, "src/Fl_x.cxx");
+ fltk_lib.add_source(files_db, "src/cmap.cxx");
+ fltk_lib.add_source(files_db, "src/filename_absolute.cxx");
+ fltk_lib.add_source(files_db, "src/filename_expand.cxx");
+ fltk_lib.add_source(files_db, "src/filename_ext.cxx");
fltk_lib.add_source(files_db, "src/filename_isdir.cxx");
+ fltk_lib.add_source(files_db, "src/filename_list.cxx");
fltk_lib.add_source(files_db, "src/filename_match.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Slider.cxx");
- fltk_lib.add_source(files_db, "src/fl_draw_image.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Browser_load.cxx");
- fltk_lib.add_source(files_db, "src/fl_round_box.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Roller.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Return_Button.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Repeat_Button.cxx");
- fltk_lib.add_source(files_db, "src/Fl_add_idle.cxx");
- fltk_lib.add_source(files_db, "src/fl_plastic.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Pixmap.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Pack.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Browser_.cxx");
- fltk_lib.add_source(files_db, "src/scandir.c");
- fltk_lib.add_source(files_db, "src/numericsort.c");
- fltk_lib.add_source(files_db, "src/Fl_Box.cxx");
- fltk_lib.add_source(files_db, "src/fl_call_main.c");
- fltk_lib.add_source(files_db, "src/vsnprintf.c");
- fltk_lib.add_source(files_db, "src/screen_xywh.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Single_Window.cxx");
- fltk_lib.add_source(files_db, "src/fl_show_colormap.cxx");
- fltk_lib.add_source(files_db, "src/fl_encoding_latin1.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Chart.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Value_Slider.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Value_Output.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Color_Chooser.cxx");
- fltk_lib.add_source(files_db, "src/fl_color.cxx");
- fltk_lib.add_source(files_db, "src/fl_arci.cxx");
fltk_lib.add_source(files_db, "src/filename_setext.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Clock.cxx");
+ fltk_lib.add_source(files_db, "src/fl_arc.cxx");
+ fltk_lib.add_source(files_db, "src/fl_arci.cxx");
fltk_lib.add_source(files_db, "src/fl_ask.cxx");
fltk_lib.add_source(files_db, "src/fl_boxtype.cxx");
+ fltk_lib.add_source(files_db, "src/fl_call_main.c");
+ fltk_lib.add_source(files_db, "src/fl_color.cxx");
+ fltk_lib.add_source(files_db, "src/fl_cursor.cxx");
+ fltk_lib.add_source(files_db, "src/fl_curve.cxx");
+ fltk_lib.add_source(files_db, "src/fl_diamond_box.cxx");
+ fltk_lib.add_source(files_db, "src/fl_dnd.cxx");
+ fltk_lib.add_source(files_db, "src/fl_draw.cxx");
+ fltk_lib.add_source(files_db, "src/fl_draw_image.cxx");
+ fltk_lib.add_source(files_db, "src/fl_draw_pixmap.cxx");
+ fltk_lib.add_source(files_db, "src/fl_encoding_latin1.cxx");
+ fltk_lib.add_source(files_db, "src/fl_encoding_mac_roman.cxx");
+ fltk_lib.add_source(files_db, "src/fl_engraved_label.cxx");
+ fltk_lib.add_source(files_db, "src/fl_file_dir.cxx");
+ fltk_lib.add_source(files_db, "src/fl_font.cxx");
fltk_lib.add_source(files_db, "src/fl_gtk.cxx");
- fltk_lib.add_source(files_db, "src/Fl_compose.cxx");
+ fltk_lib.add_source(files_db, "src/fl_labeltype.cxx");
+ fltk_lib.add_source(files_db, "src/fl_line_style.cxx");
+ fltk_lib.add_source(files_db, "src/fl_open_uri.cxx");
+ fltk_lib.add_source(files_db, "src/fl_oval_box.cxx");
+ fltk_lib.add_source(files_db, "src/fl_overlay.cxx");
+ fltk_lib.add_source(files_db, "src/fl_overlay_visual.cxx");
+ fltk_lib.add_source(files_db, "src/fl_plastic.cxx");
+ fltk_lib.add_source(files_db, "src/fl_read_image.cxx");
+ fltk_lib.add_source(files_db, "src/fl_rect.cxx");
+ fltk_lib.add_source(files_db, "src/fl_round_box.cxx");
+ fltk_lib.add_source(files_db, "src/fl_rounded_box.cxx");
+ fltk_lib.add_source(files_db, "src/fl_scroll_area.cxx");
+ fltk_lib.add_source(files_db, "src/fl_set_font.cxx");
+ fltk_lib.add_source(files_db, "src/fl_set_fonts.cxx");
fltk_lib.add_source(files_db, "src/fl_shadow_box.cxx");
+ fltk_lib.add_source(files_db, "src/fl_shortcut.cxx");
+ fltk_lib.add_source(files_db, "src/fl_show_colormap.cxx");
+ fltk_lib.add_source(files_db, "src/fl_symbols.cxx");
fltk_lib.add_source(files_db, "src/fl_utf.c");
fltk_lib.add_source(files_db, "src/fl_utf8.cxx");
+ fltk_lib.add_source(files_db, "src/fl_vertex.cxx");
+ fltk_lib.add_source(files_db, "src/flstring.c");
+ fltk_lib.add_source(files_db, "src/numericsort.c");
+ fltk_lib.add_source(files_db, "src/scandir.c");
+ fltk_lib.add_source(files_db, "src/screen_xywh.cxx");
+ fltk_lib.add_source(files_db, "src/vsnprintf.c");
fltk_lib.add_source(files_db, "src/xutf8/case.c");
fltk_lib.add_source(files_db, "src/xutf8/is_right2left.c");
fltk_lib.add_source(files_db, "src/xutf8/is_spacing.c");
- fltk_lib.add_source(files_db, "src/Fl_Table_Row.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Table.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Tree_Item_Array.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Tree_Item.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Tree_Prefs.cxx");
- fltk_lib.add_source(files_db, "src/Fl_Tree.cxx");
}
- Fl_Target_Prefs fltk_forms_lib(libs_db.add_with_key("name", "fltk_forms")); {
- fltk_forms_lib.add_source(files_db, "src/forms_bitmap.cxx");
- fltk_forms_lib.add_source(files_db, "src/forms_compatability.cxx");
- fltk_forms_lib.add_source(files_db, "src/forms_free.cxx");
- fltk_forms_lib.add_source(files_db, "src/forms_fselect.cxx");
- fltk_forms_lib.add_source(files_db, "src/forms_pixmap.cxx");
- fltk_forms_lib.add_source(files_db, "src/forms_timer.cxx");
- fltk_forms_lib.add_lib(fltk_lib);
+
+ Fl_Target_Prefs fltk_gl_lib(libs_db.add_with_key("name", "fltk_gl")); {
+ fltk_gl_lib.add_source(files_db, "src/Fl_Gl_Choice.cxx");
+ fltk_gl_lib.add_source(files_db, "src/Fl_Gl_Overlay.cxx");
+ fltk_gl_lib.add_source(files_db, "src/Fl_Gl_Window.cxx");
+ fltk_gl_lib.add_source(files_db, "src/freeglut_geometry.cxx");
+ fltk_gl_lib.add_source(files_db, "src/freeglut_stroke_mono_roman.cxx");
+ fltk_gl_lib.add_source(files_db, "src/freeglut_stroke_roman.cxx");
+ fltk_gl_lib.add_source(files_db, "src/freeglut_teapot.cxx");
+ fltk_gl_lib.add_source(files_db, "src/gl_draw.cxx");
+ fltk_gl_lib.add_source(files_db, "src/glut_compatability.cxx");
+ fltk_gl_lib.add_source(files_db, "src/glut_font.cxx");
+ osx_only(fltk_gl_lib.add_external_lib(files_db, "/System/Library/Frameworks/OpenGL.framework"));
+ osx_only(fltk_gl_lib.add_external_lib(files_db, "/System/Library/Frameworks/AGL.framework"));
+ fltk_gl_lib.add_lib(fltk_lib);
}
+
Fl_Target_Prefs fltk_images_lib(libs_db.add_with_key("name", "fltk_images")); {
- fltk_images_lib.add_source(files_db, "src/fl_images_core.cxx");
fltk_images_lib.add_source(files_db, "src/Fl_BMP_Image.cxx");
fltk_images_lib.add_source(files_db, "src/Fl_File_Icon2.cxx");
fltk_images_lib.add_source(files_db, "src/Fl_GIF_Image.cxx");
@@ -455,111 +467,114 @@ int create_new_database(const char *filename)
fltk_images_lib.add_source(files_db, "src/Fl_JPEG_Image.cxx");
fltk_images_lib.add_source(files_db, "src/Fl_PNG_Image.cxx");
fltk_images_lib.add_source(files_db, "src/Fl_PNM_Image.cxx");
+ fltk_images_lib.add_source(files_db, "src/fl_images_core.cxx");
fltk_images_lib.add_lib(fltk_lib);
+ fltk_gl_lib.depends_on(fltk_lib);
}
- Fl_Target_Prefs fltk_gl_lib(libs_db.add_with_key("name", "fltk_gl")); {
- fltk_gl_lib.add_source(files_db, "src/Fl_Gl_Choice.cxx");
- fltk_gl_lib.add_source(files_db, "src/Fl_Gl_Overlay.cxx");
- fltk_gl_lib.add_source(files_db, "src/Fl_Gl_Window.cxx");
- fltk_gl_lib.add_source(files_db, "src/gl_draw.cxx");
- fltk_gl_lib.add_source(files_db, "src/freeglut_stroke_roman.cxx");
- fltk_gl_lib.add_source(files_db, "src/freeglut_teapot.cxx");
- fltk_gl_lib.add_source(files_db, "src/freeglut_geometry.cxx");
- fltk_gl_lib.add_source(files_db, "src/glut_font.cxx");
- fltk_gl_lib.add_source(files_db, "src/freeglut_stroke_mono_roman.cxx");
- fltk_gl_lib.add_source(files_db, "src/glut_compatability.cxx");
- fltk_gl_lib.add_lib(fltk_lib);
- }
+
Fl_Target_Prefs fltk_png_lib(libs_db.add_with_key("name", "fltk_png")); {
- fltk_png_lib.add_source(files_db, "png/pngmem.c");
fltk_png_lib.add_source(files_db, "png/png.c");
- fltk_png_lib.add_source(files_db, "png/pngwio.c");
- fltk_png_lib.add_source(files_db, "png/pngwtran.c");
- fltk_png_lib.add_source(files_db, "png/pngset.c");
- fltk_png_lib.add_source(files_db, "png/pngwutil.c");
- fltk_png_lib.add_source(files_db, "png/pngwrite.c");
- fltk_png_lib.add_source(files_db, "png/pngrio.c");
- fltk_png_lib.add_source(files_db, "png/pngget.c");
fltk_png_lib.add_source(files_db, "png/pngerror.c");
- fltk_png_lib.add_source(files_db, "png/pngtrans.c");
- fltk_png_lib.add_source(files_db, "png/pngread.c");
- fltk_png_lib.add_source(files_db, "png/pngrutil.c");
+ fltk_png_lib.add_source(files_db, "png/pngget.c");
+ fltk_png_lib.add_source(files_db, "png/pngmem.c");
fltk_png_lib.add_source(files_db, "png/pngpread.c");
+ fltk_png_lib.add_source(files_db, "png/pngread.c");
+ fltk_png_lib.add_source(files_db, "png/pngrio.c");
fltk_png_lib.add_source(files_db, "png/pngrtran.c");
- fltk_png_lib.add_external_lib(files_db, "z");
+ fltk_png_lib.add_source(files_db, "png/pngrutil.c");
+ fltk_png_lib.add_source(files_db, "png/pngset.c");
+ fltk_png_lib.add_source(files_db, "png/pngtrans.c");
+ fltk_png_lib.add_source(files_db, "png/pngwio.c");
+ fltk_png_lib.add_source(files_db, "png/pngwrite.c");
+ fltk_png_lib.add_source(files_db, "png/pngwtran.c");
+ fltk_png_lib.add_source(files_db, "png/pngwutil.c");
+ osx_only(fltk_png_lib.add_external_lib(files_db, "/usr/lib/libz.dylib"));
fltk_images_lib.add_lib(fltk_png_lib);
}
+
Fl_Target_Prefs fltk_jpeg_lib(libs_db.add_with_key("name", "fltk_jpeg")); {
- fltk_jpeg_lib.add_source(files_db, "jpeg/jidctflt.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jfdctint.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jcapimin.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jcapistd.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jccoefct.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jccolor.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jcdctmgr.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jchuff.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jcinit.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jcmainct.c");
fltk_jpeg_lib.add_source(files_db, "jpeg/jcmarker.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jdhuff.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jdatasrc.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jerror.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jidctred.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jcmaster.c");
fltk_jpeg_lib.add_source(files_db, "jpeg/jcomapi.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jfdctfst.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jfdctflt.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jutils.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jquant2.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jquant1.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jcparam.c");
fltk_jpeg_lib.add_source(files_db, "jpeg/jcphuff.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jdpostct.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jdphuff.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jdmarker.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jdmaster.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jdatadst.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jidctint.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jidctfst.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jcprepct.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jcsample.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jctrans.c");
fltk_jpeg_lib.add_source(files_db, "jpeg/jdapimin.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jccolor.c");
fltk_jpeg_lib.add_source(files_db, "jpeg/jdapistd.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jcmainct.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jdmerge.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jdatadst.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jdatasrc.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jdcoefct.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jdcolor.c");
fltk_jpeg_lib.add_source(files_db, "jpeg/jddctmgr.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jdtrans.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jdsample.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jmemnobs.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jmemmgr.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jdhuff.c");
fltk_jpeg_lib.add_source(files_db, "jpeg/jdinput.c");
fltk_jpeg_lib.add_source(files_db, "jpeg/jdmainct.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jcinit.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jccoefct.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jcapistd.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jdcolor.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jcsample.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jcdctmgr.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jcmaster.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jcapimin.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jdcoefct.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jcparam.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jchuff.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jcprepct.c");
- fltk_jpeg_lib.add_source(files_db, "jpeg/jctrans.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jdmarker.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jdmaster.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jdmerge.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jdphuff.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jdpostct.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jdsample.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jdtrans.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jerror.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jfdctflt.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jfdctfst.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jfdctint.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jidctflt.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jidctfst.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jidctint.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jidctred.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jmemmgr.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jmemnobs.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jquant1.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jquant2.c");
+ fltk_jpeg_lib.add_source(files_db, "jpeg/jutils.c");
fltk_images_lib.add_lib(fltk_jpeg_lib);
}
+ Fl_Target_Prefs fltk_forms_lib(libs_db.add_with_key("name", "fltk_forms")); {
+ fltk_forms_lib.add_source(files_db, "src/forms_bitmap.cxx");
+ fltk_forms_lib.add_source(files_db, "src/forms_compatability.cxx");
+ fltk_forms_lib.add_source(files_db, "src/forms_free.cxx");
+ fltk_forms_lib.add_source(files_db, "src/forms_fselect.cxx");
+ fltk_forms_lib.add_source(files_db, "src/forms_pixmap.cxx");
+ fltk_forms_lib.add_source(files_db, "src/forms_timer.cxx");
+ fltk_forms_lib.add_lib(fltk_lib);
+ }
+
// --- create applications
Fl_IDE_Prefs apps_db(targets_db, "apps");
Fl_Target_Prefs fluid_app(apps_db.add_with_key("name", "Fluid")); {
- fluid_app.add_source(files_db, "fluid/about_panel.cxx");
- fluid_app.add_source(files_db, "fluid/align_widget.cxx");
- fluid_app.add_source(files_db, "fluid/alignment_panel.cxx");
- fluid_app.add_source(files_db, "fluid/code.cxx");
fluid_app.add_source(files_db, "fluid/CodeEditor.cxx");
- fluid_app.add_source(files_db, "fluid/factory.cxx");
- fluid_app.add_source(files_db, "fluid/file.cxx");
fluid_app.add_source(files_db, "fluid/Fl_Function_Type.cxx");
fluid_app.add_source(files_db, "fluid/Fl_Group_Type.cxx");
fluid_app.add_source(files_db, "fluid/Fl_Menu_Type.cxx");
fluid_app.add_source(files_db, "fluid/Fl_Type.cxx");
fluid_app.add_source(files_db, "fluid/Fl_Widget_Type.cxx");
fluid_app.add_source(files_db, "fluid/Fl_Window_Type.cxx");
- fluid_app.add_source(files_db, "fluid/fluid.cxx");
fluid_app.add_source(files_db, "fluid/Fluid_Image.cxx");
+ fluid_app.add_source(files_db, "fluid/about_panel.cxx");
+ fluid_app.add_source(files_db, "fluid/align_widget.cxx");
+ fluid_app.add_source(files_db, "fluid/alignment_panel.cxx");
+ fluid_app.add_source(files_db, "fluid/code.cxx");
+ fluid_app.add_source(files_db, "fluid/factory.cxx");
+ fluid_app.add_source(files_db, "fluid/file.cxx");
+ fluid_app.add_source(files_db, "fluid/fluid.cxx");
fluid_app.add_source(files_db, "fluid/function_panel.cxx");
fluid_app.add_source(files_db, "fluid/ide_support.cxx");
+ fluid_app.add_source(files_db, "fluid/ide_support.cxx");
+ fluid_app.add_source(files_db, "fluid/ide_xcode.cxx");
fluid_app.add_source(files_db, "fluid/ide_xcode.cxx");
fluid_app.add_source(files_db, "fluid/template_panel.cxx");
fluid_app.add_source(files_db, "fluid/undo.cxx");
@@ -606,7 +621,7 @@ int create_new_database(const char *filename)
{ Fl_Target_Prefs db(tests_db.add_with_key("name", "blocks"));
db.add_source(files_db, "test/blocks.cxx");
db.add_lib(fltk_lib);
- //db.add_lib(fltk_audio_lib);
+ osx_only(db.add_external_lib(files_db, "/System/Library/Frameworks/CoreAudio.framework"));
demo_db.depends_on(db);
}
@@ -663,6 +678,8 @@ int create_new_database(const char *filename)
db.add_source(files_db, "test/cube.cxx");
db.add_lib(fltk_lib);
db.add_lib(fltk_gl_lib);
+ osx_only(db.add_external_lib(files_db, "/System/Library/Frameworks/OpenGL.framework"));
+ osx_only(db.add_external_lib(files_db, "/System/Library/Frameworks/AGL.framework"));
demo_db.depends_on(db);
}
@@ -672,6 +689,9 @@ int create_new_database(const char *filename)
db.add_fl(files_db, "test/CubeViewUI.fl");
db.add_lib(fltk_lib);
db.add_lib(fltk_gl_lib);
+ osx_only(db.add_external_lib(files_db, "/System/Library/Frameworks/OpenGL.framework"));
+ osx_only(db.add_external_lib(files_db, "/System/Library/Frameworks/AGL.framework"));
+ db.depends_on(fluid_app);
demo_db.depends_on(db);
}
@@ -702,6 +722,7 @@ int create_new_database(const char *filename)
{ Fl_Target_Prefs db(tests_db.add_with_key("name", "fast_slow"));
db.add_fl(files_db, "test/fast_slow.fl");
db.add_lib(fltk_lib);
+ db.depends_on(fluid_app);
demo_db.depends_on(db);
}
@@ -732,6 +753,8 @@ int create_new_database(const char *filename)
db.add_source(files_db, "test/fracviewer.cxx");
db.add_lib(fltk_lib);
db.add_lib(fltk_gl_lib);
+ osx_only(db.add_external_lib(files_db, "/System/Library/Frameworks/OpenGL.framework"));
+ osx_only(db.add_external_lib(files_db, "/System/Library/Frameworks/AGL.framework"));
db.add_lib(fltk_forms_lib);
demo_db.depends_on(db);
}
@@ -740,6 +763,8 @@ int create_new_database(const char *filename)
db.add_source(files_db, "test/fullscreen.cxx");
db.add_lib(fltk_lib);
db.add_lib(fltk_gl_lib);
+ osx_only(db.add_external_lib(files_db, "/System/Library/Frameworks/OpenGL.framework"));
+ osx_only(db.add_external_lib(files_db, "/System/Library/Frameworks/AGL.framework"));
demo_db.depends_on(db);
}
@@ -747,6 +772,8 @@ int create_new_database(const char *filename)
db.add_source(files_db, "test/gl_overlay.cxx");
db.add_lib(fltk_lib);
db.add_lib(fltk_gl_lib);
+ osx_only(db.add_external_lib(files_db, "/System/Library/Frameworks/OpenGL.framework"));
+ osx_only(db.add_external_lib(files_db, "/System/Library/Frameworks/AGL.framework"));
demo_db.depends_on(db);
}
@@ -754,6 +781,8 @@ int create_new_database(const char *filename)
db.add_source(files_db, "test/glpuzzle.cxx");
db.add_lib(fltk_lib);
db.add_lib(fltk_gl_lib);
+ osx_only(db.add_external_lib(files_db, "/System/Library/Frameworks/OpenGL.framework"));
+ osx_only(db.add_external_lib(files_db, "/System/Library/Frameworks/AGL.framework"));
demo_db.depends_on(db);
}
@@ -787,6 +816,7 @@ int create_new_database(const char *filename)
{ Fl_Target_Prefs db(tests_db.add_with_key("name", "inactive"));
db.add_fl(files_db, "test/inactive.fl");
db.add_lib(fltk_lib);
+ db.depends_on(fluid_app);
demo_db.depends_on(db);
}
@@ -806,6 +836,7 @@ int create_new_database(const char *filename)
db.add_source(files_db, "test/keyboard.cxx");
db.add_fl(files_db, "test/keyboard_ui.fl");
db.add_lib(fltk_lib);
+ db.depends_on(fluid_app);
demo_db.depends_on(db);
}
@@ -832,6 +863,7 @@ int create_new_database(const char *filename)
db.add_source(files_db, "test/mandelbrot.cxx");
db.add_fl(files_db, "test/mandelbrot_ui.fl");
db.add_lib(fltk_lib);
+ db.depends_on(fluid_app);
demo_db.depends_on(db);
}
@@ -902,12 +934,14 @@ int create_new_database(const char *filename)
{ Fl_Target_Prefs db(tests_db.add_with_key("name", "preferences"));
db.add_fl(files_db, "test/preferences.fl");
db.add_lib(fltk_lib);
+ db.depends_on(fluid_app);
demo_db.depends_on(db);
}
{ Fl_Target_Prefs db(tests_db.add_with_key("name", "radio"));
db.add_fl(files_db, "test/radio.fl");
db.add_lib(fltk_lib);
+ db.depends_on(fluid_app);
demo_db.depends_on(db);
}
@@ -920,6 +954,7 @@ int create_new_database(const char *filename)
{ Fl_Target_Prefs db(tests_db.add_with_key("name", "resize"));
db.add_fl(files_db, "test/resize.fl");
db.add_lib(fltk_lib);
+ db.depends_on(fluid_app);
demo_db.depends_on(db);
}
@@ -933,6 +968,8 @@ int create_new_database(const char *filename)
db.add_source(files_db, "test/shape.cxx");
db.add_lib(fltk_lib);
db.add_lib(fltk_gl_lib);
+ osx_only(db.add_external_lib(files_db, "/System/Library/Frameworks/OpenGL.framework"));
+ osx_only(db.add_external_lib(files_db, "/System/Library/Frameworks/AGL.framework"));
demo_db.depends_on(db);
}
@@ -948,7 +985,7 @@ int create_new_database(const char *filename)
db.add_lib(fltk_images_lib);
db.add_lib(fltk_jpeg_lib);
db.add_lib(fltk_png_lib);
- //db.add_lib(fltk_audio_lib);
+ osx_only(db.add_external_lib(files_db, "/System/Library/Frameworks/CoreAudio.framework"));
demo_db.depends_on(db);
}
@@ -967,6 +1004,7 @@ int create_new_database(const char *filename)
{ Fl_Target_Prefs db(tests_db.add_with_key("name", "tabs"));
db.add_fl(files_db, "test/tabs.fl");
db.add_lib(fltk_lib);
+ db.depends_on(fluid_app);
demo_db.depends_on(db);
}
@@ -1006,10 +1044,12 @@ int create_new_database(const char *filename)
{ Fl_Target_Prefs db(tests_db.add_with_key("name", "valuators"));
db.add_fl(files_db, "test/valuators.fl");
db.add_lib(fltk_lib);
+ db.depends_on(fluid_app);
demo_db.depends_on(db);
}
db->flush();
+ return 0;
}
@@ -1039,6 +1079,10 @@ public:
}
return 0;
}
+ int test(const char *a1, const char *a2, const char *a3) {
+ create_new_database(a1);
+ return 0;
+ }
};
Fl_FltkDB_Plugin FltkDB_Plugin;
diff --git a/fluid/ide_support.h b/fluid/ide_support.h
index 126acb309..7bafb9b23 100644
--- a/fluid/ide_support.h
+++ b/fluid/ide_support.h
@@ -76,7 +76,7 @@ public:
Fl_Preferences::ID add_fl(Fl_IDE_Prefs &fdb, const char *pathAndName);
Fl_Preferences::ID depends_on(Fl_IDE_Prefs &dep);
Fl_Preferences::ID add_lib(Fl_IDE_Prefs &lib);
- Fl_Preferences::ID add_external_lib(Fl_IDE_Prefs &fdb, const char *name);
+ Fl_Preferences::ID add_external_lib(Fl_IDE_Prefs &fdb, const char *pathAndName);
};
@@ -94,7 +94,9 @@ public:
const char *fullName();
const char *fileExt();
};
-
+
+void osx_only(Fl_Preferences::ID id);
+
#endif
//
diff --git a/fluid/ide_xcode.cxx b/fluid/ide_xcode.cxx
index d35e38439..0ea3d8f83 100644
--- a/fluid/ide_xcode.cxx
+++ b/fluid/ide_xcode.cxx
@@ -116,7 +116,9 @@ class Xcode3_IDE {
XCID xcBuildConfigurationListID;
XCID xcMainGroupID;
XCID xcProductsGroupID;
- XCID xcFilesGroupID;
+ XCID xcAppsGroupID;
+ XCID xcLibsGroupID;
+ XCID xcTestsGroupID;
XCID xcBuildConfigurationDebugID;
XCID xcBuildConfigurationReleaseID;
public:
@@ -137,7 +139,9 @@ public:
getXCID(ideDB, "xcBuildConfigurationListID", xcBuildConfigurationListID);
getXCID(ideDB, "xcMainGroupID", xcMainGroupID);
getXCID(ideDB, "xcProductsGroupID", xcProductsGroupID);
- getXCID(ideDB, "xcFilesGroupID", xcFilesGroupID);
+ getXCID(ideDB, "xcAppsGroupID", xcAppsGroupID);
+ getXCID(ideDB, "xcLibsGroupID", xcLibsGroupID);
+ getXCID(ideDB, "xcTestsGroupID", xcTestsGroupID);
getXCID(ideDB, "xcBuildConfigurationDebugID", xcBuildConfigurationDebugID);
getXCID(ideDB, "xcBuildConfigurationReleaseID", xcBuildConfigurationReleaseID);
}
@@ -195,8 +199,8 @@ public:
MAKE_XCID(xcBuildFrameworkID, extDB);
Fl_File_Prefs fileDB(filesDB, refUUID);
MAKE_XCID(xcFileID, fileDB);
- const char *name = fileDB.fileName();
- fprintf(out, "\t\t%s /* lib%s.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = %s /* lib%s.dylib */; };\n", xcBuildFrameworkID, name, xcFileID, name);
+ const char *fullName = fileDB.fullName();
+ fprintf(out, "\t\t%s /* %s in Frameworks */ = {isa = PBXBuildFile; fileRef = %s /* %s */; };\n", xcBuildFrameworkID, fullName, xcFileID, fullName);
}
return 0;
}
@@ -240,6 +244,7 @@ public:
fprintf(out, "\t\t\t);\n");
fprintf(out, "\t\t\tscript = \"export DYLD_FRAMEWORK_PATH=${TARGET_BUILD_DIR} && cd ../../test && ${TARGET_BUILD_DIR}/Fluid.app/Contents/MacOS/Fluid -c ${INPUT_FILE_NAME}\";\n");
fprintf(out, "\t\t};\n");
+ return 0;
}
/*
@@ -374,7 +379,7 @@ public:
* A list of all files that are somehow referenced in this project
*/
int writeFileReferenceSection(FILE *out) {
- int i, j;
+ int i;
fprintf(out, "/* Begin PBXFileReference section */\n");
// --- list of all Application target results
for (i=0; i<nTgtApps; i++) {
@@ -419,7 +424,8 @@ public:
const char *filetype = "test";
const char *ext = fileDB.fileExt();
if (!ext) {
- } else if (strcmp(pathAndName, "src/Fl.cxx")==0) { // FIXME: bad hack!
+ } else if (strcmp(pathAndName, "src/Fl.cxx")==0
+ ||strcmp(pathAndName, "src/Fl_Native_File_Chooser.cxx")==0) { // FIXME: bad hack!
filetype = "sourcecode.cpp.objcpp";
} else if (strcmp(ext, ".cxx")==0) {
filetype = "sourcecode.cpp.cpp";
@@ -427,13 +433,21 @@ public:
filetype = "sourcecode.c.c";
} else if (strcmp(ext, ".mm")==0) {
filetype = "sourcecode.cpp.objcpp";
- } else if (strcmp(ext, ".lib")==0) {
+ } else if (strcmp(ext, ".dylib")==0) {
fprintf(out,
- "\t\t%s /* lib%s.dylib */ = {isa = PBXFileReference; "
+ "\t\t%s /* %s */ = {isa = PBXFileReference; "
"lastKnownFileType = \"compiled.mach-o.dylib\"; "
- "name = lib%s.dylib; path = /usr/lib/libz.dylib; "
+ "name = %s; path = %s; "
"sourceTree = \"<absolute>\"; };\n",
- xcFileID, fileDB.fileName(), fileDB.fileName() );
+ xcFileID, fullName, fullName, pathAndName );
+ filetype = 0L;
+ } else if (strcmp(ext, ".framework")==0) {
+ fprintf(out,
+ "\t\t%s /* %s */ = {isa = PBXFileReference; "
+ "lastKnownFileType = \"wrapper.framework\"; "
+ "name = %s; path = %s; "
+ "sourceTree = \"<absolute>\"; };\n",
+ xcFileID, fullName, fullName, pathAndName );
filetype = 0L;
} else if (strcmp(ext, ".plist")==0) {
filetype = "text.plist.xml";
@@ -510,7 +524,13 @@ public:
*
*/
int writeTargetFiles(FILE *out, Fl_Preferences &targetDB) {
- char name[80]; targetDB.get("name", name, "DBERROR", 80);
+ char name[80];
+ MAKE_XCID(xcTargetGroupID, targetDB);
+ targetDB.get("name", name, "DBERROR", 80);
+ fprintf(out, "\t\t%s /* %s */ = {\n", xcTargetGroupID, name);
+ fprintf(out, "\t\t\tisa = PBXGroup;\n");
+ fprintf(out, "\t\t\tchildren = (\n");
+
MAKE_XCID(xcProductID, targetDB);
Fl_Preferences sourcesDB(targetDB, "sources");
int j, n = sourcesDB.groups();
@@ -539,23 +559,32 @@ public:
GET_UUID(refUUID, extDB);
Fl_File_Prefs fileDB(filesDB, refUUID);
MAKE_XCID(xcFileID, fileDB);
- const char *name = fileDB.fileName();
- fprintf(out, "\t\t\t\t%s /* lib%s.dylib */,\n", xcFileID, name);
+ const char *fullName = fileDB.fullName();
+ fprintf(out, "\t\t\t\t%s /* %s */,\n", xcFileID, fullName);
}
+
+ fprintf(out, "\t\t\t);\n");
+ fprintf(out, "\t\t\tname = %s;\n", name);
+ fprintf(out, "\t\t\tsourceTree = \"<group>\";\n");
+ fprintf(out, "\t\t};\n");
+ return 0;
}
/*
* Groups define the folder hierarchy in the "Groups & Files" panel
*/
int writeGroupSection(FILE *out) {
- int i, j;
+ int i;
+ char name[80];
fprintf(out, "/* Begin PBXGroup section */\n");
// --- FIXME: missing "icons" group
// --- main group
fprintf(out, "\t\t%s = {\n", xcMainGroupID);
fprintf(out, "\t\t\tisa = PBXGroup;\n");
fprintf(out, "\t\t\tchildren = (\n");
- fprintf(out, "\t\t\t\t%s /* Files */,\n", xcFilesGroupID); // link to "Files" group
+ fprintf(out, "\t\t\t\t%s /* Applications */,\n", xcAppsGroupID);
+ fprintf(out, "\t\t\t\t%s /* Frameworks */,\n", xcLibsGroupID);
+ fprintf(out, "\t\t\t\t%s /* Tests */,\n", xcTestsGroupID);
fprintf(out, "\t\t\t\t%s /* Products */,\n", xcProductsGroupID); // link to "Products" group
fprintf(out, "\t\t\t);\n");
fprintf(out, "\t\t\tsourceTree = \"<group>\";\n");
@@ -594,28 +623,63 @@ public:
// --- FIXME: missing "jpeg Sources" group
// --- FIXME: missing "png Sources" group
// --- FIXME: missing "libs" group
-
- // --- "Files" group for testing
- fprintf(out, "\t\t%s /* Files */ = {\n", xcFilesGroupID);
+
+ // --- "Applications" group for testing
+ fprintf(out, "\t\t%s /* Applications */ = {\n", xcAppsGroupID);
fprintf(out, "\t\t\tisa = PBXGroup;\n");
fprintf(out, "\t\t\tchildren = (\n");
for (i=0; i<nTgtApps; i++) {
Fl_Preferences targetDB(tgtAppsDB, i);
+ MAKE_XCID(xcTargetGroupID, targetDB);
+ targetDB.get("name", name, "DBERROR", 80);
+ fprintf(out, "\t\t\t\t%s /* %s */,\n", xcTargetGroupID, name);
+ }
+ fprintf(out, "\t\t\t);\n");
+ fprintf(out, "\t\t\tname = Applications;\n");
+ fprintf(out, "\t\t\tsourceTree = \"<group>\";\n");
+ fprintf(out, "\t\t};\n");
+ for (i=0; i<nTgtApps; i++) {
+ Fl_Preferences targetDB(tgtAppsDB, i);
writeTargetFiles(out, targetDB);
}
+ // --- "Frameworks" group for testing
+ fprintf(out, "\t\t%s /* Frameworks */ = {\n", xcLibsGroupID);
+ fprintf(out, "\t\t\tisa = PBXGroup;\n");
+ fprintf(out, "\t\t\tchildren = (\n");
+ for (i=0; i<nTgtLibs; i++) {
+ Fl_Preferences targetDB(tgtLibsDB, i);
+ MAKE_XCID(xcTargetGroupID, targetDB);
+ targetDB.get("name", name, "DBERROR", 80);
+ fprintf(out, "\t\t\t\t%s /* %s */,\n", xcTargetGroupID, name);
+ }
+ fprintf(out, "\t\t\t);\n");
+ fprintf(out, "\t\t\tname = Frameworks;\n");
+ fprintf(out, "\t\t\tsourceTree = \"<group>\";\n");
+ fprintf(out, "\t\t};\n");
for (i=0; i<nTgtLibs; i++) {
Fl_Preferences targetDB(tgtLibsDB, i);
writeTargetFiles(out, targetDB);
}
+ // --- "Tests" group for testing
+ fprintf(out, "\t\t%s /* Tests */ = {\n", xcTestsGroupID);
+ fprintf(out, "\t\t\tisa = PBXGroup;\n");
+ fprintf(out, "\t\t\tchildren = (\n");
for (i=0; i<nTgtTests; i++) {
Fl_Preferences targetDB(tgtTestsDB, i);
- writeTargetFiles(out, targetDB);
+ MAKE_XCID(xcTargetGroupID, targetDB);
+ targetDB.get("name", name, "DBERROR", 80);
+ fprintf(out, "\t\t\t\t%s /* %s */,\n", xcTargetGroupID, name);
}
fprintf(out, "\t\t\t);\n");
- fprintf(out, "\t\t\tname = Files;\n");
+ fprintf(out, "\t\t\tname = Tests;\n");
fprintf(out, "\t\t\tsourceTree = \"<group>\";\n");
fprintf(out, "\t\t};\n");
+ for (i=0; i<nTgtTests; i++) {
+ Fl_Preferences targetDB(tgtTestsDB, i);
+ writeTargetFiles(out, targetDB);
+ }
// --- done
+
fprintf(out, "/* End PBXGroup section */\n\n");
return 0;
}
@@ -831,7 +895,6 @@ public:
GET_UUID(refUUID, sourceDB);
MAKE_XCID(xcBuildFileID, sourceDB);
Fl_File_Prefs fileDB(filesDB, refUUID);
- const char *fullName = fileDB.fullName();
fprintf(out, "\t\t\t\t%s /* %s in Sources */,\n", xcBuildFileID, fileDB.fullName());
}
Fl_Preferences flsDB(targetDB, "fl");
@@ -841,7 +904,6 @@ public:
GET_UUID(refUUID, flDB);
MAKE_XCID(xcBuildFileID, flDB);
Fl_File_Prefs fileDB(filesDB, refUUID);
- const char *fullName = fileDB.fullName();
fprintf(out, "\t\t\t\t%s /* %s in Sources */,\n", xcBuildFileID, fileDB.fullName());
}
fprintf(out, "\t\t\t);\n");
@@ -941,7 +1003,7 @@ public:
fprintf(out, "\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n");
fprintf(out, "\t\t\t\tGCC_PFE_FILE_C_DIALECTS = \"c c++\";\n");
fprintf(out, "\t\t\t\tGCC_PRECOMPILE_PREFIX_HEADER = YES;\n");
- fprintf(out, "\t\t\t\tGCC_PREFIX_HEADER = \"$(SDKROOT)/System/Library/Frameworks/Carbon.framework/Headers/Carbon.h\";\n");
+ fprintf(out, "\t\t\t\tGCC_PREFIX_HEADER = \"\";\n");
fprintf(out, "\t\t\t\tGCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = NO;\n");
fprintf(out, "\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.2;\n");
fprintf(out, "\t\t\t\tSDKROOT = \"$(DEVELOPER_SDK_DIR)/MacOSX10.5.sdk\";\n");
@@ -960,7 +1022,7 @@ public:
fprintf(out, "\t\t\t\tGCC_GENERATE_DEBUGGING_SYMBOLS = NO;\n");
fprintf(out, "\t\t\t\tGCC_PFE_FILE_C_DIALECTS = \"c c++\";\n");
fprintf(out, "\t\t\t\tGCC_PRECOMPILE_PREFIX_HEADER = YES;\n");
- fprintf(out, "\t\t\t\tGCC_PREFIX_HEADER = \"$(SDKROOT)/System/Library/Frameworks/Carbon.framework/Headers/Carbon.h\";\n");
+ fprintf(out, "\t\t\t\tGCC_PREFIX_HEADER = \"\";\n");
fprintf(out, "\t\t\t\tGCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = NO;\n");
fprintf(out, "\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.3;\n");
fprintf(out, "\t\t\t\tSDKROOT = \"$(DEVELOPER_SDK_DIR)/MacOSX10.5.sdk\";\n");
@@ -988,7 +1050,7 @@ public:
fprintf(out, "\t\t\t\tGCC_MODEL_TUNING = G5;\n");
fprintf(out, "\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n");
fprintf(out, "\t\t\t\tGCC_PRECOMPILE_PREFIX_HEADER = YES;\n");
- fprintf(out, "\t\t\t\tGCC_PREFIX_HEADER = \"$(SYSTEM_LIBRARY_DIR)/Frameworks/Carbon.framework/Headers/Carbon.h\";\n");
+ fprintf(out, "\t\t\t\tGCC_PREFIX_HEADER = \"\";\n");
fprintf(out, "\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = \"USING_XCODE=1\";\n");
fprintf(out, "\t\t\t\tHEADER_SEARCH_PATHS = (\n");
fprintf(out, "\t\t\t\t\t../../ide/XCode3/,\n");
@@ -1000,11 +1062,14 @@ public:
fprintf(out, "\t\t\t\tINSTALL_PATH = /Applications;\n");
fprintf(out, "\t\t\t\tOTHER_LDFLAGS = (\n");
fprintf(out, "\t\t\t\t\t\"-framework\",\n");
+ fprintf(out, "\t\t\t\t\tCocoa,\n");
+ fprintf(out, "\t\t\t\t\t\"-framework\",\n");
fprintf(out, "\t\t\t\t\tCarbon,\n");
fprintf(out, "\t\t\t\t);\n");
fprintf(out, "\t\t\t\tPREBINDING = NO;\n");
fprintf(out, "\t\t\t\tPRODUCT_NAME = %s;\n", name);
fprintf(out, "\t\t\t\tUSER_HEADER_SEARCH_PATHS = \"\";\n");
+ fprintf(out, "\t\t\t\tWARNING_CFLAGS = \"-Wno-format-security\";\n");
fprintf(out, "\t\t\t\tWRAPPER_EXTENSION = app;\n");
fprintf(out, "\t\t\t\tZERO_LINK = YES;\n");
fprintf(out, "\t\t\t};\n");
@@ -1019,7 +1084,7 @@ public:
fprintf(out, "\t\t\t\tGCC_ENABLE_FIX_AND_CONTINUE = NO;\n");
fprintf(out, "\t\t\t\tGCC_MODEL_TUNING = G5;\n");
fprintf(out, "\t\t\t\tGCC_PRECOMPILE_PREFIX_HEADER = YES;\n");
- fprintf(out, "\t\t\t\tGCC_PREFIX_HEADER = \"$(SYSTEM_LIBRARY_DIR)/Frameworks/Carbon.framework/Headers/Carbon.h\";\n");
+ fprintf(out, "\t\t\t\tGCC_PREFIX_HEADER = \"\";\n");
fprintf(out, "\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = \"USING_XCODE=1\";\n");
fprintf(out, "\t\t\t\tHEADER_SEARCH_PATHS = (\n");
fprintf(out, "\t\t\t\t\t../../ide/XCode3/,\n");
@@ -1031,16 +1096,20 @@ public:
fprintf(out, "\t\t\t\tINSTALL_PATH = /Applications;\n");
fprintf(out, "\t\t\t\tOTHER_LDFLAGS = (\n");
fprintf(out, "\t\t\t\t\t\"-framework\",\n");
+ fprintf(out, "\t\t\t\t\tCocoa,\n");
+ fprintf(out, "\t\t\t\t\t\"-framework\",\n");
fprintf(out, "\t\t\t\t\tCarbon,\n");
fprintf(out, "\t\t\t\t);\n");
fprintf(out, "\t\t\t\tPREBINDING = NO;\n");
fprintf(out, "\t\t\t\tPRODUCT_NAME = %s;\n", name);
fprintf(out, "\t\t\t\tUSER_HEADER_SEARCH_PATHS = \"\";\n");
+ fprintf(out, "\t\t\t\tWARNING_CFLAGS = \"-Wno-format-security\";\n");
fprintf(out, "\t\t\t\tWRAPPER_EXTENSION = app;\n");
fprintf(out, "\t\t\t\tZERO_LINK = NO;\n");
fprintf(out, "\t\t\t};\n");
fprintf(out, "\t\t\tname = Release;\n");
fprintf(out, "\t\t};\n");
+ return 0;
}
/*
@@ -1073,14 +1142,14 @@ public:
fprintf(out, "\t\t\t\tINSTALL_PATH = \"@executable_path/../Frameworks\";\n");
fprintf(out, "\t\t\t\tOTHER_LDFLAGS = (\n");
fprintf(out, "\t\t\t\t\t\"-framework\",\n");
- fprintf(out, "\t\t\t\t\tCarbon,\n");
- fprintf(out, "\t\t\t\t\t\"-framework\",\n");
fprintf(out, "\t\t\t\t\tCocoa,\n");
+ fprintf(out, "\t\t\t\t\t\"-framework\",\n");
+ fprintf(out, "\t\t\t\t\tCarbon,\n");
fprintf(out, "\t\t\t\t);\n");
fprintf(out, "\t\t\t\tPREBINDING = NO;\n");
fprintf(out, "\t\t\t\tPRODUCT_NAME = %s;\n", name);
fprintf(out, "\t\t\t\tUSER_HEADER_SEARCH_PATHS = \"\";\n");
- fprintf(out, "\t\t\t\tWARNING_CFLAGS = \"-Wno-format-nonliteral\";\n");
+ fprintf(out, "\t\t\t\tWARNING_CFLAGS = \"-Wno-format-security\";\n");
fprintf(out, "\t\t\t\tZERO_LINK = YES;\n");
fprintf(out, "\t\t\t};\n");
fprintf(out, "\t\t\tname = Debug;\n");
@@ -1111,18 +1180,19 @@ public:
fprintf(out, "\t\t\t\tOTHER_LDFLAGS = (\n");
fprintf(out, "\t\t\t\t\"-framework\",\n");
fprintf(out, "\t\t\t\tCocoa,\n");
- fprintf(out, "\t\t\t\t\"-framework\",\n");
- fprintf(out, "\t\t\t\tCarbon,\n");
+ fprintf(out, "\t\t\t\t\t\"-framework\",\n");
+ fprintf(out, "\t\t\t\t\tCarbon,\n");
fprintf(out, "\t\t\t\t);\n");
fprintf(out, "\t\t\t\tPREBINDING = NO;\n");
fprintf(out, "\t\t\t\tPRODUCT_NAME = %s;\n", name);
fprintf(out, "\t\t\t\tSDKROOT = \"\";\n");
fprintf(out, "\t\t\t\tUSER_HEADER_SEARCH_PATHS = \"\";\n");
- fprintf(out, "\t\t\t\tWARNING_CFLAGS = \"-Wno-format-nonliteral\";\n");
+ fprintf(out, "\t\t\t\tWARNING_CFLAGS = \"-Wno-format-security\";\n");
fprintf(out, "\t\t\t\tZERO_LINK = NO;\n");
fprintf(out, "\t\t\t};\n");
fprintf(out, "\t\t\tname = Release;\n");
fprintf(out, "\t\t};\n");
+ return 0;
}
/*
@@ -1161,6 +1231,7 @@ public:
fprintf(out, "\t\t\tdefaultConfigurationIsVisible = 0;\n");
fprintf(out, "\t\t\tdefaultConfigurationName = Debug;\n");
fprintf(out, "\t\t};\n");
+ return 0;
}
/*
@@ -1246,8 +1317,36 @@ public:
return 0;
}
- int writeConfigH(const char *filepath) {
- // FIXME: LATER: do we want to do that?
+ int writeConfigH(const char *filename) {
+ FILE *f = fopen(filename, "wb");
+ fputs("/*\n * \"$Id$\"\n"
+ " *\n * Configuration file for the Fast Light Tool Kit (FLTK).\n *\n"
+ " * Copyright 1998-2010 by Bill Spitzak and others.\n */\n\n", f);
+ fputs("#define FLTK_DATADIR \"/usr/local/share/fltk\"\n"
+ "#define FLTK_DOCDIR \"/usr/local/share/doc/fltk\"\n"
+ "#define BORDER_WIDTH 2\n#define HAVE_GL 1\n#define HAVE_GL_GLU_H 1\n"
+ "#define USE_COLORMAP 1\n#define HAVE_XINERAMA 0\n#define USE_XFT 0\n"
+ "#define HAVE_XDBE 0\n#define USE_XDBE HAVE_XDBE\n", f);
+ fputs("#define USE_QUARTZ 1\n#define __APPLE_QUARTZ__ 1\n"
+ "#define __APPLE_COCOA__ 1\n#define HAVE_OVERLAY 0\n"
+ "#define HAVE_GL_OVERLAY HAVE_OVERLAY\n#define WORDS_BIGENDIAN 0\n"
+ "#define U16 unsigned short\n#define U32 unsigned\n"
+ "#define HAVE_DIRENT_H 1\n#define HAVE_SCANDIR 1\n"
+ "#define HAVE_VSNPRINTF 1\n", f);
+ fputs("#define HAVE_SNPRINTF 1\n#define HAVE_STRINGS_H 1\n"
+ "#define HAVE_STRCASECMP 1\n#define HAVE_STRLCAT 1\n"
+ "#define HAVE_STRLCPY 1\n#define HAVE_LOCALE_H 1\n"
+ "#define HAVE_LOCALECONV 1\n#define HAVE_SYS_SELECT_H 1\n"
+ "#define USE_POLL 0\n#define HAVE_LIBPNG 1\n#define HAVE_LIBZ 1\n"
+ "#define HAVE_LIBJPEG 1\n#define HAVE_PNG_H 1\n", f);
+ fputs("#define HAVE_PTHREAD 1\n#define HAVE_PTHREAD_H 1\n"
+ "#define HAVE_LONG_LONG 1\n#define FLTK_LLFMT \"%lld\"\n"
+ "#define FLTK_LLCAST (long long)\n#define HAVE_STRTOLL 1\n"
+ "#define HAVE_DLFCN_H 1\n#define HAVE_DLSYM 1\n\n", f);
+ fputs("/*\n"
+ " * End of \"$Id$\".\n"
+ " */", f);
+ fclose(f);
return 0;
}
@@ -1322,7 +1421,8 @@ public:
// --- create project.pbxproj
sprintf(filepath, "%s/ide/Xcode3/FLTK.xcodeproj", rootDir); fl_mkdir(filepath, 0777);
writeProjectFile(filepath);
- // --- FIXME: LATER: should we create config.h here?
+ // --- create a valid config.h
+ sprintf(filepath, "%s/ide/Xcode3/config.h", rootDir);
writeConfigH(filepath);
// --- FIXME: LATER: create default icons (maybe import icons for apps?)
sprintf(filepath, "%s/ide/Xcode3/icons", rootDir); fl_mkdir(filepath, 0777);
@@ -1377,6 +1477,10 @@ public:
}
return 0;
}
+ int test(const char *a1, const char *a2, const char *a3) {
+ generate_fltk_Xcode3_support(a1, a2);
+ return 0;
+ }
};
Fl_IDE_Xcode_Plugin IDE_Xcode_Plugin;