Merge branch 'prune-old-files'
Remove files that are no longer useful. See #22980.
|
|
@ -1,170 +0,0 @@
|
|||
wxWidgets slogan ideas
|
||||
|
||||
CafePress products:
|
||||
|
||||
http://www.cafepress.com/cp/info/products/
|
||||
|
||||
|
||||
-----------
|
||||
|
||||
On mug or umbrella:
|
||||
|
||||
super-gui-OS-agnostic-XP-Linux-MacOS
|
||||
|
||||
(perhaps highlighted in different colours)
|
||||
|
||||
wxWidgets: "Practically Perfect in Every Way"
|
||||
|
||||
-----------
|
||||
|
||||
On tote bag:
|
||||
|
||||
"Bag yourself some cool tools at wxwidgets.org"
|
||||
|
||||
-----------
|
||||
|
||||
On sweatshirt:
|
||||
|
||||
Build an app for Windows, Mac and Linux in a week?
|
||||
No sweat.
|
||||
|
||||
<wxWidgets logo>
|
||||
wxwidgets.org
|
||||
|
||||
-----------
|
||||
|
||||
Hallelujah!
|
||||
The future is open source and OS-agnostic.
|
||||
Tool up for it at wxwidgets.org.
|
||||
|
||||
-----------
|
||||
|
||||
On hat:
|
||||
|
||||
wxWidgets
|
||||
Brim-full of cool GUI tools
|
||||
|
||||
-----------
|
||||
|
||||
On frosted glass mug:
|
||||
|
||||
just the logo
|
||||
|
||||
-----------
|
||||
|
||||
Suggested slogans from wx-users:
|
||||
|
||||
wxWidgets: The API for programmers who aren't sheep.
|
||||
(Robin Dunn)
|
||||
|
||||
Better printed on a shirt:
|
||||
|
||||
"A human being should be able to change a diaper, plan an invasion,
|
||||
butcher a hog, conn a ship, design a building, write a sonnet,
|
||||
balance accounts, build a wall, set a bone, comfort the dying,
|
||||
take orders, give orders, cooperate, act alone, solve equations,
|
||||
analyze a new problem, pitch manure, program a computer, cook a
|
||||
tasty meal, fight efficiently, die gallantly.
|
||||
Specialization is for insects."
|
||||
[Robert A. Heinlein]
|
||||
|
||||
maybe stripped down to
|
||||
|
||||
"Specialization is for insects."
|
||||
|
||||
============================
|
||||
The Open-Source, Cross-Platform GUI Framework
|
||||
with Ten Years of Evolution Behind It
|
||||
|
||||
I saw this changed to 'native UI' on the website, which is slightly more
|
||||
accurate but sounds less 'catchy' imho.
|
||||
|
||||
.. and templates.
|
||||
|
||||
Hmm. I might buy a mug that had, say, a wxLogo and "wxWidgets" (and
|
||||
maybe the website URL underneath in smaller type) on one side and
|
||||
"Specialization is for insects ... and templates" on the other.
|
||||
|
||||
.. only if it held at least a full half (imperial) pint, mind. Not
|
||||
one of those wussy 8.5 fl.oz. jobbies.
|
||||
|
||||
That'd be a nice ice-breaker when working at a new client's site -
|
||||
people would be bound to stop and ask what it was all about!
|
||||
|
||||
.. and how about a nice silk tie (US: necktie) with the logo on ...
|
||||
Oh, I forgot, we programmers don't wear ties.
|
||||
|
||||
============================
|
||||
"I can't believe it's not native"
|
||||
|
||||
============================
|
||||
"Because friends don't let friends use Win32".
|
||||
|
||||
(or MFC)
|
||||
|
||||
============================
|
||||
|
||||
Have a photo of 3 babes wearing Linux, Windows and Mac Logo T-shirt with
|
||||
words at the bottom.
|
||||
|
||||
"Why choose one when you can have 3?"
|
||||
|
||||
(Mohammad Zubair <mzubair@singnet.com.sg>)
|
||||
|
||||
============================
|
||||
|
||||
wxWidgets: Write it once and for all.
|
||||
|
||||
Matt Gregory <msgregory@earthlink.net>
|
||||
|
||||
============================
|
||||
|
||||
|
||||
At front:
|
||||
|
||||
Need an API?
|
||||
<wxWidgets>
|
||||
and get THE API
|
||||
|
||||
C++, Python, Basic, Lua ...
|
||||
|
||||
At back
|
||||
|
||||
<windows> OR <linux> OR <mac> ?
|
||||
<wxWidgets> is
|
||||
<windows> AND <linux> AND <mac>
|
||||
|
||||
where <xxxxx> is the respective logo
|
||||
|
||||
Manuel Martin <mmartin@ceyd.es>
|
||||
|
||||
============================
|
||||
|
||||
|
||||
Kevin Ollivier wrote:
|
||||
How about this for a t-shirt slogan?
|
||||
|
||||
One API to rule them all, one API to hide them
|
||||
One API to bridge them all and in the compiler bind them.
|
||||
|
||||
wxWidgets
|
||||
|
||||
How about "and in the linker bind them"? That's where the local libraries
|
||||
get bound to the wxWidgets code anyway.
|
||||
|
||||
============================
|
||||
|
||||
Hugh Gibson wrote:
|
||||
> > Perhaps a head shot of a Maori with full face tattoo and the
|
||||
> > slogan "Go native"?
|
||||
>
|
||||
> Perhaps the "tattoos" could be various representations of a common
|
||||
> window control in different operating systems to emphasise the
|
||||
> native look and feel.
|
||||
|
||||
Nice idea. But I wonder where you'll find some volunteer willing to
|
||||
have his face tattooed with win32 common controls ;-)
|
||||
|
||||
============================
|
||||
|
||||
|
||||
7
docs/tech/README.md
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
Obsolete "tech notes" directory
|
||||
-------------------------------
|
||||
|
||||
This directory used to contain "technical notes" for wxWidgets contributors,
|
||||
but is not used any longer, this file only exists to point you to the "HOW TO"
|
||||
guides in `docs/contributing` directory which are still relevant, if you're
|
||||
looking for something that used to be here.
|
||||
|
|
@ -1,31 +0,0 @@
|
|||
All the files in this directory are obsolete (including this one) and are kept
|
||||
just to avoid breaking the existing links to them, please refer to the files
|
||||
with the corresponding name under docs/contributing instead:
|
||||
|
||||
|
||||
tn0001.txt -> docs/contributing/how-to-add-new-sample.md
|
||||
tn0002.txt -> docs/contributing/translators-guide.md
|
||||
tn0003.txt -> docs/contributing/how-to-add-class-documentation.md
|
||||
tn0004.htm -> *** REMOVED *** (obsoleted by Bakefile changes)
|
||||
tn0005.txt -> *** REMOVED *** (obsoleted by https://wiki.wxwidgets.org/Development:_How_To_Contribute)
|
||||
tn0006.txt -> *** REMOVED *** (obsoleted by tn0013.txt)
|
||||
tn0007.txt -> *** REMOVED *** (obsoleted by Bakefile changes)
|
||||
tn0008.htm -> *** REMOVED *** (included in the manual now)
|
||||
tn0009.htm -> *** REMOVED *** (use any standard tool for icon creation)
|
||||
tn0010.htm -> *** REMOVED *** (obsoleted by Bakefile changes)
|
||||
tn0011.txt -> docs/contributing/about-version-numbers.md
|
||||
tn0012.txt -> docs/contributing/about-platform-toolkit-and-library-names.md
|
||||
tn0013.txt -> *** REMOVED *** (obsoleted by tn0022.txt)
|
||||
tn0014.txt -> *** REMOVED *** (included in the manual now)
|
||||
tn0015.txt -> docs/contributing/how-to-add-new-ui-bitmaps.md
|
||||
tn0016.txt -> docs/contributing/how-to-add-files-to-build-system.md
|
||||
tn0017.txt -> docs/contributing/how-to-write-unit-tests.md
|
||||
tn0018.txt -> docs/contributing/how-to-add-new-font-encoding.md
|
||||
tn0019.txt -> docs/contributing/wxmsw-contributor-guide.md
|
||||
tn0020.txt -> docs/contributing/binary-compatibility.md
|
||||
tn0021.txt -> docs/contributing/how-to-add-new-wxUSE_XXX.md
|
||||
tn0022.txt -> docs/contributing/how-to-release.md
|
||||
tn0023.txt -> *** REMOVED *** (obsoleted by web site redesign)
|
||||
tn0024.txt -> docs/contributing/how-to-add-new-xrc-handler.md
|
||||
tn0025.txt -> docs/contributing/how-to-update-third-party-library.md
|
||||
|
||||
|
|
@ -1 +0,0 @@
|
|||
Please see index.txt
|
||||
|
|
@ -1 +0,0 @@
|
|||
Please see index.txt
|
||||
|
|
@ -1 +0,0 @@
|
|||
Please see index.txt
|
||||
|
|
@ -1 +0,0 @@
|
|||
Please see index.txt
|
||||
|
|
@ -1 +0,0 @@
|
|||
Please see index.txt
|
||||
|
|
@ -1 +0,0 @@
|
|||
Please see index.txt
|
||||
|
|
@ -1 +0,0 @@
|
|||
Please see index.txt
|
||||
|
|
@ -1 +0,0 @@
|
|||
Please see index.txt
|
||||
|
|
@ -1 +0,0 @@
|
|||
Please see index.txt
|
||||
|
|
@ -1 +0,0 @@
|
|||
Please see index.txt
|
||||
|
|
@ -1 +0,0 @@
|
|||
Please see index.txt
|
||||
|
|
@ -1 +0,0 @@
|
|||
Please see index.txt
|
||||
|
|
@ -1 +0,0 @@
|
|||
Please see index.txt
|
||||
|
|
@ -1 +0,0 @@
|
|||
Please see index.txt
|
||||
|
|
@ -1 +0,0 @@
|
|||
Please see index.txt
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
|
||||
CC = gcc
|
||||
|
||||
test: test.c
|
||||
$(CC) `gtk-config --cflags` test.c -o test `gtk-config --libs`
|
||||
|
||||
clean:
|
||||
rm -f *.o test
|
||||
|
|
@ -1,207 +0,0 @@
|
|||
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
/* This function rotates the position of the tabs */
|
||||
void rotate_book (GtkButton *button, GtkNotebook *notebook)
|
||||
{
|
||||
gtk_notebook_set_tab_pos (notebook, (notebook->tab_pos +1) %4);
|
||||
}
|
||||
|
||||
/* Add/Remove the page tabs and the borders */
|
||||
void tabsborder_book (GtkButton *button, GtkNotebook *notebook)
|
||||
{
|
||||
gint tval = FALSE;
|
||||
gint bval = FALSE;
|
||||
if (notebook->show_tabs == 0)
|
||||
tval = TRUE;
|
||||
if (notebook->show_border == 0)
|
||||
bval = TRUE;
|
||||
|
||||
gtk_notebook_set_show_tabs (notebook, tval);
|
||||
gtk_notebook_set_show_border (notebook, bval);
|
||||
}
|
||||
|
||||
/* Remove a page from the notebook */
|
||||
void remove_book (GtkButton *button, GtkNotebook *notebook)
|
||||
{
|
||||
gint page;
|
||||
|
||||
page = gtk_notebook_get_current_page(notebook);
|
||||
gtk_notebook_remove_page (notebook, page);
|
||||
/* Need to refresh the widget --
|
||||
This forces the widget to redraw itself. */
|
||||
gtk_widget_draw(GTK_WIDGET(notebook), NULL);
|
||||
}
|
||||
|
||||
void delete (GtkWidget *widget, GtkWidget *event, gpointer data)
|
||||
{
|
||||
gtk_main_quit ();
|
||||
}
|
||||
|
||||
void assign_new_style(GtkWidget *widget)
|
||||
{
|
||||
GtkStyle *default_style,*new_style;
|
||||
|
||||
default_style = gtk_rc_get_style( widget );
|
||||
|
||||
if (!default_style)
|
||||
default_style = gtk_widget_get_default_style();
|
||||
|
||||
new_style = gtk_style_copy( default_style );
|
||||
new_style->engine_data = default_style->engine_data;
|
||||
new_style->klass = default_style->klass;
|
||||
|
||||
gtk_widget_set_style( widget, new_style );
|
||||
}
|
||||
|
||||
|
||||
int main (int argc, char *argv[])
|
||||
{
|
||||
GtkWidget *window;
|
||||
GtkWidget *button;
|
||||
GtkWidget *table;
|
||||
GtkWidget *notebook;
|
||||
GtkWidget *frame;
|
||||
GtkWidget *label;
|
||||
|
||||
gtk_init (&argc, &argv);
|
||||
|
||||
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
|
||||
|
||||
gtk_signal_connect (GTK_OBJECT (window), "delete_event",
|
||||
GTK_SIGNAL_FUNC (delete), NULL);
|
||||
|
||||
gtk_container_set_border_width (GTK_CONTAINER (window), 10);
|
||||
|
||||
table = gtk_table_new(3,6,FALSE);
|
||||
gtk_container_add (GTK_CONTAINER (window), table);
|
||||
|
||||
/* Create a new notebook, place the position of the tabs */
|
||||
notebook = gtk_notebook_new ();
|
||||
assign_new_style( notebook );
|
||||
|
||||
gtk_notebook_set_tab_pos (GTK_NOTEBOOK (notebook), GTK_POS_TOP);
|
||||
gtk_table_attach_defaults(GTK_TABLE(table), notebook, 0,6,0,1);
|
||||
gtk_widget_show(notebook);
|
||||
|
||||
/* Now finally let's prepend pages to the notebook */
|
||||
|
||||
frame = gtk_frame_new ("frame");
|
||||
gtk_container_set_border_width (GTK_CONTAINER (frame), 10);
|
||||
gtk_widget_set_usize (frame, 100, 75);
|
||||
gtk_widget_show (frame);
|
||||
|
||||
label = gtk_label_new ("label");
|
||||
assign_new_style( label );
|
||||
gtk_container_add (GTK_CONTAINER (frame), label);
|
||||
gtk_widget_show (label);
|
||||
|
||||
label = gtk_label_new ("page");
|
||||
gtk_notebook_append_page (GTK_NOTEBOOK (notebook), frame, label);
|
||||
|
||||
|
||||
frame = gtk_frame_new ("frame");
|
||||
gtk_container_set_border_width (GTK_CONTAINER (frame), 10);
|
||||
gtk_widget_set_usize (frame, 100, 75);
|
||||
gtk_widget_show (frame);
|
||||
|
||||
label = gtk_button_new_with_label ("button");
|
||||
assign_new_style( label );
|
||||
gtk_container_add (GTK_CONTAINER (frame), label);
|
||||
gtk_widget_show (label);
|
||||
|
||||
label = gtk_label_new ("page");
|
||||
gtk_notebook_append_page (GTK_NOTEBOOK (notebook), frame, label);
|
||||
|
||||
|
||||
|
||||
frame = gtk_frame_new ("frame");
|
||||
gtk_container_set_border_width (GTK_CONTAINER (frame), 10);
|
||||
gtk_widget_set_usize (frame, 100, 75);
|
||||
gtk_widget_show (frame);
|
||||
|
||||
label = gtk_check_button_new_with_label ("check button");
|
||||
assign_new_style( label );
|
||||
gtk_container_add (GTK_CONTAINER (frame), label);
|
||||
gtk_widget_show (label);
|
||||
|
||||
label = gtk_label_new ("page");
|
||||
gtk_notebook_append_page (GTK_NOTEBOOK (notebook), frame, label);
|
||||
|
||||
|
||||
frame = gtk_frame_new ("frame");
|
||||
gtk_container_set_border_width (GTK_CONTAINER (frame), 10);
|
||||
gtk_widget_set_usize (frame, 100, 75);
|
||||
gtk_widget_show (frame);
|
||||
|
||||
label = gtk_radio_button_new_with_label (NULL, "radio button");
|
||||
assign_new_style( label );
|
||||
gtk_container_add (GTK_CONTAINER (frame), label);
|
||||
gtk_widget_show (label);
|
||||
|
||||
label = gtk_label_new ("page");
|
||||
gtk_notebook_append_page (GTK_NOTEBOOK (notebook), frame, label);
|
||||
|
||||
|
||||
frame = gtk_frame_new ("frame");
|
||||
gtk_container_set_border_width (GTK_CONTAINER (frame), 10);
|
||||
gtk_widget_set_usize (frame, 100, 75);
|
||||
gtk_widget_show (frame);
|
||||
|
||||
label = gtk_entry_new ();
|
||||
assign_new_style( label );
|
||||
gtk_container_add (GTK_CONTAINER (frame), label);
|
||||
gtk_widget_show (label);
|
||||
|
||||
label = gtk_label_new ("page");
|
||||
gtk_notebook_append_page (GTK_NOTEBOOK (notebook), frame, label);
|
||||
|
||||
/* Create a bunch of buttons */
|
||||
button = gtk_button_new_with_label ("close");
|
||||
gtk_signal_connect_object (GTK_OBJECT (button), "clicked",
|
||||
GTK_SIGNAL_FUNC (delete), NULL);
|
||||
gtk_table_attach_defaults(GTK_TABLE(table), button, 0,1,1,2);
|
||||
gtk_widget_show(button);
|
||||
|
||||
button = gtk_button_new_with_label ("next page");
|
||||
gtk_signal_connect_object (GTK_OBJECT (button), "clicked",
|
||||
(GtkSignalFunc) gtk_notebook_next_page,
|
||||
GTK_OBJECT (notebook));
|
||||
gtk_table_attach_defaults(GTK_TABLE(table), button, 1,2,1,2);
|
||||
gtk_widget_show(button);
|
||||
|
||||
button = gtk_button_new_with_label ("prev page");
|
||||
gtk_signal_connect_object (GTK_OBJECT (button), "clicked",
|
||||
(GtkSignalFunc) gtk_notebook_prev_page,
|
||||
GTK_OBJECT (notebook));
|
||||
gtk_table_attach_defaults(GTK_TABLE(table), button, 2,3,1,2);
|
||||
gtk_widget_show(button);
|
||||
|
||||
button = gtk_button_new_with_label ("tab position");
|
||||
gtk_signal_connect (GTK_OBJECT (button), "clicked",
|
||||
(GtkSignalFunc) rotate_book, GTK_OBJECT(notebook));
|
||||
gtk_table_attach_defaults(GTK_TABLE(table), button, 3,4,1,2);
|
||||
gtk_widget_show(button);
|
||||
|
||||
button = gtk_button_new_with_label ("tabs/border on/off");
|
||||
gtk_signal_connect (GTK_OBJECT (button), "clicked",
|
||||
(GtkSignalFunc) tabsborder_book,
|
||||
GTK_OBJECT (notebook));
|
||||
gtk_table_attach_defaults(GTK_TABLE(table), button, 4,5,1,2);
|
||||
gtk_widget_show(button);
|
||||
|
||||
button = gtk_button_new_with_label ("remove page");
|
||||
gtk_signal_connect (GTK_OBJECT (button), "clicked",
|
||||
(GtkSignalFunc) remove_book,
|
||||
GTK_OBJECT(notebook));
|
||||
gtk_table_attach_defaults(GTK_TABLE(table), button, 5,6,1,2);
|
||||
gtk_widget_show(button);
|
||||
|
||||
gtk_widget_show(table);
|
||||
gtk_widget_show(window);
|
||||
|
||||
gtk_main ();
|
||||
|
||||
return(0);
|
||||
}
|
||||
/* example-end */
|
||||
|
|
@ -21,19 +21,17 @@ DESTDIR =
|
|||
|
||||
### Targets: ###
|
||||
|
||||
all: emulator execmon helpview hhp2cached ifacecheck screenshotgen wxrc
|
||||
all: helpview hhp2cached ifacecheck screenshotgen wxrc
|
||||
|
||||
install: install_execmon install_ifacecheck install_screenshotgen install_wxrc
|
||||
install: install_ifacecheck install_screenshotgen install_wxrc
|
||||
|
||||
uninstall: uninstall_execmon uninstall_ifacecheck uninstall_screenshotgen uninstall_wxrc
|
||||
uninstall: uninstall_ifacecheck uninstall_screenshotgen uninstall_wxrc
|
||||
|
||||
install-strip: install install-strip_execmon install-strip_ifacecheck install-strip_screenshotgen install-strip_wxrc
|
||||
install-strip: install install-strip_ifacecheck install-strip_screenshotgen install-strip_wxrc
|
||||
|
||||
clean:
|
||||
rm -rf ./.deps ./.pch
|
||||
rm -f ./*.o
|
||||
-(cd emulator/src && $(MAKE) clean)
|
||||
-(cd execmon && $(MAKE) clean)
|
||||
-(cd helpview/src && $(MAKE) clean)
|
||||
-(cd hhp2cached && $(MAKE) clean)
|
||||
-(cd ifacecheck/src && $(MAKE) clean)
|
||||
|
|
@ -42,29 +40,12 @@ clean:
|
|||
|
||||
distclean: clean
|
||||
rm -f config.cache config.log config.status bk-deps bk-make-pch Makefile
|
||||
-(cd emulator/src && $(MAKE) distclean)
|
||||
-(cd execmon && $(MAKE) distclean)
|
||||
-(cd helpview/src && $(MAKE) distclean)
|
||||
-(cd hhp2cached && $(MAKE) distclean)
|
||||
-(cd ifacecheck/src && $(MAKE) distclean)
|
||||
-(cd screenshotgen/src && $(MAKE) distclean)
|
||||
-(cd wxrc && $(MAKE) distclean)
|
||||
|
||||
emulator:
|
||||
(cd emulator/src && $(MAKE) all)
|
||||
|
||||
execmon:
|
||||
(cd execmon && $(MAKE) all)
|
||||
|
||||
install_execmon:
|
||||
(cd execmon && $(MAKE) install)
|
||||
|
||||
uninstall_execmon:
|
||||
(cd execmon && $(MAKE) uninstall)
|
||||
|
||||
install-strip_execmon:
|
||||
(cd execmon && $(MAKE) install-strip)
|
||||
|
||||
helpview:
|
||||
(cd helpview/src && $(MAKE) all)
|
||||
|
||||
|
|
@ -111,8 +92,7 @@ install-strip_wxrc:
|
|||
# Include dependency info, if present:
|
||||
@IF_GNU_MAKE@-include ./.deps/*.d
|
||||
|
||||
.PHONY: all install uninstall clean distclean emulator execmon install_execmon \
|
||||
uninstall_execmon install-strip_execmon helpview hhp2cached ifacecheck \
|
||||
.PHONY: all install uninstall clean distclean helpview hhp2cached ifacecheck \
|
||||
install_ifacecheck uninstall_ifacecheck install-strip_ifacecheck \
|
||||
screenshotgen install_screenshotgen uninstall_screenshotgen \
|
||||
install-strip_screenshotgen wxrc install_wxrc uninstall_wxrc \
|
||||
|
|
|
|||
|
|
@ -1,7 +0,0 @@
|
|||
|
||||
all:
|
||||
cd src; $(MAKE)
|
||||
|
||||
clean:
|
||||
cd src; $(MAKE) clean
|
||||
|
||||
|
Before Width: | Height: | Size: 126 KiB |
|
Before Width: | Height: | Size: 69 KiB |
|
|
@ -1,95 +0,0 @@
|
|||
wxWidgets PDA/Embedded System Emulator
|
||||
======================================
|
||||
|
||||
This is a simple display emulator for embedded
|
||||
applications (wxWidgets or other) that use
|
||||
an X server. The Familiar Linux distribution
|
||||
is one such environment, using Tiny-X.
|
||||
|
||||
wxEmulator uses Xnest, which is the XFree86
|
||||
X server compiled to show a virtual X desktop
|
||||
in a window. wxEmulator hijacks the Xnest
|
||||
window by reparenting its window, and shows
|
||||
this window with appropriate PDA-style decorations
|
||||
surrounding it.
|
||||
|
||||
No real emulation is done, apart from the work
|
||||
that Xnest does. You compile your apps on your
|
||||
host as usual and test them out with the emulator
|
||||
to get an idea of the constraints of the embedded
|
||||
system display. Then compile the apps for your
|
||||
target system with a suitable cross-compiler,
|
||||
or if you have the luxury of lots of space on
|
||||
your target device, compile natively on the
|
||||
target.
|
||||
|
||||
It is intended to create a tarball of the
|
||||
emulator, wxX11 and maybe some other useful
|
||||
components such as a simple window manager so that
|
||||
people can quickly start developing embedded
|
||||
GUI applications without the need for actual
|
||||
target hardware.
|
||||
|
||||
Running wxEmulator
|
||||
==================
|
||||
|
||||
Make sure Xnest is in your PATH. You can download
|
||||
a binary from the XFree86 ftp server or a mirror,
|
||||
or you can compile Xnest from source -- but this
|
||||
downloading XFree86 source in its entirety and
|
||||
compiling it. Say goodbye to half a gig of disk
|
||||
space if you take this option.
|
||||
|
||||
Then run wxEmulator:
|
||||
|
||||
% emulator &
|
||||
|
||||
or
|
||||
|
||||
% emulator mydevice.wxe &
|
||||
|
||||
to specify a configuration file. Run emulator --help
|
||||
to show what options are available, such as --use-display
|
||||
for specifying a display other than :100.
|
||||
|
||||
After a brief flicker in which wxEmulator steals
|
||||
Xnest's window, you should see an emulated iPAQ with
|
||||
a checked screen that indicates raw X with nothing else
|
||||
running.
|
||||
|
||||
Running any X applications with the Xnest display
|
||||
number (currently 100) will show those applications
|
||||
in the emulator window instead of the normal desktop.
|
||||
|
||||
For example:
|
||||
|
||||
% xeyes -display :100 &
|
||||
|
||||
Before running any other programs, run a window
|
||||
manager such as twm:
|
||||
|
||||
% twm -display :100 &
|
||||
|
||||
If the X program or WM you want to run doesn't support the
|
||||
-display argument, try exporting the DISPLAY variable
|
||||
before running it. E.g.:
|
||||
|
||||
% export DISPLAY=:100
|
||||
% xterm &
|
||||
|
||||
For details on the configuration file format, please
|
||||
see default.wxe. Eventually it will support
|
||||
device buttons.
|
||||
|
||||
Compiling wxEmulator
|
||||
====================
|
||||
|
||||
You need to use wxX11 -- no other port is supported.
|
||||
Configure and make wxX11 in the usual way (see docs/x11/install.txt
|
||||
at the wxWidgets top level), then compile wxEmulator
|
||||
using the makefile that configure created.
|
||||
|
||||
Have fun!
|
||||
|
||||
Julian Smart, March 2002
|
||||
|
||||
|
Before Width: | Height: | Size: 39 KiB |
|
Before Width: | Height: | Size: 19 KiB |
|
|
@ -1,161 +0,0 @@
|
|||
# =========================================================================
|
||||
# This makefile was generated by
|
||||
# Bakefile 0.2.13 (http://www.bakefile.org)
|
||||
# Do not modify, all changes will be overwritten!
|
||||
# =========================================================================
|
||||
|
||||
|
||||
@MAKE_SET@
|
||||
|
||||
prefix = @prefix@
|
||||
exec_prefix = @exec_prefix@
|
||||
datarootdir = @datarootdir@
|
||||
INSTALL = @INSTALL@
|
||||
EXEEXT = @EXEEXT@
|
||||
WINDRES = @WINDRES@
|
||||
NM = @NM@
|
||||
BK_DEPS = @BK_DEPS@
|
||||
srcdir = @srcdir@
|
||||
top_srcdir = @top_srcdir@
|
||||
LIBS = @LIBS@
|
||||
LDFLAGS_GUI = @LDFLAGS_GUI@
|
||||
CXX = @CXX@
|
||||
CXXFLAGS = @CXXFLAGS@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
USE_DPI_AWARE_MANIFEST = @USE_DPI_AWARE_MANIFEST@
|
||||
WX_LIB_FLAVOUR = @WX_LIB_FLAVOUR@
|
||||
TOOLKIT = @TOOLKIT@
|
||||
TOOLKIT_LOWERCASE = @TOOLKIT_LOWERCASE@
|
||||
TOOLKIT_VERSION = @TOOLKIT_VERSION@
|
||||
TOOLCHAIN_FULLNAME = @TOOLCHAIN_FULLNAME@
|
||||
EXTRALIBS = @EXTRALIBS@
|
||||
EXTRALIBS_XML = @EXTRALIBS_XML@
|
||||
EXTRALIBS_GUI = @EXTRALIBS_GUI@
|
||||
WX_CPPFLAGS = @WX_CPPFLAGS@
|
||||
WX_CXXFLAGS = @WX_CXXFLAGS@
|
||||
WX_LDFLAGS = @WX_LDFLAGS@
|
||||
HOST_SUFFIX = @HOST_SUFFIX@
|
||||
wx_top_builddir = @wx_top_builddir@
|
||||
|
||||
### Variables: ###
|
||||
|
||||
DESTDIR =
|
||||
WX_RELEASE = 3.3
|
||||
LIBDIRNAME = $(wx_top_builddir)/lib
|
||||
WXEMULATOR_CXXFLAGS = $(WX_CPPFLAGS) -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \
|
||||
$(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \
|
||||
$(__THREAD_DEFINE_p) -I$(srcdir) $(__DLLFLAG_p) \
|
||||
-I$(srcdir)/../../../samples $(WX_CXXFLAGS) $(CPPFLAGS) $(CXXFLAGS)
|
||||
WXEMULATOR_OBJECTS = \
|
||||
$(__wxemulator___win32rc) \
|
||||
wxemulator_emulator.o
|
||||
|
||||
### Conditionally set variables: ###
|
||||
|
||||
@COND_DEPS_TRACKING_0@CXXC = $(CXX)
|
||||
@COND_DEPS_TRACKING_1@CXXC = $(BK_DEPS) $(CXX)
|
||||
@COND_USE_GUI_0@PORTNAME = base
|
||||
@COND_USE_GUI_1@PORTNAME = $(TOOLKIT_LOWERCASE)$(TOOLKIT_VERSION)
|
||||
@COND_TOOLKIT_MAC@WXBASEPORT = _carbon
|
||||
@COND_BUILD_debug@WXDEBUGFLAG = d
|
||||
@COND_WXUNIV_1@WXUNIVNAME = univ
|
||||
@COND_MONOLITHIC_0@EXTRALIBS_FOR_BASE = $(EXTRALIBS)
|
||||
@COND_MONOLITHIC_1@EXTRALIBS_FOR_BASE = $(EXTRALIBS) \
|
||||
@COND_MONOLITHIC_1@ $(EXTRALIBS_XML) $(EXTRALIBS_GUI)
|
||||
@COND_MONOLITHIC_0@EXTRALIBS_FOR_GUI = $(EXTRALIBS_GUI)
|
||||
@COND_MONOLITHIC_1@EXTRALIBS_FOR_GUI =
|
||||
@COND_WXUNIV_1@__WXUNIV_DEFINE_p = -D__WXUNIVERSAL__
|
||||
@COND_WXUNIV_1@__WXUNIV_DEFINE_p_1 = --define __WXUNIVERSAL__
|
||||
@COND_DEBUG_FLAG_0@__DEBUG_DEFINE_p = -DwxDEBUG_LEVEL=0
|
||||
@COND_DEBUG_FLAG_0@__DEBUG_DEFINE_p_1 = --define wxDEBUG_LEVEL=0
|
||||
@COND_USE_EXCEPTIONS_0@__EXCEPTIONS_DEFINE_p = -DwxNO_EXCEPTIONS
|
||||
@COND_USE_EXCEPTIONS_0@__EXCEPTIONS_DEFINE_p_1 = --define wxNO_EXCEPTIONS
|
||||
@COND_USE_RTTI_0@__RTTI_DEFINE_p = -DwxNO_RTTI
|
||||
@COND_USE_RTTI_0@__RTTI_DEFINE_p_1 = --define wxNO_RTTI
|
||||
@COND_USE_THREADS_0@__THREAD_DEFINE_p = -DwxNO_THREADS
|
||||
@COND_USE_THREADS_0@__THREAD_DEFINE_p_1 = --define wxNO_THREADS
|
||||
@COND_SHARED_1@__DLLFLAG_p = -DWXUSINGDLL
|
||||
@COND_SHARED_1@__DLLFLAG_p_1 = --define WXUSINGDLL
|
||||
@COND_PLATFORM_WIN32_1@__WIN32_DPI_MANIFEST_p = \
|
||||
@COND_PLATFORM_WIN32_1@ --define \
|
||||
@COND_PLATFORM_WIN32_1@ wxUSE_DPI_AWARE_MANIFEST=$(USE_DPI_AWARE_MANIFEST)
|
||||
COND_PLATFORM_OS2_1___wxemulator___os2_emxbindcmd = $(NM) wxemulator$(EXEEXT) \
|
||||
| if grep -q pmwin.763 ; then emxbind -ep wxemulator$(EXEEXT) ; fi
|
||||
@COND_PLATFORM_OS2_1@__wxemulator___os2_emxbindcmd = $(COND_PLATFORM_OS2_1___wxemulator___os2_emxbindcmd)
|
||||
@COND_TOOLKIT_MSW@__RCDEFDIR_p = --include-dir \
|
||||
@COND_TOOLKIT_MSW@ $(LIBDIRNAME)/wx/include/$(TOOLCHAIN_FULLNAME)
|
||||
@COND_PLATFORM_WIN32_1@__wxemulator___win32rc = wxemulator_sample_rc.o
|
||||
COND_MONOLITHIC_0___WXLIB_CORE_p = \
|
||||
-lwx_$(PORTNAME)$(WXUNIVNAME)u$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core-$(WX_RELEASE)$(HOST_SUFFIX)
|
||||
@COND_MONOLITHIC_0@__WXLIB_CORE_p = $(COND_MONOLITHIC_0___WXLIB_CORE_p)
|
||||
COND_MONOLITHIC_0___WXLIB_BASE_p = \
|
||||
-lwx_base$(WXBASEPORT)u$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
|
||||
@COND_MONOLITHIC_0@__WXLIB_BASE_p = $(COND_MONOLITHIC_0___WXLIB_BASE_p)
|
||||
COND_MONOLITHIC_1___WXLIB_MONO_p = \
|
||||
-lwx_$(PORTNAME)$(WXUNIVNAME)u$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
|
||||
@COND_MONOLITHIC_1@__WXLIB_MONO_p = $(COND_MONOLITHIC_1___WXLIB_MONO_p)
|
||||
@COND_MONOLITHIC_1_USE_STC_1@__LIB_SCINTILLA_IF_MONO_p \
|
||||
@COND_MONOLITHIC_1_USE_STC_1@ = \
|
||||
@COND_MONOLITHIC_1_USE_STC_1@ -lwxscintilla$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
|
||||
@COND_USE_GUI_1_wxUSE_LIBTIFF_builtin@__LIB_TIFF_p \
|
||||
@COND_USE_GUI_1_wxUSE_LIBTIFF_builtin@ = \
|
||||
@COND_USE_GUI_1_wxUSE_LIBTIFF_builtin@ -lwxtiff$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
|
||||
@COND_USE_GUI_1_wxUSE_LIBJPEG_builtin@__LIB_JPEG_p \
|
||||
@COND_USE_GUI_1_wxUSE_LIBJPEG_builtin@ = \
|
||||
@COND_USE_GUI_1_wxUSE_LIBJPEG_builtin@ -lwxjpeg$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
|
||||
@COND_USE_GUI_1_wxUSE_LIBPNG_builtin@__LIB_PNG_p \
|
||||
@COND_USE_GUI_1_wxUSE_LIBPNG_builtin@ = \
|
||||
@COND_USE_GUI_1_wxUSE_LIBPNG_builtin@ -lwxpng$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
|
||||
@COND_wxUSE_ZLIB_builtin@__LIB_ZLIB_p = \
|
||||
@COND_wxUSE_ZLIB_builtin@ -lwxzlib$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
|
||||
@COND_wxUSE_REGEX_builtin@__LIB_REGEX_p = \
|
||||
@COND_wxUSE_REGEX_builtin@ -lwxregexu$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
|
||||
@COND_wxUSE_EXPAT_builtin@__LIB_EXPAT_p = \
|
||||
@COND_wxUSE_EXPAT_builtin@ -lwxexpat$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
|
||||
|
||||
### Targets: ###
|
||||
|
||||
all: wxemulator$(EXEEXT) data
|
||||
|
||||
install:
|
||||
|
||||
uninstall:
|
||||
|
||||
install-strip: install
|
||||
|
||||
clean:
|
||||
rm -rf ./.deps ./.pch
|
||||
rm -f ./*.o
|
||||
rm -f wxemulator$(EXEEXT)
|
||||
|
||||
distclean: clean
|
||||
rm -f config.cache config.log config.status bk-deps bk-make-pch Makefile
|
||||
|
||||
wxemulator$(EXEEXT): $(WXEMULATOR_OBJECTS) $(__wxemulator___win32rc)
|
||||
$(CXX) -o $@ $(WXEMULATOR_OBJECTS) -L$(LIBDIRNAME) $(LDFLAGS_GUI) $(LDFLAGS) $(WX_LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) $(EXTRALIBS_FOR_GUI) $(__LIB_ZLIB_p) $(__LIB_REGEX_p) $(__LIB_EXPAT_p) $(EXTRALIBS_FOR_BASE) $(LIBS)
|
||||
$(__wxemulator___os2_emxbindcmd)
|
||||
|
||||
data:
|
||||
@mkdir -p .
|
||||
@for f in default.wxe ipaq.wxe bluegradient.jpg ipaq01.jpg; do \
|
||||
if test ! -f ./$$f -a ! -d ./$$f ; \
|
||||
then x=yep ; \
|
||||
else x=`find $(srcdir)/$$f -newer ./$$f -print` ; \
|
||||
fi; \
|
||||
case "$$x" in ?*) \
|
||||
cp -pRf $(srcdir)/$$f . ;; \
|
||||
esac; \
|
||||
done
|
||||
|
||||
wxemulator_sample_rc.o: $(srcdir)/../../../samples/sample.rc
|
||||
$(WINDRES) -i$< -o$@ --define __WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) --include-dir $(srcdir) $(__DLLFLAG_p_1) $(__WIN32_DPI_MANIFEST_p) --include-dir $(srcdir)/../../../samples $(__RCDEFDIR_p) --include-dir $(top_srcdir)/include
|
||||
|
||||
wxemulator_emulator.o: $(srcdir)/emulator.cpp
|
||||
$(CXXC) -c -o $@ $(WXEMULATOR_CXXFLAGS) $(srcdir)/emulator.cpp
|
||||
|
||||
|
||||
# Include dependency info, if present:
|
||||
@IF_GNU_MAKE@-include ./.deps/*.d
|
||||
|
||||
.PHONY: all install uninstall clean distclean data
|
||||
|
Before Width: | Height: | Size: 2.4 KiB |
|
|
@ -1,33 +0,0 @@
|
|||
# Default emulator config file
|
||||
|
||||
[General]
|
||||
|
||||
# The title of the emulator
|
||||
title = "Default Emulator"
|
||||
|
||||
# An optional description
|
||||
description = "Basic emulator"
|
||||
|
||||
# The top-left of the virtual screen relative
|
||||
# to the background bitmap
|
||||
screenX = 10
|
||||
screenY = 10
|
||||
|
||||
# The size of the virtual screen
|
||||
screenWidth = 240
|
||||
screenHeight = 320
|
||||
|
||||
# The size of the overall device -
|
||||
# only necessary if not specifying a background
|
||||
# bitmap
|
||||
deviceWidth = 260
|
||||
deviceHeight = 340
|
||||
|
||||
# The main bitmap representing the device.
|
||||
# You can use PNG, JPG, TIFF, BMP, XPM, GIF
|
||||
backgroundBitmap = "bluegradient.jpg"
|
||||
|
||||
# Hex string for RGB background colour. You can
|
||||
# also use the name 'backgroundColor'
|
||||
backgroundColour = "008080"
|
||||
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
<?xml version="1.0" ?>
|
||||
|
||||
<makefile>
|
||||
|
||||
<include file="../../../build/bakefiles/common_samples.bkl"/>
|
||||
|
||||
<exe id="wxemulator" template="wx_util" template_append="wx_append">
|
||||
<sources>
|
||||
emulator.cpp
|
||||
</sources>
|
||||
<wx-lib>core</wx-lib>
|
||||
<wx-lib>base</wx-lib>
|
||||
</exe>
|
||||
|
||||
<wx-data id="data">
|
||||
<files>
|
||||
default.wxe
|
||||
ipaq.wxe
|
||||
bluegradient.jpg
|
||||
ipaq01.jpg
|
||||
</files>
|
||||
</wx-data>
|
||||
|
||||
</makefile>
|
||||
|
Before Width: | Height: | Size: 630 B |
|
|
@ -1,604 +0,0 @@
|
|||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: emulator.cpp
|
||||
// Purpose: Emulator wxWidgets sample
|
||||
// Author: Julian Smart
|
||||
// Modified by:
|
||||
// Created: 04/01/98
|
||||
// Copyright: (c) Julian Smart
|
||||
// Licence: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// ============================================================================
|
||||
// declarations
|
||||
// ============================================================================
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// headers
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// For compilers that support precompilation, includes "wx/wx.h".
|
||||
#include "wx/wxprec.h"
|
||||
|
||||
|
||||
// for all others, include the necessary headers (this file is usually all you
|
||||
// need because it includes almost all "standard" wxWidgets headers)
|
||||
#ifndef WX_PRECOMP
|
||||
#include "wx/wx.h"
|
||||
#endif
|
||||
|
||||
#include "wx/confbase.h"
|
||||
#include "wx/fileconf.h"
|
||||
#include "wx/cmdline.h"
|
||||
#include "wx/image.h"
|
||||
#include "wx/file.h"
|
||||
#include "wx/filename.h"
|
||||
|
||||
#ifdef __WXX11__
|
||||
#include "wx/x11/reparent.h"
|
||||
#endif
|
||||
|
||||
#include "emulator.h"
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// resources
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// the application icon (under Windows it is in resources)
|
||||
#ifndef wxHAS_IMAGES_IN_RESOURCES
|
||||
#include "emulator.xpm"
|
||||
#endif
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// event tables and other macros for wxWidgets
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// the event tables connect the wxWidgets events with the functions (event
|
||||
// handlers) which process them. It can be also done at run-time, but for the
|
||||
// simple menu events like this the static method is much simpler.
|
||||
wxBEGIN_EVENT_TABLE(wxEmulatorFrame, wxFrame)
|
||||
EVT_MENU(Emulator_Quit, wxEmulatorFrame::OnQuit)
|
||||
EVT_MENU(Emulator_About, wxEmulatorFrame::OnAbout)
|
||||
EVT_CLOSE(wxEmulatorFrame::OnCloseWindow)
|
||||
wxEND_EVENT_TABLE()
|
||||
|
||||
// Create a new application object: this macro will allow wxWidgets to create
|
||||
// the application object during program execution (it's better than using a
|
||||
// static object for many reasons) and also declares the accessor function
|
||||
// wxGetApp() which will return the reference of the right type (i.e. wxEmulatorApp and
|
||||
// not wxApp)
|
||||
wxIMPLEMENT_APP(wxEmulatorApp);
|
||||
|
||||
static const wxCmdLineEntryDesc sg_cmdLineDesc[] =
|
||||
{
|
||||
{ wxCMD_LINE_OPTION, "u", "use-display", "display number to use (default 100)" },
|
||||
|
||||
{ wxCMD_LINE_SWITCH, "h", "help", "displays help on the command line parameters" },
|
||||
{ wxCMD_LINE_SWITCH, "v", "version", "print version" },
|
||||
|
||||
{ wxCMD_LINE_PARAM, nullptr, nullptr, "config file 1", wxCMD_LINE_VAL_STRING, wxCMD_LINE_PARAM_OPTIONAL },
|
||||
|
||||
wxCMD_LINE_DESC_END
|
||||
};
|
||||
|
||||
|
||||
// ============================================================================
|
||||
// implementation
|
||||
// ============================================================================
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// the application class
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
wxEmulatorApp::wxEmulatorApp()
|
||||
{
|
||||
m_xnestWindow = nullptr;
|
||||
m_containerWindow = nullptr;
|
||||
m_displayNumber = wxT("100");
|
||||
m_xnestPID = 0;
|
||||
|
||||
}
|
||||
|
||||
// 'Main program' equivalent: the program execution "starts" here
|
||||
bool wxEmulatorApp::OnInit()
|
||||
{
|
||||
#if wxUSE_LOG
|
||||
wxLog::DisableTimestamp();
|
||||
#endif // wxUSE_LOG
|
||||
wxInitAllImageHandlers();
|
||||
|
||||
wxString currentDir = wxGetCwd();
|
||||
|
||||
// Use argv to get current app directory
|
||||
m_appDir = wxFindAppPath(argv[0], currentDir, wxT("WXEMUDIR"));
|
||||
|
||||
// If the development version, go up a directory.
|
||||
#ifdef __WXMSW__
|
||||
if ((m_appDir.Right(5).CmpNoCase(wxT("DEBUG")) == 0) ||
|
||||
(m_appDir.Right(11).CmpNoCase(wxT("DEBUGSTABLE")) == 0) ||
|
||||
(m_appDir.Right(7).CmpNoCase(wxT("RELEASE")) == 0) ||
|
||||
(m_appDir.Right(13).CmpNoCase(wxT("RELEASESTABLE")) == 0)
|
||||
)
|
||||
m_appDir = wxPathOnly(m_appDir);
|
||||
#endif
|
||||
|
||||
// Parse the command-line parameters and options
|
||||
wxCmdLineParser parser(sg_cmdLineDesc, argc, argv);
|
||||
int res;
|
||||
{
|
||||
wxLogNull log;
|
||||
res = parser.Parse();
|
||||
}
|
||||
if (res == -1 || res > 0 || parser.Found(wxT("h")))
|
||||
{
|
||||
#ifdef __X__
|
||||
wxLog::SetActiveTarget(new wxLogStderr);
|
||||
#endif
|
||||
parser.Usage();
|
||||
return false;
|
||||
}
|
||||
if (parser.Found(wxT("v")))
|
||||
{
|
||||
#ifdef __X__
|
||||
wxLog::SetActiveTarget(new wxLogStderr);
|
||||
#endif
|
||||
wxString msg;
|
||||
msg.Printf(wxT("wxWidgets PDA Emulator (c) Julian Smart, 2002 Version %.2f, %s"), wxEMULATOR_VERSION, __DATE__);
|
||||
wxLogMessage(msg);
|
||||
return false;
|
||||
}
|
||||
if (parser.Found(wxT("u"), & m_displayNumber))
|
||||
{
|
||||
// Should only be number, so strip out anything before
|
||||
// and including a : character
|
||||
if (m_displayNumber.Find(wxT(':')) != -1)
|
||||
{
|
||||
m_displayNumber = m_displayNumber.AfterFirst(wxT(':'));
|
||||
}
|
||||
}
|
||||
if (parser.GetParamCount() == 0)
|
||||
{
|
||||
m_emulatorInfo.m_emulatorFilename = wxT("default.wxe");
|
||||
}
|
||||
else if (parser.GetParamCount() > 0)
|
||||
{
|
||||
m_emulatorInfo.m_emulatorFilename = parser.GetParam(0);
|
||||
}
|
||||
|
||||
// Load the emulation info
|
||||
if (!LoadEmulator(m_appDir))
|
||||
{
|
||||
//wxMessageBox(wxT("Sorry, could not load this emulator. Please check bitmaps are valid."));
|
||||
return false;
|
||||
}
|
||||
|
||||
// create the main application window
|
||||
wxEmulatorFrame *frame = new wxEmulatorFrame(wxT("wxEmulator"),
|
||||
wxPoint(50, 50), wxSize(450, 340));
|
||||
|
||||
#if wxUSE_STATUSBAR
|
||||
frame->SetStatusText(m_emulatorInfo.m_emulatorTitle, 0);
|
||||
|
||||
wxString sizeStr;
|
||||
sizeStr.Printf(wxT("Screen: %dx%d"), (int) m_emulatorInfo.m_emulatorScreenSize.x,
|
||||
(int) m_emulatorInfo.m_emulatorScreenSize.y);
|
||||
frame->SetStatusText(sizeStr, 1);
|
||||
#endif // wxUSE_STATUSBAR
|
||||
|
||||
m_containerWindow = new wxEmulatorContainer(frame, wxID_ANY);
|
||||
|
||||
frame->SetClientSize(m_emulatorInfo.m_emulatorDeviceSize.x,
|
||||
m_emulatorInfo.m_emulatorDeviceSize.y);
|
||||
|
||||
// and show it (the frames, unlike simple controls, are not shown when
|
||||
// created initially)
|
||||
frame->Show(true);
|
||||
|
||||
#ifdef __WXX11__
|
||||
m_xnestWindow = new wxAdoptedWindow;
|
||||
|
||||
wxString cmd;
|
||||
cmd.Printf(wxT("Xnest :%s -geometry %dx%d"),
|
||||
m_displayNumber.c_str(),
|
||||
(int) m_emulatorInfo.m_emulatorScreenSize.x,
|
||||
(int) m_emulatorInfo.m_emulatorScreenSize.y);
|
||||
|
||||
// Asynchronously executes Xnest
|
||||
m_xnestPID = wxExecute(cmd);
|
||||
if (0 == m_xnestPID)
|
||||
{
|
||||
frame->Destroy();
|
||||
wxMessageBox(wxT("Sorry, could not run Xnest. Please check your PATH."));
|
||||
return false;
|
||||
}
|
||||
|
||||
wxReparenter reparenter;
|
||||
if (!reparenter.WaitAndReparent(m_containerWindow, m_xnestWindow, wxT("Xnest")))
|
||||
{
|
||||
wxMessageBox(wxT("Sorry, could not reparent Xnest.."));
|
||||
frame->Destroy();
|
||||
return false;
|
||||
}
|
||||
|
||||
#endif
|
||||
m_containerWindow->DoResize();
|
||||
|
||||
// success: wxApp::OnRun() will be called which will enter the main message
|
||||
// loop and the application will run. If we returned false here, the
|
||||
// application would exit immediately.
|
||||
return true;
|
||||
}
|
||||
|
||||
// Prepend the current program directory to the name
|
||||
wxString wxEmulatorApp::GetFullAppPath(const wxString& filename) const
|
||||
{
|
||||
wxString path(m_appDir);
|
||||
if (path.Last() != '\\' && path.Last() != '/' && filename[0] != '\\' && filename[0] != '/')
|
||||
#ifdef __X__
|
||||
path += '/';
|
||||
#else
|
||||
path += '\\';
|
||||
#endif
|
||||
path += filename;
|
||||
|
||||
return path;
|
||||
}
|
||||
|
||||
|
||||
// Load the specified emulator.
|
||||
// For now, hard-wired. TODO: make this configurable
|
||||
bool wxEmulatorApp::LoadEmulator(const wxString& appDir)
|
||||
{
|
||||
// Load config file and bitmaps
|
||||
return m_emulatorInfo.Load(appDir);
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// main frame
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// frame constructor
|
||||
wxEmulatorFrame::wxEmulatorFrame(const wxString& title,
|
||||
const wxPoint& pos, const wxSize& size)
|
||||
: wxFrame(nullptr, wxID_ANY, title, pos, size)
|
||||
{
|
||||
// set the frame icon
|
||||
SetIcon(wxICON(emulator));
|
||||
|
||||
#if wxUSE_MENUS
|
||||
// create a menu bar
|
||||
wxMenu *menuFile = new wxMenu;
|
||||
|
||||
// the "About" item should be in the help menu
|
||||
wxMenu *helpMenu = new wxMenu;
|
||||
helpMenu->Append(Emulator_About, wxT("&About\tF1"), wxT("Show about dialog"));
|
||||
|
||||
menuFile->Append(Emulator_Quit, wxT("E&xit\tAlt-X"), wxT("Quit this program"));
|
||||
|
||||
// now append the freshly created menu to the menu bar...
|
||||
wxMenuBar *menuBar = new wxMenuBar();
|
||||
menuBar->Append(menuFile, wxT("&File"));
|
||||
menuBar->Append(helpMenu, wxT("&Help"));
|
||||
|
||||
// ... and attach this menu bar to the frame
|
||||
SetMenuBar(menuBar);
|
||||
#endif // wxUSE_MENUS
|
||||
|
||||
#if wxUSE_STATUSBAR
|
||||
// create a status bar just for fun (by default with 1 pane only)
|
||||
CreateStatusBar(2);
|
||||
#endif // wxUSE_STATUSBAR
|
||||
}
|
||||
|
||||
|
||||
// event handlers
|
||||
|
||||
void wxEmulatorFrame::OnQuit(wxCommandEvent& WXUNUSED(event))
|
||||
{
|
||||
// true is to force the frame to close
|
||||
Close(true);
|
||||
}
|
||||
|
||||
void wxEmulatorFrame::OnAbout(wxCommandEvent& WXUNUSED(event))
|
||||
{
|
||||
wxString msg;
|
||||
msg.Printf( wxT("wxEmulator is an environment for testing embedded X11 apps.\n"));
|
||||
|
||||
wxMessageBox(msg, wxT("About wxEmulator"), wxOK | wxICON_INFORMATION, this);
|
||||
}
|
||||
|
||||
void wxEmulatorFrame::OnCloseWindow(wxCloseEvent& WXUNUSED(event))
|
||||
{
|
||||
#ifdef __WXX11__
|
||||
if (wxGetApp().m_xnestWindow)
|
||||
{
|
||||
wxGetApp().m_xnestWindow->SetHandle((WXWindow) nullptr);
|
||||
}
|
||||
#endif
|
||||
this->Destroy();
|
||||
if (wxGetApp().m_xnestPID > 0)
|
||||
{
|
||||
wxKill(wxGetApp().m_xnestPID);
|
||||
wxGetApp().m_xnestPID = 0;
|
||||
}
|
||||
}
|
||||
|
||||
wxIMPLEMENT_CLASS(wxEmulatorContainer, wxWindow);
|
||||
|
||||
wxBEGIN_EVENT_TABLE(wxEmulatorContainer, wxWindow)
|
||||
EVT_SIZE(wxEmulatorContainer::OnSize)
|
||||
EVT_PAINT(wxEmulatorContainer::OnPaint)
|
||||
EVT_ERASE_BACKGROUND(wxEmulatorContainer::OnEraseBackground)
|
||||
wxEND_EVENT_TABLE()
|
||||
|
||||
wxEmulatorContainer::wxEmulatorContainer(wxWindow* parent, wxWindowID id):
|
||||
wxWindow(parent, id, wxDefaultPosition, wxDefaultSize)
|
||||
{
|
||||
}
|
||||
|
||||
void wxEmulatorContainer::OnSize(wxSizeEvent& WXUNUSED(event))
|
||||
{
|
||||
DoResize();
|
||||
}
|
||||
|
||||
void wxEmulatorContainer::DoResize()
|
||||
{
|
||||
wxSize sz = GetClientSize();
|
||||
if (wxGetApp().m_xnestWindow
|
||||
#ifdef __WXX11__
|
||||
&& wxGetApp().m_xnestWindow->X11GetMainWindow()
|
||||
#endif
|
||||
)
|
||||
{
|
||||
int deviceWidth = wxGetApp().m_emulatorInfo.m_emulatorDeviceSize.x;
|
||||
int deviceHeight = wxGetApp().m_emulatorInfo.m_emulatorDeviceSize.y;
|
||||
|
||||
int x = wxMax(0, (int) ((sz.x - deviceWidth)/2.0));
|
||||
int y = wxMax(0, (int) ((sz.y - deviceHeight)/2.0));
|
||||
|
||||
x += wxGetApp().m_emulatorInfo.m_emulatorScreenPosition.x;
|
||||
y += wxGetApp().m_emulatorInfo.m_emulatorScreenPosition.y;
|
||||
|
||||
wxGetApp().m_xnestWindow->Move(x, y);
|
||||
}
|
||||
Refresh();
|
||||
}
|
||||
|
||||
void wxEmulatorContainer::OnPaint(wxPaintEvent& WXUNUSED(event))
|
||||
{
|
||||
wxPaintDC dc(this);
|
||||
|
||||
wxSize sz = GetClientSize();
|
||||
if (wxGetApp().m_emulatorInfo.m_emulatorBackgroundBitmap.IsOk())
|
||||
{
|
||||
int deviceWidth = wxGetApp().m_emulatorInfo.m_emulatorDeviceSize.x;
|
||||
int deviceHeight = wxGetApp().m_emulatorInfo.m_emulatorDeviceSize.y;
|
||||
|
||||
int x = wxMax(0, (int) ((sz.x - deviceWidth)/2.0));
|
||||
int y = wxMax(0, (int) ((sz.y - deviceHeight)/2.0));
|
||||
|
||||
dc.DrawBitmap(wxGetApp().m_emulatorInfo.m_emulatorBackgroundBitmap, x, y);
|
||||
}
|
||||
}
|
||||
|
||||
void wxEmulatorContainer::OnEraseBackground(wxEraseEvent& event)
|
||||
{
|
||||
wxDC* dc wxDUMMY_INITIALIZE(nullptr);
|
||||
|
||||
if (event.GetDC())
|
||||
{
|
||||
dc = event.GetDC();
|
||||
}
|
||||
else
|
||||
{
|
||||
dc = new wxClientDC(this);
|
||||
}
|
||||
|
||||
dc->SetBackground(wxBrush(wxGetApp().m_emulatorInfo.m_emulatorBackgroundColour));
|
||||
dc->Clear();
|
||||
|
||||
if (!event.GetDC())
|
||||
delete dc;
|
||||
}
|
||||
|
||||
// Information about the emulator decorations
|
||||
|
||||
void wxEmulatorInfo::Copy(const wxEmulatorInfo& info)
|
||||
{
|
||||
m_emulatorFilename = info.m_emulatorFilename;
|
||||
m_emulatorTitle = info.m_emulatorTitle;
|
||||
m_emulatorDescription = info.m_emulatorDescription;
|
||||
m_emulatorScreenPosition = info.m_emulatorScreenPosition;
|
||||
m_emulatorScreenSize = info.m_emulatorScreenSize;
|
||||
m_emulatorBackgroundBitmap = info.m_emulatorBackgroundBitmap;
|
||||
m_emulatorBackgroundBitmapName = info.m_emulatorBackgroundBitmapName;
|
||||
m_emulatorBackgroundColour = info.m_emulatorBackgroundColour;
|
||||
m_emulatorDeviceSize = info.m_emulatorDeviceSize;
|
||||
}
|
||||
|
||||
// Initialisation
|
||||
void wxEmulatorInfo::Init()
|
||||
{
|
||||
m_emulatorDeviceSize = wxSize(260, 340);
|
||||
m_emulatorScreenSize = wxSize(240, 320);
|
||||
}
|
||||
|
||||
// Loads bitmaps
|
||||
bool wxEmulatorInfo::Load(const wxString& appDir)
|
||||
{
|
||||
// Try to find absolute path
|
||||
wxString absoluteConfigPath = m_emulatorFilename;
|
||||
if ( !::wxIsAbsolutePath(absoluteConfigPath) )
|
||||
{
|
||||
wxString currDir = wxGetCwd();
|
||||
absoluteConfigPath = currDir + wxString(wxFILE_SEP_PATH) + m_emulatorFilename;
|
||||
if ( !wxFile::Exists(absoluteConfigPath) )
|
||||
{
|
||||
absoluteConfigPath = appDir + wxString(wxFILE_SEP_PATH)
|
||||
+ m_emulatorFilename;
|
||||
}
|
||||
}
|
||||
|
||||
if ( !wxFile::Exists(absoluteConfigPath) )
|
||||
{
|
||||
wxString str;
|
||||
str.Printf( wxT("Could not find config file %s"),
|
||||
absoluteConfigPath.c_str() );
|
||||
|
||||
wxMessageBox(str);
|
||||
return false;
|
||||
}
|
||||
|
||||
wxString rootPath = wxPathOnly(absoluteConfigPath);
|
||||
|
||||
{
|
||||
wxFileConfig config(wxT("wxEmulator"), wxT("wxWidgets"),
|
||||
absoluteConfigPath, wxEmptyString, wxCONFIG_USE_LOCAL_FILE);
|
||||
|
||||
config.Read(wxT("/General/title"), & m_emulatorTitle);
|
||||
config.Read(wxT("/General/description"), & m_emulatorDescription);
|
||||
config.Read(wxT("/General/backgroundBitmap"), & m_emulatorBackgroundBitmapName);
|
||||
|
||||
wxString colString;
|
||||
if (config.Read(wxT("/General/backgroundColour"), & colString) ||
|
||||
config.Read(wxT("/General/backgroundColor"), & colString)
|
||||
)
|
||||
{
|
||||
m_emulatorBackgroundColour = wxHexStringToColour(colString);
|
||||
}
|
||||
|
||||
int x = 0, y = 0, w = 0, h = 0, dw = 0, dh = 0;
|
||||
config.Read(wxT("/General/screenX"), & x);
|
||||
config.Read(wxT("/General/screenY"), & y);
|
||||
config.Read(wxT("/General/screenWidth"), & w);
|
||||
config.Read(wxT("/General/screenHeight"), & h);
|
||||
if (config.Read(wxT("/General/deviceWidth"), & dw) && config.Read(wxT("/General/deviceHeight"), & dh))
|
||||
{
|
||||
m_emulatorDeviceSize = wxSize(dw, dh);
|
||||
}
|
||||
|
||||
m_emulatorScreenPosition = wxPoint(x, y);
|
||||
m_emulatorScreenSize = wxSize(w, h);
|
||||
}
|
||||
|
||||
if (!m_emulatorBackgroundBitmapName.empty())
|
||||
{
|
||||
wxString absoluteBackgroundBitmapName = rootPath + wxString(wxFILE_SEP_PATH) + m_emulatorBackgroundBitmapName;
|
||||
if ( !wxFile::Exists(absoluteBackgroundBitmapName) )
|
||||
{
|
||||
wxString str;
|
||||
str.Printf( wxT("Could not find bitmap %s"),
|
||||
absoluteBackgroundBitmapName.c_str() );
|
||||
wxMessageBox(str);
|
||||
return false;
|
||||
}
|
||||
|
||||
wxBitmapType type = wxDetermineImageType(m_emulatorBackgroundBitmapName);
|
||||
if (type == wxBITMAP_TYPE_INVALID)
|
||||
return false;
|
||||
|
||||
if (!m_emulatorBackgroundBitmap.LoadFile(m_emulatorBackgroundBitmapName, type))
|
||||
{
|
||||
wxString str;
|
||||
str.Printf( wxT("Could not load bitmap file %s"),
|
||||
m_emulatorBackgroundBitmapName.c_str() );
|
||||
wxMessageBox(str);
|
||||
return false;
|
||||
}
|
||||
|
||||
m_emulatorDeviceSize = wxSize(m_emulatorBackgroundBitmap.GetWidth(),
|
||||
m_emulatorBackgroundBitmap.GetHeight());
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
// Returns the image type, or -1, determined from the extension.
|
||||
wxBitmapType wxDetermineImageType(const wxString& filename)
|
||||
{
|
||||
wxString path, name, ext;
|
||||
|
||||
wxFileName::SplitPath(filename, & path, & name, & ext);
|
||||
|
||||
ext.MakeLower();
|
||||
if (ext == wxT("jpg") || ext == wxT("jpeg"))
|
||||
return wxBITMAP_TYPE_JPEG;
|
||||
if (ext == wxT("gif"))
|
||||
return wxBITMAP_TYPE_GIF;
|
||||
if (ext == wxT("bmp"))
|
||||
return wxBITMAP_TYPE_BMP;
|
||||
if (ext == wxT("png"))
|
||||
return wxBITMAP_TYPE_PNG;
|
||||
if (ext == wxT("pcx"))
|
||||
return wxBITMAP_TYPE_PCX;
|
||||
if (ext == wxT("tif") || ext == wxT("tiff"))
|
||||
return wxBITMAP_TYPE_TIFF;
|
||||
|
||||
return wxBITMAP_TYPE_INVALID;
|
||||
}
|
||||
|
||||
// Convert a colour to a 6-digit hex string
|
||||
wxString wxColourToHexString(const wxColour& col)
|
||||
{
|
||||
wxString hex;
|
||||
|
||||
hex += wxDecToHex(col.Red());
|
||||
hex += wxDecToHex(col.Green());
|
||||
hex += wxDecToHex(col.Blue());
|
||||
|
||||
return hex;
|
||||
}
|
||||
|
||||
// Convert 6-digit hex string to a colour
|
||||
wxColour wxHexStringToColour(const wxString& hex)
|
||||
{
|
||||
unsigned char r = (unsigned char)wxHexToDec(hex.Mid(0, 2));
|
||||
unsigned char g = (unsigned char)wxHexToDec(hex.Mid(2, 2));
|
||||
unsigned char b = (unsigned char)wxHexToDec(hex.Mid(4, 2));
|
||||
|
||||
return wxColour(r, g, b);
|
||||
}
|
||||
|
||||
// Find the absolute path where this application has been run from.
|
||||
// argv0 is wxTheApp->argv[0]
|
||||
// cwd is the current working directory (at startup)
|
||||
// appVariableName is the name of a variable containing the directory for this app, e.g.
|
||||
// MYAPPDIR. This is checked first.
|
||||
|
||||
wxString wxFindAppPath(const wxString& argv0, const wxString& cwd, const wxString& appVariableName)
|
||||
{
|
||||
wxString str;
|
||||
|
||||
// Try appVariableName
|
||||
if (!appVariableName.empty())
|
||||
{
|
||||
str = wxGetenv(appVariableName);
|
||||
if (!str.empty())
|
||||
return str;
|
||||
}
|
||||
|
||||
if (wxIsAbsolutePath(argv0))
|
||||
return wxPathOnly(argv0);
|
||||
else
|
||||
{
|
||||
// Is it a relative path?
|
||||
wxString currentDir(cwd);
|
||||
if (!wxEndsWithPathSeparator(currentDir))
|
||||
currentDir += wxFILE_SEP_PATH;
|
||||
|
||||
str = currentDir + argv0;
|
||||
if ( wxFile::Exists(str) )
|
||||
return wxPathOnly(str);
|
||||
}
|
||||
|
||||
// OK, it's neither an absolute path nor a relative path.
|
||||
// Search PATH.
|
||||
|
||||
wxPathList pathList;
|
||||
pathList.AddEnvList(wxT("PATH"));
|
||||
str = pathList.FindAbsoluteValidPath(argv0);
|
||||
if (!str.empty())
|
||||
return wxPathOnly(str);
|
||||
|
||||
// Failed
|
||||
return wxEmptyString;
|
||||
}
|
||||
|
||||
|
|
@ -1,163 +0,0 @@
|
|||
///////////////////////////////////////////////////////////////////////////////
|
||||
// Name: emulator.h
|
||||
// Purpose: wxX11-based PDA emulator classes
|
||||
// Author: Julian Smart
|
||||
// Modified by:
|
||||
// Created: 2002-03-10
|
||||
// Copyright: (c) wxWidgets team
|
||||
// Licence: wxWindows licence
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifndef _WX_EMULATOR_H_
|
||||
#define _WX_EMULATOR_H_
|
||||
|
||||
#define wxEMULATOR_VERSION 0.1
|
||||
|
||||
// Information about the emulator decorations
|
||||
class wxEmulatorInfo: public wxObject
|
||||
{
|
||||
public:
|
||||
|
||||
wxEmulatorInfo() { Init(); }
|
||||
wxEmulatorInfo(const wxEmulatorInfo& info) : wxObject() { Init(); Copy(info); }
|
||||
|
||||
void operator= (const wxEmulatorInfo& info) { Copy(info); }
|
||||
void Copy(const wxEmulatorInfo& info);
|
||||
|
||||
// Initialisation
|
||||
void Init();
|
||||
|
||||
// Loads bitmaps
|
||||
bool Load(const wxString& appDir);
|
||||
|
||||
// Emulator config filename
|
||||
wxString m_emulatorFilename;
|
||||
|
||||
// Emulator title
|
||||
wxString m_emulatorTitle;
|
||||
|
||||
// Emulator description
|
||||
wxString m_emulatorDescription;
|
||||
|
||||
// The offset from the top-left of the main emulator
|
||||
// bitmap and the virtual screen (where Xnest is
|
||||
// positioned)
|
||||
wxPoint m_emulatorScreenPosition;
|
||||
|
||||
// The emulated screen size, e.g. 320x240
|
||||
wxSize m_emulatorScreenSize;
|
||||
|
||||
// The emulated device size. This is ignored
|
||||
// if there is a background bitmap
|
||||
wxSize m_emulatorDeviceSize;
|
||||
|
||||
// The bitmap used for drawing the main emulator
|
||||
// decorations
|
||||
wxBitmap m_emulatorBackgroundBitmap;
|
||||
wxString m_emulatorBackgroundBitmapName;
|
||||
|
||||
// The intended background colour (for filling in
|
||||
// areas of the window not covered by the bitmap)
|
||||
wxColour m_emulatorBackgroundColour;
|
||||
|
||||
// TODO: an array of bitmaps and ids for custom buttons
|
||||
};
|
||||
|
||||
// Emulator app class
|
||||
class wxEmulatorContainer;
|
||||
class wxEmulatorApp : public wxApp
|
||||
{
|
||||
public:
|
||||
wxEmulatorApp();
|
||||
virtual bool OnInit();
|
||||
|
||||
// Load the specified emulator
|
||||
bool LoadEmulator(const wxString& appDir);
|
||||
|
||||
// Get app dir
|
||||
wxString GetAppDir() const { return m_appDir; }
|
||||
|
||||
// Prepend the current app program directory to the name
|
||||
wxString GetFullAppPath(const wxString& filename) const;
|
||||
|
||||
public:
|
||||
|
||||
wxEmulatorInfo m_emulatorInfo;
|
||||
#ifdef __WXX11__
|
||||
wxAdoptedWindow* m_xnestWindow;
|
||||
#else
|
||||
wxWindow* m_xnestWindow;
|
||||
#endif
|
||||
wxEmulatorContainer* m_containerWindow;
|
||||
wxString m_appDir;
|
||||
wxString m_displayNumber;
|
||||
long m_xnestPID;
|
||||
};
|
||||
|
||||
// The container for the Xnest window. The decorations
|
||||
// will be drawn on this window.
|
||||
class wxEmulatorContainer: public wxWindow
|
||||
{
|
||||
public:
|
||||
|
||||
wxEmulatorContainer(wxWindow* parent, wxWindowID id);
|
||||
|
||||
void DoResize();
|
||||
|
||||
void OnSize(wxSizeEvent& event);
|
||||
void OnPaint(wxPaintEvent& event);
|
||||
void OnEraseBackground(wxEraseEvent& event);
|
||||
|
||||
wxDECLARE_CLASS(wxEmulatorContainer);
|
||||
wxDECLARE_EVENT_TABLE();
|
||||
|
||||
};
|
||||
|
||||
// Frame class
|
||||
class wxEmulatorFrame : public wxFrame
|
||||
{
|
||||
public:
|
||||
// ctor(s)
|
||||
wxEmulatorFrame(const wxString& title, const wxPoint& pos, const wxSize& size);
|
||||
|
||||
// event handlers
|
||||
void OnQuit(wxCommandEvent& event);
|
||||
void OnAbout(wxCommandEvent& event);
|
||||
void OnCloseWindow(wxCloseEvent& event);
|
||||
|
||||
private:
|
||||
// any class wishing to process wxWidgets events must use this macro
|
||||
wxDECLARE_EVENT_TABLE();
|
||||
};
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// constants
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// IDs for the controls and the menu commands
|
||||
enum
|
||||
{
|
||||
// menu items
|
||||
Emulator_Quit = 1,
|
||||
|
||||
// it is important for the id corresponding to the "About" command to have
|
||||
// this standard value as otherwise it won't be handled properly under Mac
|
||||
// (where it is special and put into the "Apple" menu)
|
||||
Emulator_About = wxID_ABOUT
|
||||
};
|
||||
|
||||
// Returns the image type, or -1, determined from the extension.
|
||||
wxBitmapType wxDetermineImageType(const wxString& filename);
|
||||
|
||||
// Convert a colour to a 6-digit hex string
|
||||
wxString wxColourToHexString(const wxColour& col);
|
||||
|
||||
// Convert 6-digit hex string to a colour
|
||||
wxColour wxHexStringToColour(const wxString& hex);
|
||||
|
||||
// Find the absolute path where this application has been run from.
|
||||
wxString wxFindAppPath(const wxString& argv0, const wxString& cwd, const wxString& appVariableName);
|
||||
|
||||
#endif
|
||||
// _WX_EMULATOR_H_
|
||||
|
||||
|
Before Width: | Height: | Size: 3.6 KiB |
|
|
@ -1,3 +0,0 @@
|
|||
emulator ICON "emulator.ico"
|
||||
#include "wx/msw/wx.rc"
|
||||
|
||||
|
|
@ -1,52 +0,0 @@
|
|||
/* XPM */
|
||||
static const char *const emulator_xpm[] = {
|
||||
"32 32 17 1",
|
||||
"( c #000000",
|
||||
". c #000000",
|
||||
"+ c #008484",
|
||||
"@ c #848484",
|
||||
"# c #A5A5A5",
|
||||
"$ c None",
|
||||
"% c #FFFFF7",
|
||||
"& c #FFFFFF",
|
||||
"* c #FFFFFF",
|
||||
"= c #FFFFFF",
|
||||
"- c #FFFFFF",
|
||||
"; c #FFFFFF",
|
||||
"> c #FFFFFF",
|
||||
", c #FFFFFF",
|
||||
"' c #FFFFFF",
|
||||
") c #FFFFFF",
|
||||
"! c #FFFFFF",
|
||||
"$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$",
|
||||
"$$$%%%%%%%%%%%%%%%%%%%%%%%&@$$$$",
|
||||
"$$$%######################@.$$$$",
|
||||
"$$$%######################@.$$$$",
|
||||
"$$$%##++++++++++++++++++##@.$$$$",
|
||||
"$$$%##++++++++++++++++++##@.$$.$",
|
||||
"$$$%##++++++++++++++++++##@.$&.#",
|
||||
"$$$%##++++++++++++++++++##@.$&.#",
|
||||
"$$$%##++++++++++++++++++##@.$&.#",
|
||||
"$$$%##++++++++++++++++++##@.$&.#",
|
||||
"$$$%##++++++++++++++++++##@.$&.#",
|
||||
"$$$%##++++++++++++++++++##@.$&.#",
|
||||
"$$$%##++++++++++++++++++##@.$&.#",
|
||||
"$$$%##++++++++++++++++++##@.$&.#",
|
||||
"$$$%##++++++++++++++++++##@.$&.#",
|
||||
"$$$%##++++++++++++++++++##@.$&.#",
|
||||
"$$$%##++++++++++++++++++##@.$&.#",
|
||||
"$$$%##++++++++++++++++++##@.$&.#",
|
||||
"$$$%##++++++++++++++++++##@.$&.#",
|
||||
"$$$%##++++++++++++++++++##@.$&.#",
|
||||
"$$$%##++++++++++++++++++##@.$&.#",
|
||||
"$$$%##++++++++++++++++++##@.$&.#",
|
||||
"$$$%##++++++++++++++++++##@.$&.#",
|
||||
"$$$%##++++++++++++++++++##@.$&.#",
|
||||
"$$$%######################@.$&.#",
|
||||
"$$$%######################@.$&.#",
|
||||
"$$$%##@####@##########@###@.$&.#",
|
||||
"$$$%#@@@##@@@########@@@##@.$&.#",
|
||||
"$$$%##@####@##########@###@.$&.#",
|
||||
"$$$%######################@.$&.#",
|
||||
"$$$&@@@@@@@@@@@@@@@@@@@@@@@.$&.#",
|
||||
"$$$@........................$$$$"};
|
||||
|
|
@ -1,33 +0,0 @@
|
|||
# Default emulator config file
|
||||
|
||||
[General]
|
||||
|
||||
# The title of the emulator
|
||||
title = "iPAQ Emulator"
|
||||
|
||||
# An optional description
|
||||
description = "No description yet"
|
||||
|
||||
# The top-left of the virtual screen relative
|
||||
# to the background bitmap
|
||||
screenX = 56
|
||||
screenY = 69
|
||||
|
||||
# The size of the virtual screen
|
||||
screenWidth = 240
|
||||
screenHeight = 320
|
||||
|
||||
# The size of the overall device -
|
||||
# only necessary if not specifying a background
|
||||
# bitmap
|
||||
# deviceWidth = 260
|
||||
# deviceHeight = 340
|
||||
|
||||
# The main bitmap representing the device.
|
||||
# You can use PNG, JPG, TIFF, BMP, XPM, GIF
|
||||
backgroundBitmap = "ipaq01.jpg"
|
||||
|
||||
# Hex string for background colour. You can
|
||||
# also use the name 'backgroundColor'
|
||||
backgroundColour = "000000"
|
||||
|
||||
|
Before Width: | Height: | Size: 20 KiB |
|
|
@ -1,221 +0,0 @@
|
|||
# =========================================================================
|
||||
# This makefile was generated by
|
||||
# Bakefile 0.2.13 (http://www.bakefile.org)
|
||||
# Do not modify, all changes will be overwritten!
|
||||
# =========================================================================
|
||||
|
||||
include ../../../build/msw/config.gcc
|
||||
|
||||
# -------------------------------------------------------------------------
|
||||
# Do not modify the rest of this file!
|
||||
# -------------------------------------------------------------------------
|
||||
|
||||
### Variables: ###
|
||||
|
||||
CPPDEPS = -MT$@ -MF$@.d -MD -MP
|
||||
WX_RELEASE_NODOT = 33
|
||||
COMPILER_PREFIX = gcc
|
||||
OBJS = \
|
||||
$(COMPILER_PREFIX)$(COMPILER_VERSION)_$(PORTNAME)$(WXUNIVNAME)u$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG)
|
||||
LIBDIRNAME = \
|
||||
.\..\..\..\lib\$(COMPILER_PREFIX)$(COMPILER_VERSION)_$(LIBTYPE_SUFFIX)$(CFG)
|
||||
SETUPHDIR = $(LIBDIRNAME)\$(PORTNAME)$(WXUNIVNAME)u$(WXDEBUGFLAG)
|
||||
WXEMULATOR_CXXFLAGS = $(__DEBUGINFO) $(__OPTIMIZEFLAG_2) $(__THREADSFLAG) \
|
||||
-D__WXMSW__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) $(__NDEBUG_DEFINE_p) \
|
||||
$(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \
|
||||
-I$(SETUPHDIR) -I.\..\..\..\include $(____CAIRO_INCLUDEDIR_FILENAMES_p) -W \
|
||||
-Wall -I. $(__DLLFLAG_p) -I.\..\..\..\samples -DNOPCH $(__RTTIFLAG_5) \
|
||||
$(__EXCEPTIONSFLAG_6) -Wno-ctor-dtor-privacy $(CPPFLAGS) $(CXXFLAGS)
|
||||
WXEMULATOR_OBJECTS = \
|
||||
$(OBJS)\wxemulator_sample_rc.o \
|
||||
$(OBJS)\wxemulator_emulator.o
|
||||
|
||||
### Conditionally set variables: ###
|
||||
|
||||
ifeq ($(USE_GUI),0)
|
||||
PORTNAME = base
|
||||
endif
|
||||
ifeq ($(USE_GUI),1)
|
||||
PORTNAME = msw$(TOOLKIT_VERSION)
|
||||
endif
|
||||
ifeq ($(OFFICIAL_BUILD),1)
|
||||
COMPILER_VERSION = ERROR-COMPILER-VERSION-MUST-BE-SET-FOR-OFFICIAL-BUILD
|
||||
endif
|
||||
ifeq ($(BUILD),debug)
|
||||
WXDEBUGFLAG = d
|
||||
endif
|
||||
ifeq ($(WXUNIV),1)
|
||||
WXUNIVNAME = univ
|
||||
endif
|
||||
ifeq ($(SHARED),1)
|
||||
WXDLLFLAG = dll
|
||||
endif
|
||||
ifeq ($(SHARED),0)
|
||||
LIBTYPE_SUFFIX = lib
|
||||
endif
|
||||
ifeq ($(SHARED),1)
|
||||
LIBTYPE_SUFFIX = dll
|
||||
endif
|
||||
ifeq ($(MONOLITHIC),0)
|
||||
EXTRALIBS_FOR_BASE =
|
||||
endif
|
||||
ifeq ($(MONOLITHIC),1)
|
||||
EXTRALIBS_FOR_BASE =
|
||||
endif
|
||||
ifeq ($(BUILD),debug)
|
||||
__OPTIMIZEFLAG_2 = -O0
|
||||
endif
|
||||
ifeq ($(BUILD),release)
|
||||
__OPTIMIZEFLAG_2 = -O2
|
||||
endif
|
||||
ifeq ($(USE_RTTI),0)
|
||||
__RTTIFLAG_5 = -fno-rtti
|
||||
endif
|
||||
ifeq ($(USE_RTTI),1)
|
||||
__RTTIFLAG_5 =
|
||||
endif
|
||||
ifeq ($(USE_EXCEPTIONS),0)
|
||||
__EXCEPTIONSFLAG_6 = -fno-exceptions
|
||||
endif
|
||||
ifeq ($(USE_EXCEPTIONS),1)
|
||||
__EXCEPTIONSFLAG_6 =
|
||||
endif
|
||||
ifeq ($(WXUNIV),1)
|
||||
__WXUNIV_DEFINE_p = -D__WXUNIVERSAL__
|
||||
endif
|
||||
ifeq ($(WXUNIV),1)
|
||||
__WXUNIV_DEFINE_p_1 = --define __WXUNIVERSAL__
|
||||
endif
|
||||
ifeq ($(DEBUG_FLAG),0)
|
||||
__DEBUG_DEFINE_p = -DwxDEBUG_LEVEL=0
|
||||
endif
|
||||
ifeq ($(DEBUG_FLAG),0)
|
||||
__DEBUG_DEFINE_p_1 = --define wxDEBUG_LEVEL=0
|
||||
endif
|
||||
ifeq ($(BUILD),release)
|
||||
__NDEBUG_DEFINE_p = -DNDEBUG
|
||||
endif
|
||||
ifeq ($(BUILD),release)
|
||||
__NDEBUG_DEFINE_p_1 = --define NDEBUG
|
||||
endif
|
||||
ifeq ($(USE_EXCEPTIONS),0)
|
||||
__EXCEPTIONS_DEFINE_p = -DwxNO_EXCEPTIONS
|
||||
endif
|
||||
ifeq ($(USE_EXCEPTIONS),0)
|
||||
__EXCEPTIONS_DEFINE_p_1 = --define wxNO_EXCEPTIONS
|
||||
endif
|
||||
ifeq ($(USE_RTTI),0)
|
||||
__RTTI_DEFINE_p = -DwxNO_RTTI
|
||||
endif
|
||||
ifeq ($(USE_RTTI),0)
|
||||
__RTTI_DEFINE_p_1 = --define wxNO_RTTI
|
||||
endif
|
||||
ifeq ($(USE_THREADS),0)
|
||||
__THREAD_DEFINE_p = -DwxNO_THREADS
|
||||
endif
|
||||
ifeq ($(USE_THREADS),0)
|
||||
__THREAD_DEFINE_p_1 = --define wxNO_THREADS
|
||||
endif
|
||||
ifeq ($(USE_CAIRO),1)
|
||||
____CAIRO_INCLUDEDIR_FILENAMES_p = -I$(CAIRO_ROOT)\include\cairo
|
||||
endif
|
||||
ifeq ($(USE_CAIRO),1)
|
||||
__CAIRO_INCLUDEDIR_p = --include-dir $(CAIRO_ROOT)/include/cairo
|
||||
endif
|
||||
ifeq ($(SHARED),1)
|
||||
__DLLFLAG_p = -DWXUSINGDLL
|
||||
endif
|
||||
ifeq ($(SHARED),1)
|
||||
__DLLFLAG_p_1 = --define WXUSINGDLL
|
||||
endif
|
||||
ifeq ($(MONOLITHIC),0)
|
||||
__WXLIB_CORE_p = \
|
||||
-lwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)u$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core
|
||||
endif
|
||||
ifeq ($(MONOLITHIC),0)
|
||||
__WXLIB_BASE_p = -lwxbase$(WX_RELEASE_NODOT)u$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)
|
||||
endif
|
||||
ifeq ($(MONOLITHIC),1)
|
||||
__WXLIB_MONO_p = \
|
||||
-lwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)u$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)
|
||||
endif
|
||||
ifeq ($(MONOLITHIC),1)
|
||||
ifeq ($(USE_STC),1)
|
||||
__LIB_SCINTILLA_IF_MONO_p = -lwxscintilla$(WXDEBUGFLAG)
|
||||
endif
|
||||
endif
|
||||
ifeq ($(USE_GUI),1)
|
||||
__LIB_TIFF_p = -lwxtiff$(WXDEBUGFLAG)
|
||||
endif
|
||||
ifeq ($(USE_GUI),1)
|
||||
__LIB_JPEG_p = -lwxjpeg$(WXDEBUGFLAG)
|
||||
endif
|
||||
ifeq ($(USE_GUI),1)
|
||||
__LIB_PNG_p = -lwxpng$(WXDEBUGFLAG)
|
||||
endif
|
||||
ifeq ($(USE_CAIRO),1)
|
||||
__CAIRO_LIB_p = -lcairo
|
||||
endif
|
||||
ifeq ($(USE_CAIRO),1)
|
||||
____CAIRO_LIBDIR_FILENAMES_p = -L$(CAIRO_ROOT)\lib
|
||||
endif
|
||||
ifeq ($(BUILD),debug)
|
||||
ifeq ($(DEBUG_INFO),default)
|
||||
__DEBUGINFO = -g
|
||||
endif
|
||||
endif
|
||||
ifeq ($(BUILD),release)
|
||||
ifeq ($(DEBUG_INFO),default)
|
||||
__DEBUGINFO =
|
||||
endif
|
||||
endif
|
||||
ifeq ($(DEBUG_INFO),0)
|
||||
__DEBUGINFO =
|
||||
endif
|
||||
ifeq ($(DEBUG_INFO),1)
|
||||
__DEBUGINFO = -g
|
||||
endif
|
||||
ifeq ($(USE_THREADS),0)
|
||||
__THREADSFLAG =
|
||||
endif
|
||||
ifeq ($(USE_THREADS),1)
|
||||
__THREADSFLAG = -mthreads
|
||||
endif
|
||||
|
||||
|
||||
all: $(OBJS)
|
||||
$(OBJS):
|
||||
-if not exist $(OBJS) mkdir $(OBJS)
|
||||
|
||||
### Targets: ###
|
||||
|
||||
all: $(OBJS)\wxemulator.exe data
|
||||
|
||||
clean:
|
||||
-if exist $(OBJS)\*.o del $(OBJS)\*.o
|
||||
-if exist $(OBJS)\*.d del $(OBJS)\*.d
|
||||
-if exist $(OBJS)\wxemulator.exe del $(OBJS)\wxemulator.exe
|
||||
|
||||
$(OBJS)\wxemulator.exe: $(WXEMULATOR_OBJECTS) $(OBJS)\wxemulator_sample_rc.o
|
||||
$(foreach f,$(subst \,/,$(WXEMULATOR_OBJECTS)),$(shell echo $f >> $(subst \,/,$@).rsp.tmp))
|
||||
@move /y $@.rsp.tmp $@.rsp >nul
|
||||
$(CXX) -o $@ @$@.rsp $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) -Wl,--subsystem,windows -mwindows $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) -lwxzlib$(WXDEBUGFLAG) -lwxregexu$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lws2_32 -lwininet -loleacc -luxtheme
|
||||
@-del $@.rsp
|
||||
|
||||
data:
|
||||
if not exist $(OBJS) mkdir $(OBJS)
|
||||
for %%f in (default.wxe ipaq.wxe bluegradient.jpg ipaq01.jpg) do if not exist $(OBJS)\%%f copy .\%%f $(OBJS)
|
||||
|
||||
$(OBJS)\wxemulator_sample_rc.o: ./../../../samples/sample.rc
|
||||
$(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --define wxUSE_DPI_AWARE_MANIFEST=$(USE_DPI_AWARE_MANIFEST) --include-dir ./../../../samples --define NOPCH
|
||||
|
||||
$(OBJS)\wxemulator_emulator.o: ./emulator.cpp
|
||||
$(CXX) -c -o $@ $(WXEMULATOR_CXXFLAGS) $(CPPDEPS) $<
|
||||
|
||||
.PHONY: all clean data
|
||||
|
||||
|
||||
SHELL := $(COMSPEC)
|
||||
|
||||
# Dependencies tracking:
|
||||
-include $(OBJS)/*.d
|
||||
|
|
@ -1,424 +0,0 @@
|
|||
# =========================================================================
|
||||
# This makefile was generated by
|
||||
# Bakefile 0.2.13 (http://www.bakefile.org)
|
||||
# Do not modify, all changes will be overwritten!
|
||||
# =========================================================================
|
||||
|
||||
!include <../../../build/msw/config.vc>
|
||||
|
||||
# -------------------------------------------------------------------------
|
||||
# Do not modify the rest of this file!
|
||||
# -------------------------------------------------------------------------
|
||||
|
||||
### Variables: ###
|
||||
|
||||
WX_RELEASE_NODOT = 33
|
||||
COMPILER_PREFIX = vc
|
||||
OBJS = \
|
||||
$(COMPILER_PREFIX)$(COMPILER_VERSION)$(ARCH_SUFFIX)_$(PORTNAME)$(WXUNIVNAME)u$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG)
|
||||
LIBDIRNAME = \
|
||||
.\..\..\..\lib\$(COMPILER_PREFIX)$(COMPILER_VERSION)$(ARCH_SUFFIX)_$(LIBTYPE_SUFFIX)$(CFG)
|
||||
SETUPHDIR = $(LIBDIRNAME)\$(PORTNAME)$(WXUNIVNAME)u$(WXDEBUGFLAG)
|
||||
WXEMULATOR_CXXFLAGS = /M$(__RUNTIME_LIBS_10)$(__DEBUGRUNTIME_4) /DWIN32 \
|
||||
$(__DEBUGINFO_0) /Fd$(OBJS)\wxemulator.pdb $(____DEBUGRUNTIME_3_p) \
|
||||
$(__OPTIMIZEFLAG_6) /D_CRT_SECURE_NO_DEPRECATE=1 \
|
||||
/D_CRT_NON_CONFORMING_SWPRINTFS=1 /D_SCL_SECURE_NO_WARNINGS=1 \
|
||||
$(__NO_VC_CRTDBG_p) $(__TARGET_CPU_COMPFLAG_p) /D__WXMSW__ \
|
||||
$(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) $(__NDEBUG_DEFINE_p) \
|
||||
$(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \
|
||||
/I$(SETUPHDIR) /I.\..\..\..\include $(____CAIRO_INCLUDEDIR_FILENAMES_p) /W4 \
|
||||
/I. $(__DLLFLAG_p) /D_WINDOWS /I.\..\..\..\samples /DNOPCH $(__RTTIFLAG_11) \
|
||||
$(__EXCEPTIONSFLAG_12) $(CPPFLAGS) $(CXXFLAGS)
|
||||
WXEMULATOR_OBJECTS = \
|
||||
$(OBJS)\wxemulator_emulator.obj
|
||||
WXEMULATOR_RESOURCES = \
|
||||
$(OBJS)\wxemulator_sample.res
|
||||
|
||||
### Conditionally set variables: ###
|
||||
|
||||
!if "$(TARGET_CPU)" == "AMD64"
|
||||
ARCH_SUFFIX = _x64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "ARM64"
|
||||
ARCH_SUFFIX = _arm64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "IA64"
|
||||
ARCH_SUFFIX = _ia64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "X64"
|
||||
ARCH_SUFFIX = _x64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "" && "$(VISUALSTUDIOPLATFORM)" == "X64"
|
||||
ARCH_SUFFIX = _x64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "" && "$(VISUALSTUDIOPLATFORM)" == "x64"
|
||||
ARCH_SUFFIX = _x64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "amd64"
|
||||
ARCH_SUFFIX = _x64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "arm64"
|
||||
ARCH_SUFFIX = _arm64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "ia64"
|
||||
ARCH_SUFFIX = _ia64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "x64"
|
||||
ARCH_SUFFIX = _x64
|
||||
!endif
|
||||
!if "$(USE_GUI)" == "0"
|
||||
PORTNAME = base
|
||||
!endif
|
||||
!if "$(USE_GUI)" == "1"
|
||||
PORTNAME = msw$(TOOLKIT_VERSION)
|
||||
!endif
|
||||
!if "$(OFFICIAL_BUILD)" == "1"
|
||||
COMPILER_VERSION = ERROR-COMPILER-VERSION-MUST-BE-SET-FOR-OFFICIAL-BUILD
|
||||
!endif
|
||||
!if "$(BUILD)" == "debug" && "$(DEBUG_RUNTIME_LIBS)" == "default"
|
||||
WXDEBUGFLAG = d
|
||||
!endif
|
||||
!if "$(DEBUG_RUNTIME_LIBS)" == "1"
|
||||
WXDEBUGFLAG = d
|
||||
!endif
|
||||
!if "$(WXUNIV)" == "1"
|
||||
WXUNIVNAME = univ
|
||||
!endif
|
||||
!if "$(SHARED)" == "1"
|
||||
WXDLLFLAG = dll
|
||||
!endif
|
||||
!if "$(SHARED)" == "0"
|
||||
LIBTYPE_SUFFIX = lib
|
||||
!endif
|
||||
!if "$(SHARED)" == "1"
|
||||
LIBTYPE_SUFFIX = dll
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "AMD64"
|
||||
LINK_TARGET_CPU = /MACHINE:X64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "ARM64"
|
||||
LINK_TARGET_CPU = /MACHINE:ARM64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "IA64"
|
||||
LINK_TARGET_CPU = /MACHINE:IA64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "X64"
|
||||
LINK_TARGET_CPU = /MACHINE:X64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "" && "$(VISUALSTUDIOPLATFORM)" == "X64"
|
||||
LINK_TARGET_CPU = /MACHINE:X64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "" && "$(VISUALSTUDIOPLATFORM)" == "x64"
|
||||
LINK_TARGET_CPU = /MACHINE:X64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "amd64"
|
||||
LINK_TARGET_CPU = /MACHINE:X64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "arm64"
|
||||
LINK_TARGET_CPU = /MACHINE:ARM64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "ia64"
|
||||
LINK_TARGET_CPU = /MACHINE:IA64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "x64"
|
||||
LINK_TARGET_CPU = /MACHINE:X64
|
||||
!endif
|
||||
!if "$(USE_DPI_AWARE_MANIFEST)" == "1" && "$(VISUALSTUDIOVERSION)" == "14.0"
|
||||
WIN32_DPI_LINKFLAG = /MANIFEST:EMBED \
|
||||
/MANIFESTINPUT:./../../../include/wx/msw/wx_dpi_aware.manifest
|
||||
!endif
|
||||
!if "$(USE_DPI_AWARE_MANIFEST)" == "1" && "$(VISUALSTUDIOVERSION)" == "15.0"
|
||||
WIN32_DPI_LINKFLAG = /MANIFEST:EMBED \
|
||||
/MANIFESTINPUT:./../../../include/wx/msw/wx_dpi_aware.manifest
|
||||
!endif
|
||||
!if "$(USE_DPI_AWARE_MANIFEST)" == "1" && "$(VISUALSTUDIOVERSION)" == "16.0"
|
||||
WIN32_DPI_LINKFLAG = /MANIFEST:EMBED \
|
||||
/MANIFESTINPUT:./../../../include/wx/msw/wx_dpi_aware.manifest
|
||||
!endif
|
||||
!if "$(USE_DPI_AWARE_MANIFEST)" == "1" && "$(VISUALSTUDIOVERSION)" == "17.0"
|
||||
WIN32_DPI_LINKFLAG = /MANIFEST:EMBED \
|
||||
/MANIFESTINPUT:./../../../include/wx/msw/wx_dpi_aware.manifest
|
||||
!endif
|
||||
!if "$(USE_DPI_AWARE_MANIFEST)" == "2" && "$(VISUALSTUDIOVERSION)" == "14.0"
|
||||
WIN32_DPI_LINKFLAG = /MANIFEST:EMBED \
|
||||
/MANIFESTINPUT:./../../../include/wx/msw/wx_dpi_aware_pmv2.manifest
|
||||
!endif
|
||||
!if "$(USE_DPI_AWARE_MANIFEST)" == "2" && "$(VISUALSTUDIOVERSION)" == "15.0"
|
||||
WIN32_DPI_LINKFLAG = /MANIFEST:EMBED \
|
||||
/MANIFESTINPUT:./../../../include/wx/msw/wx_dpi_aware_pmv2.manifest
|
||||
!endif
|
||||
!if "$(USE_DPI_AWARE_MANIFEST)" == "2" && "$(VISUALSTUDIOVERSION)" == "16.0"
|
||||
WIN32_DPI_LINKFLAG = /MANIFEST:EMBED \
|
||||
/MANIFESTINPUT:./../../../include/wx/msw/wx_dpi_aware_pmv2.manifest
|
||||
!endif
|
||||
!if "$(USE_DPI_AWARE_MANIFEST)" == "2" && "$(VISUALSTUDIOVERSION)" == "17.0"
|
||||
WIN32_DPI_LINKFLAG = /MANIFEST:EMBED \
|
||||
/MANIFESTINPUT:./../../../include/wx/msw/wx_dpi_aware_pmv2.manifest
|
||||
!endif
|
||||
!if "$(MONOLITHIC)" == "0"
|
||||
EXTRALIBS_FOR_BASE =
|
||||
!endif
|
||||
!if "$(MONOLITHIC)" == "1"
|
||||
EXTRALIBS_FOR_BASE =
|
||||
!endif
|
||||
!if "$(BUILD)" == "debug" && "$(DEBUG_INFO)" == "default"
|
||||
__DEBUGINFO_0 = /Zi
|
||||
!endif
|
||||
!if "$(BUILD)" == "release" && "$(DEBUG_INFO)" == "default"
|
||||
__DEBUGINFO_0 =
|
||||
!endif
|
||||
!if "$(DEBUG_INFO)" == "0"
|
||||
__DEBUGINFO_0 =
|
||||
!endif
|
||||
!if "$(DEBUG_INFO)" == "1"
|
||||
__DEBUGINFO_0 = /Zi
|
||||
!endif
|
||||
!if "$(BUILD)" == "debug" && "$(DEBUG_INFO)" == "default"
|
||||
__DEBUGINFO_1 = /DEBUG
|
||||
!endif
|
||||
!if "$(BUILD)" == "release" && "$(DEBUG_INFO)" == "default"
|
||||
__DEBUGINFO_1 =
|
||||
!endif
|
||||
!if "$(DEBUG_INFO)" == "0"
|
||||
__DEBUGINFO_1 =
|
||||
!endif
|
||||
!if "$(DEBUG_INFO)" == "1"
|
||||
__DEBUGINFO_1 = /DEBUG
|
||||
!endif
|
||||
!if "$(BUILD)" == "debug" && "$(DEBUG_INFO)" == "default"
|
||||
__DEBUGINFO_2 = $(__DEBUGRUNTIME_5)
|
||||
!endif
|
||||
!if "$(BUILD)" == "release" && "$(DEBUG_INFO)" == "default"
|
||||
__DEBUGINFO_2 =
|
||||
!endif
|
||||
!if "$(DEBUG_INFO)" == "0"
|
||||
__DEBUGINFO_2 =
|
||||
!endif
|
||||
!if "$(DEBUG_INFO)" == "1"
|
||||
__DEBUGINFO_2 = $(__DEBUGRUNTIME_5)
|
||||
!endif
|
||||
!if "$(BUILD)" == "debug" && "$(DEBUG_RUNTIME_LIBS)" == "default"
|
||||
____DEBUGRUNTIME_3_p = /D_DEBUG
|
||||
!endif
|
||||
!if "$(BUILD)" == "release" && "$(DEBUG_RUNTIME_LIBS)" == "default"
|
||||
____DEBUGRUNTIME_3_p =
|
||||
!endif
|
||||
!if "$(DEBUG_RUNTIME_LIBS)" == "0"
|
||||
____DEBUGRUNTIME_3_p =
|
||||
!endif
|
||||
!if "$(DEBUG_RUNTIME_LIBS)" == "1"
|
||||
____DEBUGRUNTIME_3_p = /D_DEBUG
|
||||
!endif
|
||||
!if "$(BUILD)" == "debug" && "$(DEBUG_RUNTIME_LIBS)" == "default"
|
||||
____DEBUGRUNTIME_3_p_1 = /d _DEBUG
|
||||
!endif
|
||||
!if "$(BUILD)" == "release" && "$(DEBUG_RUNTIME_LIBS)" == "default"
|
||||
____DEBUGRUNTIME_3_p_1 =
|
||||
!endif
|
||||
!if "$(DEBUG_RUNTIME_LIBS)" == "0"
|
||||
____DEBUGRUNTIME_3_p_1 =
|
||||
!endif
|
||||
!if "$(DEBUG_RUNTIME_LIBS)" == "1"
|
||||
____DEBUGRUNTIME_3_p_1 = /d _DEBUG
|
||||
!endif
|
||||
!if "$(BUILD)" == "debug" && "$(DEBUG_RUNTIME_LIBS)" == "default"
|
||||
__DEBUGRUNTIME_4 = d
|
||||
!endif
|
||||
!if "$(BUILD)" == "release" && "$(DEBUG_RUNTIME_LIBS)" == "default"
|
||||
__DEBUGRUNTIME_4 =
|
||||
!endif
|
||||
!if "$(DEBUG_RUNTIME_LIBS)" == "0"
|
||||
__DEBUGRUNTIME_4 =
|
||||
!endif
|
||||
!if "$(DEBUG_RUNTIME_LIBS)" == "1"
|
||||
__DEBUGRUNTIME_4 = d
|
||||
!endif
|
||||
!if "$(BUILD)" == "debug" && "$(DEBUG_RUNTIME_LIBS)" == "default"
|
||||
__DEBUGRUNTIME_5 =
|
||||
!endif
|
||||
!if "$(BUILD)" == "release" && "$(DEBUG_RUNTIME_LIBS)" == "default"
|
||||
__DEBUGRUNTIME_5 = /opt:ref /opt:icf
|
||||
!endif
|
||||
!if "$(DEBUG_RUNTIME_LIBS)" == "0"
|
||||
__DEBUGRUNTIME_5 = /opt:ref /opt:icf
|
||||
!endif
|
||||
!if "$(DEBUG_RUNTIME_LIBS)" == "1"
|
||||
__DEBUGRUNTIME_5 =
|
||||
!endif
|
||||
!if "$(BUILD)" == "debug"
|
||||
__OPTIMIZEFLAG_6 = /Od
|
||||
!endif
|
||||
!if "$(BUILD)" == "release"
|
||||
__OPTIMIZEFLAG_6 = /O2
|
||||
!endif
|
||||
!if "$(USE_THREADS)" == "0"
|
||||
__THREADSFLAG_9 = L
|
||||
!endif
|
||||
!if "$(USE_THREADS)" == "1"
|
||||
__THREADSFLAG_9 = T
|
||||
!endif
|
||||
!if "$(RUNTIME_LIBS)" == "dynamic"
|
||||
__RUNTIME_LIBS_10 = D
|
||||
!endif
|
||||
!if "$(RUNTIME_LIBS)" == "static"
|
||||
__RUNTIME_LIBS_10 = $(__THREADSFLAG_9)
|
||||
!endif
|
||||
!if "$(USE_RTTI)" == "0"
|
||||
__RTTIFLAG_11 = /GR-
|
||||
!endif
|
||||
!if "$(USE_RTTI)" == "1"
|
||||
__RTTIFLAG_11 = /GR
|
||||
!endif
|
||||
!if "$(USE_EXCEPTIONS)" == "0"
|
||||
__EXCEPTIONSFLAG_12 =
|
||||
!endif
|
||||
!if "$(USE_EXCEPTIONS)" == "1"
|
||||
__EXCEPTIONSFLAG_12 = /EHsc
|
||||
!endif
|
||||
!if "$(BUILD)" == "debug" && "$(DEBUG_RUNTIME_LIBS)" == "0"
|
||||
__NO_VC_CRTDBG_p = /D__NO_VC_CRTDBG__
|
||||
!endif
|
||||
!if "$(BUILD)" == "release" && "$(DEBUG_FLAG)" == "1"
|
||||
__NO_VC_CRTDBG_p = /D__NO_VC_CRTDBG__
|
||||
!endif
|
||||
!if "$(BUILD)" == "debug" && "$(DEBUG_RUNTIME_LIBS)" == "0"
|
||||
__NO_VC_CRTDBG_p_1 = /d __NO_VC_CRTDBG__
|
||||
!endif
|
||||
!if "$(BUILD)" == "release" && "$(DEBUG_FLAG)" == "1"
|
||||
__NO_VC_CRTDBG_p_1 = /d __NO_VC_CRTDBG__
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == ""
|
||||
__TARGET_CPU_COMPFLAG_p = /DTARGET_CPU_COMPFLAG=0
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "" && "$(VISUALSTUDIOPLATFORM)" == "X64"
|
||||
__TARGET_CPU_COMPFLAG_p =
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "" && "$(VISUALSTUDIOPLATFORM)" == "x64"
|
||||
__TARGET_CPU_COMPFLAG_p =
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == ""
|
||||
__TARGET_CPU_COMPFLAG_p_1 = /d TARGET_CPU_COMPFLAG=0
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "" && "$(VISUALSTUDIOPLATFORM)" == "X64"
|
||||
__TARGET_CPU_COMPFLAG_p_1 =
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "" && "$(VISUALSTUDIOPLATFORM)" == "x64"
|
||||
__TARGET_CPU_COMPFLAG_p_1 =
|
||||
!endif
|
||||
!if "$(WXUNIV)" == "1"
|
||||
__WXUNIV_DEFINE_p = /D__WXUNIVERSAL__
|
||||
!endif
|
||||
!if "$(WXUNIV)" == "1"
|
||||
__WXUNIV_DEFINE_p_1 = /d __WXUNIVERSAL__
|
||||
!endif
|
||||
!if "$(DEBUG_FLAG)" == "0"
|
||||
__DEBUG_DEFINE_p = /DwxDEBUG_LEVEL=0
|
||||
!endif
|
||||
!if "$(DEBUG_FLAG)" == "0"
|
||||
__DEBUG_DEFINE_p_1 = /d wxDEBUG_LEVEL=0
|
||||
!endif
|
||||
!if "$(BUILD)" == "release" && "$(DEBUG_RUNTIME_LIBS)" == "default"
|
||||
__NDEBUG_DEFINE_p = /DNDEBUG
|
||||
!endif
|
||||
!if "$(DEBUG_RUNTIME_LIBS)" == "0"
|
||||
__NDEBUG_DEFINE_p = /DNDEBUG
|
||||
!endif
|
||||
!if "$(BUILD)" == "release" && "$(DEBUG_RUNTIME_LIBS)" == "default"
|
||||
__NDEBUG_DEFINE_p_1 = /d NDEBUG
|
||||
!endif
|
||||
!if "$(DEBUG_RUNTIME_LIBS)" == "0"
|
||||
__NDEBUG_DEFINE_p_1 = /d NDEBUG
|
||||
!endif
|
||||
!if "$(USE_EXCEPTIONS)" == "0"
|
||||
__EXCEPTIONS_DEFINE_p = /DwxNO_EXCEPTIONS
|
||||
!endif
|
||||
!if "$(USE_EXCEPTIONS)" == "0"
|
||||
__EXCEPTIONS_DEFINE_p_1 = /d wxNO_EXCEPTIONS
|
||||
!endif
|
||||
!if "$(USE_RTTI)" == "0"
|
||||
__RTTI_DEFINE_p = /DwxNO_RTTI
|
||||
!endif
|
||||
!if "$(USE_RTTI)" == "0"
|
||||
__RTTI_DEFINE_p_1 = /d wxNO_RTTI
|
||||
!endif
|
||||
!if "$(USE_THREADS)" == "0"
|
||||
__THREAD_DEFINE_p = /DwxNO_THREADS
|
||||
!endif
|
||||
!if "$(USE_THREADS)" == "0"
|
||||
__THREAD_DEFINE_p_1 = /d wxNO_THREADS
|
||||
!endif
|
||||
!if "$(USE_CAIRO)" == "1"
|
||||
____CAIRO_INCLUDEDIR_FILENAMES_p = /I$(CAIRO_ROOT)\include\cairo
|
||||
!endif
|
||||
!if "$(USE_CAIRO)" == "1"
|
||||
____CAIRO_INCLUDEDIR_FILENAMES_1_p = /i $(CAIRO_ROOT)\include\cairo
|
||||
!endif
|
||||
!if "$(SHARED)" == "1"
|
||||
__DLLFLAG_p = /DWXUSINGDLL
|
||||
!endif
|
||||
!if "$(SHARED)" == "1"
|
||||
__DLLFLAG_p_1 = /d WXUSINGDLL
|
||||
!endif
|
||||
!if "$(MONOLITHIC)" == "0"
|
||||
__WXLIB_CORE_p = \
|
||||
wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)u$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_core.lib
|
||||
!endif
|
||||
!if "$(MONOLITHIC)" == "0"
|
||||
__WXLIB_BASE_p = \
|
||||
wxbase$(WX_RELEASE_NODOT)u$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib
|
||||
!endif
|
||||
!if "$(MONOLITHIC)" == "1"
|
||||
__WXLIB_MONO_p = \
|
||||
wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)u$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib
|
||||
!endif
|
||||
!if "$(MONOLITHIC)" == "1" && "$(USE_STC)" == "1"
|
||||
__LIB_SCINTILLA_IF_MONO_p = wxscintilla$(WXDEBUGFLAG).lib
|
||||
!endif
|
||||
!if "$(USE_GUI)" == "1"
|
||||
__LIB_TIFF_p = wxtiff$(WXDEBUGFLAG).lib
|
||||
!endif
|
||||
!if "$(USE_GUI)" == "1"
|
||||
__LIB_JPEG_p = wxjpeg$(WXDEBUGFLAG).lib
|
||||
!endif
|
||||
!if "$(USE_GUI)" == "1"
|
||||
__LIB_PNG_p = wxpng$(WXDEBUGFLAG).lib
|
||||
!endif
|
||||
!if "$(USE_CAIRO)" == "1"
|
||||
__CAIRO_LIB_p = cairo.lib
|
||||
!endif
|
||||
!if "$(USE_CAIRO)" == "1"
|
||||
____CAIRO_LIBDIR_FILENAMES_p = /LIBPATH:$(CAIRO_ROOT)\lib
|
||||
!endif
|
||||
|
||||
|
||||
all: $(OBJS)
|
||||
$(OBJS):
|
||||
-if not exist $(OBJS) mkdir $(OBJS)
|
||||
|
||||
### Targets: ###
|
||||
|
||||
all: $(OBJS)\wxemulator.exe data
|
||||
|
||||
clean:
|
||||
-if exist $(OBJS)\*.obj del $(OBJS)\*.obj
|
||||
-if exist $(OBJS)\*.res del $(OBJS)\*.res
|
||||
-if exist $(OBJS)\*.pch del $(OBJS)\*.pch
|
||||
-if exist $(OBJS)\wxemulator.exe del $(OBJS)\wxemulator.exe
|
||||
-if exist $(OBJS)\wxemulator.ilk del $(OBJS)\wxemulator.ilk
|
||||
-if exist $(OBJS)\wxemulator.pdb del $(OBJS)\wxemulator.pdb
|
||||
|
||||
$(OBJS)\wxemulator.exe: $(WXEMULATOR_OBJECTS) $(OBJS)\wxemulator_sample.res
|
||||
link /NOLOGO /OUT:$@ $(__DEBUGINFO_1) /pdb:"$(OBJS)\wxemulator.pdb" $(__DEBUGINFO_2) $(LINK_TARGET_CPU) /LIBPATH:$(LIBDIRNAME) $(WIN32_DPI_LINKFLAG) /SUBSYSTEM:WINDOWS $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @<<
|
||||
$(WXEMULATOR_OBJECTS) $(WXEMULATOR_RESOURCES) $(__WXLIB_CORE_p) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_SCINTILLA_IF_MONO_p) $(__LIB_TIFF_p) $(__LIB_JPEG_p) $(__LIB_PNG_p) wxzlib$(WXDEBUGFLAG).lib wxregexu$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib ws2_32.lib wininet.lib
|
||||
<<
|
||||
|
||||
data:
|
||||
if not exist $(OBJS) mkdir $(OBJS)
|
||||
for %f in (default.wxe ipaq.wxe bluegradient.jpg ipaq01.jpg) do if not exist $(OBJS)\%f copy .\%f $(OBJS)
|
||||
|
||||
$(OBJS)\wxemulator_sample.res: .\..\..\..\samples\sample.rc
|
||||
rc /fo$@ /d WIN32 $(____DEBUGRUNTIME_3_p_1) /d _CRT_SECURE_NO_DEPRECATE=1 /d _CRT_NON_CONFORMING_SWPRINTFS=1 /d _SCL_SECURE_NO_WARNINGS=1 $(__NO_VC_CRTDBG_p_1) $(__TARGET_CPU_COMPFLAG_p_1) /d __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) /i $(SETUPHDIR) /i .\..\..\..\include $(____CAIRO_INCLUDEDIR_FILENAMES_1_p) /i . $(__DLLFLAG_p_1) /d _WINDOWS /i .\..\..\..\samples /d NOPCH .\..\..\..\samples\sample.rc
|
||||
|
||||
$(OBJS)\wxemulator_emulator.obj: .\emulator.cpp
|
||||
$(CXX) /c /nologo /TP /Fo$@ $(WXEMULATOR_CXXFLAGS) .\emulator.cpp
|
||||
|
||||
|
Before Width: | Height: | Size: 766 B |
|
|
@ -1,44 +0,0 @@
|
|||
/* XPM */
|
||||
static const char *const mondrian_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"32 32 6 1",
|
||||
" c Black",
|
||||
". c Blue",
|
||||
"X c #00bf00",
|
||||
"o c Red",
|
||||
"O c Yellow",
|
||||
"+ c Gray100",
|
||||
/* pixels */
|
||||
" ",
|
||||
" oooooo +++++++++++++++++++++++ ",
|
||||
" oooooo +++++++++++++++++++++++ ",
|
||||
" oooooo +++++++++++++++++++++++ ",
|
||||
" oooooo +++++++++++++++++++++++ ",
|
||||
" oooooo +++++++++++++++++++++++ ",
|
||||
" oooooo +++++++++++++++++++++++ ",
|
||||
" oooooo +++++++++++++++++++++++ ",
|
||||
" ",
|
||||
" ++++++ ++++++++++++++++++ .... ",
|
||||
" ++++++ ++++++++++++++++++ .... ",
|
||||
" ++++++ ++++++++++++++++++ .... ",
|
||||
" ++++++ ++++++++++++++++++ .... ",
|
||||
" ++++++ ++++++++++++++++++ .... ",
|
||||
" ++++++ ++++++++++++++++++ ",
|
||||
" ++++++ ++++++++++++++++++ ++++ ",
|
||||
" ++++++ ++++++++++++++++++ ++++ ",
|
||||
" ++++++ ++++++++++++++++++ ++++ ",
|
||||
" ++++++ ++++++++++++++++++ ++++ ",
|
||||
" ++++++ ++++++++++++++++++ ++++ ",
|
||||
" ++++++ ++++++++++++++++++ ++++ ",
|
||||
" ++++++ ++++++++++++++++++ ++++ ",
|
||||
" ++++++ ++++++++++++++++++ ++++ ",
|
||||
" ++++++ ++++++++++++++++++ ++++ ",
|
||||
" ++++++ ++++ ",
|
||||
" ++++++ OOOOOOOOOOOO XXXXX ++++ ",
|
||||
" ++++++ OOOOOOOOOOOO XXXXX ++++ ",
|
||||
" ++++++ OOOOOOOOOOOO XXXXX ++++ ",
|
||||
" ++++++ OOOOOOOOOOOO XXXXX ++++ ",
|
||||
" ++++++ OOOOOOOOOOOO XXXXX ++++ ",
|
||||
" ++++++ OOOOOOOOOOOO XXXXX ++++ ",
|
||||
" "
|
||||
};
|
||||
|
|
@ -1,126 +0,0 @@
|
|||
# =========================================================================
|
||||
# This makefile was generated by
|
||||
# Bakefile 0.2.13 (http://www.bakefile.org)
|
||||
# Do not modify, all changes will be overwritten!
|
||||
# =========================================================================
|
||||
|
||||
|
||||
@MAKE_SET@
|
||||
|
||||
prefix = @prefix@
|
||||
exec_prefix = @exec_prefix@
|
||||
datarootdir = @datarootdir@
|
||||
INSTALL = @INSTALL@
|
||||
EXEEXT = @EXEEXT@
|
||||
STRIP = @STRIP@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_DIR = @INSTALL_DIR@
|
||||
BK_DEPS = @BK_DEPS@
|
||||
srcdir = @srcdir@
|
||||
top_srcdir = @top_srcdir@
|
||||
bindir = @bindir@
|
||||
LIBS = @LIBS@
|
||||
CXX = @CXX@
|
||||
CXXFLAGS = @CXXFLAGS@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
WX_LIB_FLAVOUR = @WX_LIB_FLAVOUR@
|
||||
TOOLKIT = @TOOLKIT@
|
||||
TOOLKIT_LOWERCASE = @TOOLKIT_LOWERCASE@
|
||||
TOOLKIT_VERSION = @TOOLKIT_VERSION@
|
||||
EXTRALIBS = @EXTRALIBS@
|
||||
EXTRALIBS_XML = @EXTRALIBS_XML@
|
||||
EXTRALIBS_GUI = @EXTRALIBS_GUI@
|
||||
WX_CPPFLAGS = @WX_CPPFLAGS@
|
||||
WX_CXXFLAGS = @WX_CXXFLAGS@
|
||||
WX_LDFLAGS = @WX_LDFLAGS@
|
||||
HOST_SUFFIX = @HOST_SUFFIX@
|
||||
wx_top_builddir = @wx_top_builddir@
|
||||
|
||||
### Variables: ###
|
||||
|
||||
DESTDIR =
|
||||
WX_RELEASE = 3.3
|
||||
LIBDIRNAME = $(wx_top_builddir)/lib
|
||||
EXECMON_CXXFLAGS = $(WX_CPPFLAGS) -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \
|
||||
$(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \
|
||||
$(__THREAD_DEFINE_p) -I$(srcdir) $(__DLLFLAG_p) -DwxUSE_GUI=0 $(WX_CXXFLAGS) \
|
||||
$(CPPFLAGS) $(CXXFLAGS)
|
||||
EXECMON_OBJECTS = \
|
||||
execmon_execmon.o
|
||||
|
||||
### Conditionally set variables: ###
|
||||
|
||||
@COND_DEPS_TRACKING_0@CXXC = $(CXX)
|
||||
@COND_DEPS_TRACKING_1@CXXC = $(BK_DEPS) $(CXX)
|
||||
@COND_USE_GUI_0@PORTNAME = base
|
||||
@COND_USE_GUI_1@PORTNAME = $(TOOLKIT_LOWERCASE)$(TOOLKIT_VERSION)
|
||||
@COND_TOOLKIT_MAC@WXBASEPORT = _carbon
|
||||
@COND_BUILD_debug@WXDEBUGFLAG = d
|
||||
@COND_WXUNIV_1@WXUNIVNAME = univ
|
||||
@COND_MONOLITHIC_0@EXTRALIBS_FOR_BASE = $(EXTRALIBS)
|
||||
@COND_MONOLITHIC_1@EXTRALIBS_FOR_BASE = $(EXTRALIBS) \
|
||||
@COND_MONOLITHIC_1@ $(EXTRALIBS_XML) $(EXTRALIBS_GUI)
|
||||
@COND_USE_XRC_1@__execmon___depname = execmon$(EXEEXT)
|
||||
@COND_WXUNIV_1@__WXUNIV_DEFINE_p = -D__WXUNIVERSAL__
|
||||
@COND_DEBUG_FLAG_0@__DEBUG_DEFINE_p = -DwxDEBUG_LEVEL=0
|
||||
@COND_USE_EXCEPTIONS_0@__EXCEPTIONS_DEFINE_p = -DwxNO_EXCEPTIONS
|
||||
@COND_USE_RTTI_0@__RTTI_DEFINE_p = -DwxNO_RTTI
|
||||
@COND_USE_THREADS_0@__THREAD_DEFINE_p = -DwxNO_THREADS
|
||||
@COND_SHARED_1@__DLLFLAG_p = -DWXUSINGDLL
|
||||
COND_MONOLITHIC_0___WXLIB_BASE_p = \
|
||||
-lwx_base$(WXBASEPORT)u$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
|
||||
@COND_MONOLITHIC_0@__WXLIB_BASE_p = $(COND_MONOLITHIC_0___WXLIB_BASE_p)
|
||||
@COND_USE_XRC_1@__install_execmon___depname = install_execmon
|
||||
@COND_USE_XRC_1@__uninstall_execmon___depname = uninstall_execmon
|
||||
COND_MONOLITHIC_1___WXLIB_MONO_p = \
|
||||
-lwx_$(PORTNAME)$(WXUNIVNAME)u$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
|
||||
@COND_MONOLITHIC_1@__WXLIB_MONO_p = $(COND_MONOLITHIC_1___WXLIB_MONO_p)
|
||||
@COND_MONOLITHIC_1@__LIB_PNG_IF_MONO_p = $(__LIB_PNG_p)
|
||||
@COND_USE_GUI_1_wxUSE_LIBPNG_builtin@__LIB_PNG_p \
|
||||
@COND_USE_GUI_1_wxUSE_LIBPNG_builtin@ = \
|
||||
@COND_USE_GUI_1_wxUSE_LIBPNG_builtin@ -lwxpng$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
|
||||
@COND_wxUSE_ZLIB_builtin@__LIB_ZLIB_p = \
|
||||
@COND_wxUSE_ZLIB_builtin@ -lwxzlib$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
|
||||
@COND_wxUSE_REGEX_builtin@__LIB_REGEX_p = \
|
||||
@COND_wxUSE_REGEX_builtin@ -lwxregexu$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
|
||||
@COND_wxUSE_EXPAT_builtin@__LIB_EXPAT_p = \
|
||||
@COND_wxUSE_EXPAT_builtin@ -lwxexpat$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)
|
||||
|
||||
### Targets: ###
|
||||
|
||||
all: $(__execmon___depname)
|
||||
|
||||
install: $(__install_execmon___depname)
|
||||
|
||||
uninstall: $(__uninstall_execmon___depname)
|
||||
|
||||
install-strip: install
|
||||
$(STRIP) $(DESTDIR)$(bindir)/execmon$(EXEEXT)
|
||||
|
||||
clean:
|
||||
rm -rf ./.deps ./.pch
|
||||
rm -f ./*.o
|
||||
rm -f execmon$(EXEEXT)
|
||||
|
||||
distclean: clean
|
||||
rm -f config.cache config.log config.status bk-deps bk-make-pch Makefile
|
||||
|
||||
@COND_USE_XRC_1@execmon$(EXEEXT): $(EXECMON_OBJECTS)
|
||||
@COND_USE_XRC_1@ $(CXX) -o $@ $(EXECMON_OBJECTS) -L$(LIBDIRNAME) $(LDFLAGS) $(WX_LDFLAGS) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) $(__LIB_ZLIB_p) $(__LIB_REGEX_p) $(__LIB_EXPAT_p) $(EXTRALIBS_FOR_BASE) $(LIBS)
|
||||
|
||||
@COND_USE_XRC_1@install_execmon: $(__execmon___depname)
|
||||
@COND_USE_XRC_1@ $(INSTALL_DIR) $(DESTDIR)$(bindir)
|
||||
@COND_USE_XRC_1@ $(INSTALL_PROGRAM) execmon$(EXEEXT) $(DESTDIR)$(bindir)
|
||||
|
||||
@COND_USE_XRC_1@uninstall_execmon:
|
||||
@COND_USE_XRC_1@ rm -f $(DESTDIR)$(bindir)/execmon$(EXEEXT)
|
||||
|
||||
execmon_execmon.o: $(srcdir)/execmon.cpp
|
||||
$(CXXC) -c -o $@ $(EXECMON_CXXFLAGS) $(srcdir)/execmon.cpp
|
||||
|
||||
|
||||
# Include dependency info, if present:
|
||||
@IF_GNU_MAKE@-include ./.deps/*.d
|
||||
|
||||
.PHONY: all install uninstall clean distclean install_execmon uninstall_execmon
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
<?xml version="1.0" ?>
|
||||
<makefile>
|
||||
|
||||
<include file="../../build/bakefiles/common_samples.bkl"/>
|
||||
|
||||
<exe id="execmon" cond="USE_XRC=='1'"
|
||||
template="wx_util_console" template_append="wx_append_base">
|
||||
<sources>execmon.cpp</sources>
|
||||
<wx-lib>base</wx-lib>
|
||||
<install-to>$(BINDIR)</install-to>
|
||||
</exe>
|
||||
|
||||
</makefile>
|
||||
|
|
@ -1,233 +0,0 @@
|
|||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: execmon.cpp
|
||||
// Purpose: A simple execution monitor to test if wx samples crash at startup or not
|
||||
// Author: Francesco Montorsi
|
||||
// Modified by:
|
||||
// Created: 25/3/09
|
||||
// Copyright: (c) 2009 Francesco Montorsi
|
||||
// Licence: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// ============================================================================
|
||||
// declarations
|
||||
// ============================================================================
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// headers
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// For compilers that support precompilation, includes "wx.h".
|
||||
#include "wx/wxprec.h"
|
||||
|
||||
|
||||
#ifndef WX_PRECOMP
|
||||
#include "wx/app.h"
|
||||
#include "wx/log.h"
|
||||
#endif // WX_PRECOMP
|
||||
|
||||
#include "wx/cmdline.h"
|
||||
#include "wx/vector.h"
|
||||
#include "wx/process.h"
|
||||
#include "wx/sstream.h"
|
||||
#include "wx/utils.h"
|
||||
#include "wx/filename.h"
|
||||
#include "wx/app.h"
|
||||
#include "wx/log.h"
|
||||
|
||||
// ============================================================================
|
||||
// implementation
|
||||
// ============================================================================
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// utility classes
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
class MonitoredProcess : public wxProcess
|
||||
{
|
||||
public:
|
||||
MonitoredProcess()
|
||||
{ Redirect(); m_crashed=false; m_exitCode=0; }
|
||||
|
||||
void OnTerminate(int WXUNUSED(pid), int status)
|
||||
{
|
||||
wxStringOutputStream out, err;
|
||||
if (GetInputStream()) out.Write(*GetInputStream());
|
||||
if (GetErrorStream()) err.Write(*GetErrorStream());
|
||||
|
||||
//wxPrintf("%s\n", stdout.GetString());
|
||||
//wxPrintf("%s\n", stderr.GetString());
|
||||
|
||||
// when wx programs assert on wxGTK/wxMac, they put on stderr a message like:
|
||||
// [Debug] date somefilename.pp(nnnn): assert "xxxxx" failed in yyyy
|
||||
// but then the assert dialog pop-ups and thus the app doesn't exit
|
||||
// FIXME: make assertion detection work also under other platforms
|
||||
// see https://github.com/wxWidgets/wxWidgets/issues/10697
|
||||
m_crashed = out.GetString().Contains("assert") ||
|
||||
err.GetString().Contains("assert");
|
||||
m_exitCode = status;
|
||||
}
|
||||
|
||||
void Kill()
|
||||
{
|
||||
wxProcess::Kill(GetPid());
|
||||
|
||||
// wxProcess::Kill doesn't trigger a call to OnTerminate() normally...
|
||||
// but we still need to call it!
|
||||
OnTerminate(0, -1);
|
||||
}
|
||||
|
||||
bool Crashed() const
|
||||
{ return m_crashed; }
|
||||
|
||||
int GetExitCode() const
|
||||
{ return m_exitCode; }
|
||||
|
||||
private:
|
||||
bool m_crashed;
|
||||
int m_exitCode;
|
||||
};
|
||||
|
||||
class MonitorData
|
||||
{
|
||||
public:
|
||||
MonitorData(const wxString& cmd) : program(cmd) {}
|
||||
|
||||
wxString program;
|
||||
MonitoredProcess process;
|
||||
};
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// the real main
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
bool TestExec(const wxVector<wxFileName>& programs, long timeout)
|
||||
{
|
||||
size_t i;
|
||||
wxVector<MonitorData*> data;
|
||||
|
||||
// run all programs specified as command line parameters
|
||||
wxArrayLong procID;
|
||||
for (i=0; i<programs.size(); i++)
|
||||
{
|
||||
MonitorData *dt = new MonitorData(programs[i].GetFullPath());
|
||||
|
||||
long pid = wxExecute(programs[i].GetFullPath(), wxEXEC_ASYNC, &dt->process);
|
||||
if (pid == 0)
|
||||
{
|
||||
wxLogError("could not run the program '%s'", programs[i].GetFullPath());
|
||||
}
|
||||
else
|
||||
{
|
||||
wxLogMessage("started program '%s' (pid %d)...",
|
||||
programs[i].GetFullPath(), pid);
|
||||
wxASSERT(dt->process.GetPid() == pid);
|
||||
|
||||
data.push_back(dt);
|
||||
}
|
||||
}
|
||||
|
||||
// sleep some moments
|
||||
wxSleep(timeout);
|
||||
|
||||
// check if all processes are still running
|
||||
bool allok = true;
|
||||
for (i=0; i<data.size(); i++)
|
||||
{
|
||||
MonitoredProcess& proc = data[i]->process;
|
||||
const wxString& prog = data[i]->program;
|
||||
|
||||
if (wxProcess::Exists(proc.GetPid()))
|
||||
proc.Kill();
|
||||
else
|
||||
{
|
||||
// this typically never happens, at least when running wx-programs
|
||||
// built with debug builds of wx (see MonitoredProcess::OnTerminate;
|
||||
// even if an asserts fail the app doesn't automatically close!):
|
||||
|
||||
wxLogMessage("program '%s' (pid %d) is NOT running anymore...",
|
||||
prog, proc.GetPid());
|
||||
allok = false;
|
||||
}
|
||||
|
||||
if (data[i]->process.Crashed())
|
||||
{
|
||||
allok = false;
|
||||
wxLogMessage("program '%s' (pid %d) crashed...",
|
||||
prog, proc.GetPid());
|
||||
}
|
||||
else
|
||||
wxLogMessage("program '%s' (pid %d) ended with exit code %d...",
|
||||
prog, proc.GetPid(), proc.GetExitCode());
|
||||
}
|
||||
|
||||
return allok;
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// main
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
wxApp::CheckBuildOptions(WX_BUILD_OPTIONS_SIGNATURE, "execmon");
|
||||
|
||||
wxInitializer initializer;
|
||||
if ( !initializer )
|
||||
{
|
||||
fprintf(stderr, "Failed to initialize the wxWidgets library, aborting.");
|
||||
return -1;
|
||||
}
|
||||
|
||||
static const wxCmdLineEntryDesc cmdLineDesc[] =
|
||||
{
|
||||
{ wxCMD_LINE_SWITCH, "h", "help",
|
||||
"show this help message",
|
||||
wxCMD_LINE_VAL_NONE, wxCMD_LINE_OPTION_HELP },
|
||||
{ wxCMD_LINE_OPTION, "t", "timeout",
|
||||
"kills all processes still alive after 'num' seconds",
|
||||
wxCMD_LINE_VAL_NUMBER, 0 },
|
||||
{ wxCMD_LINE_PARAM, "", "",
|
||||
"program-to-run",
|
||||
wxCMD_LINE_VAL_STRING, wxCMD_LINE_PARAM_MULTIPLE },
|
||||
|
||||
{ wxCMD_LINE_NONE }
|
||||
};
|
||||
|
||||
wxLog::DisableTimestamp();
|
||||
|
||||
wxCmdLineParser parser(cmdLineDesc, argc, argv);
|
||||
switch ( parser.Parse() )
|
||||
{
|
||||
case -1:
|
||||
// help was shown
|
||||
break;
|
||||
|
||||
case 0:
|
||||
{
|
||||
// check arguments
|
||||
wxVector<wxFileName> programs;
|
||||
for (unsigned int i=0; i<parser.GetParamCount(); i++)
|
||||
{
|
||||
wxFileName fn(parser.GetParam(i));
|
||||
if (!fn.IsAbsolute())
|
||||
fn.MakeAbsolute();
|
||||
|
||||
programs.push_back(fn);
|
||||
}
|
||||
|
||||
long timeout;
|
||||
if (!parser.Found("t", &timeout))
|
||||
timeout = 3;
|
||||
|
||||
return TestExec(programs, timeout) ? 0 : 1;
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
// syntax error
|
||||
break;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
@ -1,182 +0,0 @@
|
|||
# =========================================================================
|
||||
# This makefile was generated by
|
||||
# Bakefile 0.2.13 (http://www.bakefile.org)
|
||||
# Do not modify, all changes will be overwritten!
|
||||
# =========================================================================
|
||||
|
||||
include ../../build/msw/config.gcc
|
||||
|
||||
# -------------------------------------------------------------------------
|
||||
# Do not modify the rest of this file!
|
||||
# -------------------------------------------------------------------------
|
||||
|
||||
### Variables: ###
|
||||
|
||||
CPPDEPS = -MT$@ -MF$@.d -MD -MP
|
||||
WX_RELEASE_NODOT = 33
|
||||
COMPILER_PREFIX = gcc
|
||||
OBJS = \
|
||||
$(COMPILER_PREFIX)$(COMPILER_VERSION)_$(PORTNAME)$(WXUNIVNAME)u$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG)
|
||||
LIBDIRNAME = \
|
||||
.\..\..\lib\$(COMPILER_PREFIX)$(COMPILER_VERSION)_$(LIBTYPE_SUFFIX)$(CFG)
|
||||
SETUPHDIR = $(LIBDIRNAME)\$(PORTNAME)$(WXUNIVNAME)u$(WXDEBUGFLAG)
|
||||
EXECMON_CXXFLAGS = $(__DEBUGINFO) $(__OPTIMIZEFLAG_2) $(__THREADSFLAG) \
|
||||
-D__WXMSW__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) $(__NDEBUG_DEFINE_p) \
|
||||
$(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \
|
||||
-I$(SETUPHDIR) -I.\..\..\include $(____CAIRO_INCLUDEDIR_FILENAMES_p) -W \
|
||||
-Wall -I. $(__DLLFLAG_p) -DwxUSE_GUI=0 $(__RTTIFLAG_5) $(__EXCEPTIONSFLAG_6) \
|
||||
-Wno-ctor-dtor-privacy $(CPPFLAGS) $(CXXFLAGS)
|
||||
EXECMON_OBJECTS = \
|
||||
$(OBJS)\execmon_execmon.o
|
||||
|
||||
### Conditionally set variables: ###
|
||||
|
||||
ifeq ($(USE_GUI),0)
|
||||
PORTNAME = base
|
||||
endif
|
||||
ifeq ($(USE_GUI),1)
|
||||
PORTNAME = msw$(TOOLKIT_VERSION)
|
||||
endif
|
||||
ifeq ($(OFFICIAL_BUILD),1)
|
||||
COMPILER_VERSION = ERROR-COMPILER-VERSION-MUST-BE-SET-FOR-OFFICIAL-BUILD
|
||||
endif
|
||||
ifeq ($(BUILD),debug)
|
||||
WXDEBUGFLAG = d
|
||||
endif
|
||||
ifeq ($(WXUNIV),1)
|
||||
WXUNIVNAME = univ
|
||||
endif
|
||||
ifeq ($(SHARED),1)
|
||||
WXDLLFLAG = dll
|
||||
endif
|
||||
ifeq ($(SHARED),0)
|
||||
LIBTYPE_SUFFIX = lib
|
||||
endif
|
||||
ifeq ($(SHARED),1)
|
||||
LIBTYPE_SUFFIX = dll
|
||||
endif
|
||||
ifeq ($(MONOLITHIC),0)
|
||||
EXTRALIBS_FOR_BASE =
|
||||
endif
|
||||
ifeq ($(MONOLITHIC),1)
|
||||
EXTRALIBS_FOR_BASE =
|
||||
endif
|
||||
ifeq ($(USE_XRC),1)
|
||||
__execmon___depname = $(OBJS)\execmon.exe
|
||||
endif
|
||||
ifeq ($(BUILD),debug)
|
||||
__OPTIMIZEFLAG_2 = -O0
|
||||
endif
|
||||
ifeq ($(BUILD),release)
|
||||
__OPTIMIZEFLAG_2 = -O2
|
||||
endif
|
||||
ifeq ($(USE_RTTI),0)
|
||||
__RTTIFLAG_5 = -fno-rtti
|
||||
endif
|
||||
ifeq ($(USE_RTTI),1)
|
||||
__RTTIFLAG_5 =
|
||||
endif
|
||||
ifeq ($(USE_EXCEPTIONS),0)
|
||||
__EXCEPTIONSFLAG_6 = -fno-exceptions
|
||||
endif
|
||||
ifeq ($(USE_EXCEPTIONS),1)
|
||||
__EXCEPTIONSFLAG_6 =
|
||||
endif
|
||||
ifeq ($(WXUNIV),1)
|
||||
__WXUNIV_DEFINE_p = -D__WXUNIVERSAL__
|
||||
endif
|
||||
ifeq ($(DEBUG_FLAG),0)
|
||||
__DEBUG_DEFINE_p = -DwxDEBUG_LEVEL=0
|
||||
endif
|
||||
ifeq ($(BUILD),release)
|
||||
__NDEBUG_DEFINE_p = -DNDEBUG
|
||||
endif
|
||||
ifeq ($(USE_EXCEPTIONS),0)
|
||||
__EXCEPTIONS_DEFINE_p = -DwxNO_EXCEPTIONS
|
||||
endif
|
||||
ifeq ($(USE_RTTI),0)
|
||||
__RTTI_DEFINE_p = -DwxNO_RTTI
|
||||
endif
|
||||
ifeq ($(USE_THREADS),0)
|
||||
__THREAD_DEFINE_p = -DwxNO_THREADS
|
||||
endif
|
||||
ifeq ($(USE_CAIRO),1)
|
||||
____CAIRO_INCLUDEDIR_FILENAMES_p = -I$(CAIRO_ROOT)\include\cairo
|
||||
endif
|
||||
ifeq ($(SHARED),1)
|
||||
__DLLFLAG_p = -DWXUSINGDLL
|
||||
endif
|
||||
ifeq ($(MONOLITHIC),0)
|
||||
__WXLIB_BASE_p = -lwxbase$(WX_RELEASE_NODOT)u$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)
|
||||
endif
|
||||
ifeq ($(MONOLITHIC),1)
|
||||
__WXLIB_MONO_p = \
|
||||
-lwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)u$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)
|
||||
endif
|
||||
ifeq ($(MONOLITHIC),1)
|
||||
__LIB_PNG_IF_MONO_p = $(__LIB_PNG_p)
|
||||
endif
|
||||
ifeq ($(USE_GUI),1)
|
||||
__LIB_PNG_p = -lwxpng$(WXDEBUGFLAG)
|
||||
endif
|
||||
ifeq ($(USE_CAIRO),1)
|
||||
__CAIRO_LIB_p = -lcairo
|
||||
endif
|
||||
ifeq ($(USE_CAIRO),1)
|
||||
____CAIRO_LIBDIR_FILENAMES_p = -L$(CAIRO_ROOT)\lib
|
||||
endif
|
||||
ifeq ($(BUILD),debug)
|
||||
ifeq ($(DEBUG_INFO),default)
|
||||
__DEBUGINFO = -g
|
||||
endif
|
||||
endif
|
||||
ifeq ($(BUILD),release)
|
||||
ifeq ($(DEBUG_INFO),default)
|
||||
__DEBUGINFO =
|
||||
endif
|
||||
endif
|
||||
ifeq ($(DEBUG_INFO),0)
|
||||
__DEBUGINFO =
|
||||
endif
|
||||
ifeq ($(DEBUG_INFO),1)
|
||||
__DEBUGINFO = -g
|
||||
endif
|
||||
ifeq ($(USE_THREADS),0)
|
||||
__THREADSFLAG =
|
||||
endif
|
||||
ifeq ($(USE_THREADS),1)
|
||||
__THREADSFLAG = -mthreads
|
||||
endif
|
||||
|
||||
|
||||
all: $(OBJS)
|
||||
$(OBJS):
|
||||
-if not exist $(OBJS) mkdir $(OBJS)
|
||||
|
||||
### Targets: ###
|
||||
|
||||
all: $(__execmon___depname)
|
||||
|
||||
clean:
|
||||
-if exist $(OBJS)\*.o del $(OBJS)\*.o
|
||||
-if exist $(OBJS)\*.d del $(OBJS)\*.d
|
||||
-if exist $(OBJS)\execmon.exe del $(OBJS)\execmon.exe
|
||||
|
||||
ifeq ($(USE_XRC),1)
|
||||
$(OBJS)\execmon.exe: $(EXECMON_OBJECTS)
|
||||
$(foreach f,$(subst \,/,$(EXECMON_OBJECTS)),$(shell echo $f >> $(subst \,/,$@).rsp.tmp))
|
||||
@move /y $@.rsp.tmp $@.rsp >nul
|
||||
$(CXX) -o $@ @$@.rsp $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME) $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) -lwxzlib$(WXDEBUGFLAG) -lwxregexu$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lshlwapi -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lversion -lws2_32 -lwininet -loleacc -luxtheme
|
||||
@-del $@.rsp
|
||||
endif
|
||||
|
||||
$(OBJS)\execmon_execmon.o: ./execmon.cpp
|
||||
$(CXX) -c -o $@ $(EXECMON_CXXFLAGS) $(CPPDEPS) $<
|
||||
|
||||
.PHONY: all clean
|
||||
|
||||
|
||||
SHELL := $(COMSPEC)
|
||||
|
||||
# Dependencies tracking:
|
||||
-include $(OBJS)/*.d
|
||||
|
|
@ -1,324 +0,0 @@
|
|||
# =========================================================================
|
||||
# This makefile was generated by
|
||||
# Bakefile 0.2.13 (http://www.bakefile.org)
|
||||
# Do not modify, all changes will be overwritten!
|
||||
# =========================================================================
|
||||
|
||||
!include <../../build/msw/config.vc>
|
||||
|
||||
# -------------------------------------------------------------------------
|
||||
# Do not modify the rest of this file!
|
||||
# -------------------------------------------------------------------------
|
||||
|
||||
### Variables: ###
|
||||
|
||||
WX_RELEASE_NODOT = 33
|
||||
COMPILER_PREFIX = vc
|
||||
OBJS = \
|
||||
$(COMPILER_PREFIX)$(COMPILER_VERSION)$(ARCH_SUFFIX)_$(PORTNAME)$(WXUNIVNAME)u$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG)
|
||||
LIBDIRNAME = \
|
||||
.\..\..\lib\$(COMPILER_PREFIX)$(COMPILER_VERSION)$(ARCH_SUFFIX)_$(LIBTYPE_SUFFIX)$(CFG)
|
||||
SETUPHDIR = $(LIBDIRNAME)\$(PORTNAME)$(WXUNIVNAME)u$(WXDEBUGFLAG)
|
||||
EXECMON_CXXFLAGS = /M$(__RUNTIME_LIBS_10)$(__DEBUGRUNTIME_4) /DWIN32 \
|
||||
$(__DEBUGINFO_0) /Fd$(OBJS)\execmon.pdb $(____DEBUGRUNTIME_3_p) \
|
||||
$(__OPTIMIZEFLAG_6) /D_CRT_SECURE_NO_DEPRECATE=1 \
|
||||
/D_CRT_NON_CONFORMING_SWPRINTFS=1 /D_SCL_SECURE_NO_WARNINGS=1 \
|
||||
$(__NO_VC_CRTDBG_p) $(__TARGET_CPU_COMPFLAG_p) /D__WXMSW__ \
|
||||
$(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) $(__NDEBUG_DEFINE_p) \
|
||||
$(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) $(__THREAD_DEFINE_p) \
|
||||
/I$(SETUPHDIR) /I.\..\..\include $(____CAIRO_INCLUDEDIR_FILENAMES_p) /W4 /I. \
|
||||
$(__DLLFLAG_p) /D_CONSOLE /DwxUSE_GUI=0 $(__RTTIFLAG_11) \
|
||||
$(__EXCEPTIONSFLAG_12) $(CPPFLAGS) $(CXXFLAGS)
|
||||
EXECMON_OBJECTS = \
|
||||
$(OBJS)\execmon_execmon.obj
|
||||
|
||||
### Conditionally set variables: ###
|
||||
|
||||
!if "$(TARGET_CPU)" == "AMD64"
|
||||
ARCH_SUFFIX = _x64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "ARM64"
|
||||
ARCH_SUFFIX = _arm64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "IA64"
|
||||
ARCH_SUFFIX = _ia64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "X64"
|
||||
ARCH_SUFFIX = _x64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "" && "$(VISUALSTUDIOPLATFORM)" == "X64"
|
||||
ARCH_SUFFIX = _x64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "" && "$(VISUALSTUDIOPLATFORM)" == "x64"
|
||||
ARCH_SUFFIX = _x64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "amd64"
|
||||
ARCH_SUFFIX = _x64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "arm64"
|
||||
ARCH_SUFFIX = _arm64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "ia64"
|
||||
ARCH_SUFFIX = _ia64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "x64"
|
||||
ARCH_SUFFIX = _x64
|
||||
!endif
|
||||
!if "$(USE_GUI)" == "0"
|
||||
PORTNAME = base
|
||||
!endif
|
||||
!if "$(USE_GUI)" == "1"
|
||||
PORTNAME = msw$(TOOLKIT_VERSION)
|
||||
!endif
|
||||
!if "$(OFFICIAL_BUILD)" == "1"
|
||||
COMPILER_VERSION = ERROR-COMPILER-VERSION-MUST-BE-SET-FOR-OFFICIAL-BUILD
|
||||
!endif
|
||||
!if "$(BUILD)" == "debug" && "$(DEBUG_RUNTIME_LIBS)" == "default"
|
||||
WXDEBUGFLAG = d
|
||||
!endif
|
||||
!if "$(DEBUG_RUNTIME_LIBS)" == "1"
|
||||
WXDEBUGFLAG = d
|
||||
!endif
|
||||
!if "$(WXUNIV)" == "1"
|
||||
WXUNIVNAME = univ
|
||||
!endif
|
||||
!if "$(SHARED)" == "1"
|
||||
WXDLLFLAG = dll
|
||||
!endif
|
||||
!if "$(SHARED)" == "0"
|
||||
LIBTYPE_SUFFIX = lib
|
||||
!endif
|
||||
!if "$(SHARED)" == "1"
|
||||
LIBTYPE_SUFFIX = dll
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "AMD64"
|
||||
LINK_TARGET_CPU = /MACHINE:X64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "ARM64"
|
||||
LINK_TARGET_CPU = /MACHINE:ARM64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "IA64"
|
||||
LINK_TARGET_CPU = /MACHINE:IA64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "X64"
|
||||
LINK_TARGET_CPU = /MACHINE:X64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "" && "$(VISUALSTUDIOPLATFORM)" == "X64"
|
||||
LINK_TARGET_CPU = /MACHINE:X64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "" && "$(VISUALSTUDIOPLATFORM)" == "x64"
|
||||
LINK_TARGET_CPU = /MACHINE:X64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "amd64"
|
||||
LINK_TARGET_CPU = /MACHINE:X64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "arm64"
|
||||
LINK_TARGET_CPU = /MACHINE:ARM64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "ia64"
|
||||
LINK_TARGET_CPU = /MACHINE:IA64
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "x64"
|
||||
LINK_TARGET_CPU = /MACHINE:X64
|
||||
!endif
|
||||
!if "$(MONOLITHIC)" == "0"
|
||||
EXTRALIBS_FOR_BASE =
|
||||
!endif
|
||||
!if "$(MONOLITHIC)" == "1"
|
||||
EXTRALIBS_FOR_BASE =
|
||||
!endif
|
||||
!if "$(USE_XRC)" == "1"
|
||||
__execmon___depname = $(OBJS)\execmon.exe
|
||||
!endif
|
||||
!if "$(BUILD)" == "debug" && "$(DEBUG_INFO)" == "default"
|
||||
__DEBUGINFO_0 = /Zi
|
||||
!endif
|
||||
!if "$(BUILD)" == "release" && "$(DEBUG_INFO)" == "default"
|
||||
__DEBUGINFO_0 =
|
||||
!endif
|
||||
!if "$(DEBUG_INFO)" == "0"
|
||||
__DEBUGINFO_0 =
|
||||
!endif
|
||||
!if "$(DEBUG_INFO)" == "1"
|
||||
__DEBUGINFO_0 = /Zi
|
||||
!endif
|
||||
!if "$(BUILD)" == "debug" && "$(DEBUG_INFO)" == "default"
|
||||
__DEBUGINFO_1 = /DEBUG
|
||||
!endif
|
||||
!if "$(BUILD)" == "release" && "$(DEBUG_INFO)" == "default"
|
||||
__DEBUGINFO_1 =
|
||||
!endif
|
||||
!if "$(DEBUG_INFO)" == "0"
|
||||
__DEBUGINFO_1 =
|
||||
!endif
|
||||
!if "$(DEBUG_INFO)" == "1"
|
||||
__DEBUGINFO_1 = /DEBUG
|
||||
!endif
|
||||
!if "$(BUILD)" == "debug" && "$(DEBUG_INFO)" == "default"
|
||||
__DEBUGINFO_2 = $(__DEBUGRUNTIME_5)
|
||||
!endif
|
||||
!if "$(BUILD)" == "release" && "$(DEBUG_INFO)" == "default"
|
||||
__DEBUGINFO_2 =
|
||||
!endif
|
||||
!if "$(DEBUG_INFO)" == "0"
|
||||
__DEBUGINFO_2 =
|
||||
!endif
|
||||
!if "$(DEBUG_INFO)" == "1"
|
||||
__DEBUGINFO_2 = $(__DEBUGRUNTIME_5)
|
||||
!endif
|
||||
!if "$(BUILD)" == "debug" && "$(DEBUG_RUNTIME_LIBS)" == "default"
|
||||
____DEBUGRUNTIME_3_p = /D_DEBUG
|
||||
!endif
|
||||
!if "$(BUILD)" == "release" && "$(DEBUG_RUNTIME_LIBS)" == "default"
|
||||
____DEBUGRUNTIME_3_p =
|
||||
!endif
|
||||
!if "$(DEBUG_RUNTIME_LIBS)" == "0"
|
||||
____DEBUGRUNTIME_3_p =
|
||||
!endif
|
||||
!if "$(DEBUG_RUNTIME_LIBS)" == "1"
|
||||
____DEBUGRUNTIME_3_p = /D_DEBUG
|
||||
!endif
|
||||
!if "$(BUILD)" == "debug" && "$(DEBUG_RUNTIME_LIBS)" == "default"
|
||||
__DEBUGRUNTIME_4 = d
|
||||
!endif
|
||||
!if "$(BUILD)" == "release" && "$(DEBUG_RUNTIME_LIBS)" == "default"
|
||||
__DEBUGRUNTIME_4 =
|
||||
!endif
|
||||
!if "$(DEBUG_RUNTIME_LIBS)" == "0"
|
||||
__DEBUGRUNTIME_4 =
|
||||
!endif
|
||||
!if "$(DEBUG_RUNTIME_LIBS)" == "1"
|
||||
__DEBUGRUNTIME_4 = d
|
||||
!endif
|
||||
!if "$(BUILD)" == "debug" && "$(DEBUG_RUNTIME_LIBS)" == "default"
|
||||
__DEBUGRUNTIME_5 =
|
||||
!endif
|
||||
!if "$(BUILD)" == "release" && "$(DEBUG_RUNTIME_LIBS)" == "default"
|
||||
__DEBUGRUNTIME_5 = /opt:ref /opt:icf
|
||||
!endif
|
||||
!if "$(DEBUG_RUNTIME_LIBS)" == "0"
|
||||
__DEBUGRUNTIME_5 = /opt:ref /opt:icf
|
||||
!endif
|
||||
!if "$(DEBUG_RUNTIME_LIBS)" == "1"
|
||||
__DEBUGRUNTIME_5 =
|
||||
!endif
|
||||
!if "$(BUILD)" == "debug"
|
||||
__OPTIMIZEFLAG_6 = /Od
|
||||
!endif
|
||||
!if "$(BUILD)" == "release"
|
||||
__OPTIMIZEFLAG_6 = /O2
|
||||
!endif
|
||||
!if "$(USE_THREADS)" == "0"
|
||||
__THREADSFLAG_9 = L
|
||||
!endif
|
||||
!if "$(USE_THREADS)" == "1"
|
||||
__THREADSFLAG_9 = T
|
||||
!endif
|
||||
!if "$(RUNTIME_LIBS)" == "dynamic"
|
||||
__RUNTIME_LIBS_10 = D
|
||||
!endif
|
||||
!if "$(RUNTIME_LIBS)" == "static"
|
||||
__RUNTIME_LIBS_10 = $(__THREADSFLAG_9)
|
||||
!endif
|
||||
!if "$(USE_RTTI)" == "0"
|
||||
__RTTIFLAG_11 = /GR-
|
||||
!endif
|
||||
!if "$(USE_RTTI)" == "1"
|
||||
__RTTIFLAG_11 = /GR
|
||||
!endif
|
||||
!if "$(USE_EXCEPTIONS)" == "0"
|
||||
__EXCEPTIONSFLAG_12 =
|
||||
!endif
|
||||
!if "$(USE_EXCEPTIONS)" == "1"
|
||||
__EXCEPTIONSFLAG_12 = /EHsc
|
||||
!endif
|
||||
!if "$(BUILD)" == "debug" && "$(DEBUG_RUNTIME_LIBS)" == "0"
|
||||
__NO_VC_CRTDBG_p = /D__NO_VC_CRTDBG__
|
||||
!endif
|
||||
!if "$(BUILD)" == "release" && "$(DEBUG_FLAG)" == "1"
|
||||
__NO_VC_CRTDBG_p = /D__NO_VC_CRTDBG__
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == ""
|
||||
__TARGET_CPU_COMPFLAG_p = /DTARGET_CPU_COMPFLAG=0
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "" && "$(VISUALSTUDIOPLATFORM)" == "x64"
|
||||
__TARGET_CPU_COMPFLAG_p =
|
||||
!endif
|
||||
!if "$(TARGET_CPU)" == "" && "$(VISUALSTUDIOPLATFORM)" == "X64"
|
||||
__TARGET_CPU_COMPFLAG_p =
|
||||
!endif
|
||||
!if "$(WXUNIV)" == "1"
|
||||
__WXUNIV_DEFINE_p = /D__WXUNIVERSAL__
|
||||
!endif
|
||||
!if "$(DEBUG_FLAG)" == "0"
|
||||
__DEBUG_DEFINE_p = /DwxDEBUG_LEVEL=0
|
||||
!endif
|
||||
!if "$(BUILD)" == "release" && "$(DEBUG_RUNTIME_LIBS)" == "default"
|
||||
__NDEBUG_DEFINE_p = /DNDEBUG
|
||||
!endif
|
||||
!if "$(DEBUG_RUNTIME_LIBS)" == "0"
|
||||
__NDEBUG_DEFINE_p = /DNDEBUG
|
||||
!endif
|
||||
!if "$(USE_EXCEPTIONS)" == "0"
|
||||
__EXCEPTIONS_DEFINE_p = /DwxNO_EXCEPTIONS
|
||||
!endif
|
||||
!if "$(USE_RTTI)" == "0"
|
||||
__RTTI_DEFINE_p = /DwxNO_RTTI
|
||||
!endif
|
||||
!if "$(USE_THREADS)" == "0"
|
||||
__THREAD_DEFINE_p = /DwxNO_THREADS
|
||||
!endif
|
||||
!if "$(USE_CAIRO)" == "1"
|
||||
____CAIRO_INCLUDEDIR_FILENAMES_p = /I$(CAIRO_ROOT)\include\cairo
|
||||
!endif
|
||||
!if "$(SHARED)" == "1"
|
||||
__DLLFLAG_p = /DWXUSINGDLL
|
||||
!endif
|
||||
!if "$(MONOLITHIC)" == "0"
|
||||
__WXLIB_BASE_p = \
|
||||
wxbase$(WX_RELEASE_NODOT)u$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib
|
||||
!endif
|
||||
!if "$(MONOLITHIC)" == "1"
|
||||
__WXLIB_MONO_p = \
|
||||
wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)u$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR).lib
|
||||
!endif
|
||||
!if "$(MONOLITHIC)" == "1"
|
||||
__LIB_PNG_IF_MONO_p = $(__LIB_PNG_p)
|
||||
!endif
|
||||
!if "$(USE_GUI)" == "1"
|
||||
__LIB_PNG_p = wxpng$(WXDEBUGFLAG).lib
|
||||
!endif
|
||||
!if "$(USE_CAIRO)" == "1"
|
||||
__CAIRO_LIB_p = cairo.lib
|
||||
!endif
|
||||
!if "$(USE_CAIRO)" == "1"
|
||||
____CAIRO_LIBDIR_FILENAMES_p = /LIBPATH:$(CAIRO_ROOT)\lib
|
||||
!endif
|
||||
|
||||
|
||||
all: $(OBJS)
|
||||
$(OBJS):
|
||||
-if not exist $(OBJS) mkdir $(OBJS)
|
||||
|
||||
### Targets: ###
|
||||
|
||||
all: $(__execmon___depname)
|
||||
|
||||
clean:
|
||||
-if exist $(OBJS)\*.obj del $(OBJS)\*.obj
|
||||
-if exist $(OBJS)\*.res del $(OBJS)\*.res
|
||||
-if exist $(OBJS)\*.pch del $(OBJS)\*.pch
|
||||
-if exist $(OBJS)\execmon.exe del $(OBJS)\execmon.exe
|
||||
-if exist $(OBJS)\execmon.ilk del $(OBJS)\execmon.ilk
|
||||
-if exist $(OBJS)\execmon.pdb del $(OBJS)\execmon.pdb
|
||||
|
||||
!if "$(USE_XRC)" == "1"
|
||||
$(OBJS)\execmon.exe: $(EXECMON_OBJECTS)
|
||||
link /NOLOGO /OUT:$@ $(__DEBUGINFO_1) /pdb:"$(OBJS)\execmon.pdb" $(__DEBUGINFO_2) $(LINK_TARGET_CPU) /LIBPATH:$(LIBDIRNAME) /SUBSYSTEM:CONSOLE $(____CAIRO_LIBDIR_FILENAMES_p) $(LDFLAGS) @<<
|
||||
$(EXECMON_OBJECTS) $(__WXLIB_BASE_p) $(__WXLIB_MONO_p) $(__LIB_PNG_IF_MONO_p) wxzlib$(WXDEBUGFLAG).lib wxregexu$(WXDEBUGFLAG).lib wxexpat$(WXDEBUGFLAG).lib $(EXTRALIBS_FOR_BASE) $(__CAIRO_LIB_p) kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib shlwapi.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib version.lib ws2_32.lib wininet.lib
|
||||
<<
|
||||
!endif
|
||||
|
||||
$(OBJS)\execmon_execmon.obj: .\execmon.cpp
|
||||
$(CXX) /c /nologo /TP /Fo$@ $(EXECMON_CXXFLAGS) .\execmon.cpp
|
||||
|
||||
|
|
@ -36,25 +36,17 @@ MAKEARGS = LINK_DLL_FLAGS="$(LINK_DLL_FLAGS)" \
|
|||
|
||||
### Targets: ###
|
||||
|
||||
all: emulator execmon helpview hhp2cached ifacecheck screenshotgen wxrc
|
||||
all: helpview hhp2cached ifacecheck screenshotgen wxrc
|
||||
|
||||
clean:
|
||||
-if exist .\*.o del .\*.o
|
||||
-if exist .\*.d del .\*.d
|
||||
$(MAKE) -C emulator\src -f makefile.gcc $(MAKEARGS) clean
|
||||
$(MAKE) -C execmon -f makefile.gcc $(MAKEARGS) clean
|
||||
$(MAKE) -C helpview\src -f makefile.gcc $(MAKEARGS) clean
|
||||
$(MAKE) -C hhp2cached -f makefile.gcc $(MAKEARGS) clean
|
||||
$(MAKE) -C ifacecheck\src -f makefile.gcc $(MAKEARGS) clean
|
||||
$(MAKE) -C screenshotgen\src -f makefile.gcc $(MAKEARGS) clean
|
||||
$(MAKE) -C wxrc -f makefile.gcc $(MAKEARGS) clean
|
||||
|
||||
emulator:
|
||||
$(MAKE) -C emulator\src -f makefile.gcc $(MAKEARGS) all
|
||||
|
||||
execmon:
|
||||
$(MAKE) -C execmon -f makefile.gcc $(MAKEARGS) all
|
||||
|
||||
helpview:
|
||||
$(MAKE) -C helpview\src -f makefile.gcc $(MAKEARGS) all
|
||||
|
||||
|
|
@ -70,8 +62,7 @@ screenshotgen:
|
|||
wxrc:
|
||||
$(MAKE) -C wxrc -f makefile.gcc $(MAKEARGS) all
|
||||
|
||||
.PHONY: all clean emulator execmon helpview hhp2cached ifacecheck screenshotgen \
|
||||
wxrc
|
||||
.PHONY: all clean helpview hhp2cached ifacecheck screenshotgen wxrc
|
||||
|
||||
|
||||
SHELL := $(COMSPEC)
|
||||
|
|
|
|||
|
|
@ -36,18 +36,12 @@ MAKEARGS = CC="$(CC)" CXX="$(CXX)" CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" \
|
|||
|
||||
### Targets: ###
|
||||
|
||||
all: sub_emulator sub_execmon sub_helpview sub_hhp2cached sub_ifacecheck sub_screenshotgen sub_wxrc
|
||||
all: sub_helpview sub_hhp2cached sub_ifacecheck sub_screenshotgen sub_wxrc
|
||||
|
||||
clean:
|
||||
-if exist .\*.obj del .\*.obj
|
||||
-if exist .\*.res del .\*.res
|
||||
-if exist .\*.pch del .\*.pch
|
||||
cd emulator\src
|
||||
$(MAKE) -f makefile.vc $(MAKEARGS) clean
|
||||
cd "$(MAKEDIR)"
|
||||
cd execmon
|
||||
$(MAKE) -f makefile.vc $(MAKEARGS) clean
|
||||
cd "$(MAKEDIR)"
|
||||
cd helpview\src
|
||||
$(MAKE) -f makefile.vc $(MAKEARGS) clean
|
||||
cd "$(MAKEDIR)"
|
||||
|
|
@ -64,16 +58,6 @@ clean:
|
|||
$(MAKE) -f makefile.vc $(MAKEARGS) clean
|
||||
cd "$(MAKEDIR)"
|
||||
|
||||
sub_emulator:
|
||||
cd emulator\src
|
||||
$(MAKE) -f makefile.vc $(MAKEARGS) all
|
||||
cd "$(MAKEDIR)"
|
||||
|
||||
sub_execmon:
|
||||
cd execmon
|
||||
$(MAKE) -f makefile.vc $(MAKEARGS) all
|
||||
cd "$(MAKEDIR)"
|
||||
|
||||
sub_helpview:
|
||||
cd helpview\src
|
||||
$(MAKE) -f makefile.vc $(MAKEARGS) all
|
||||
|
|
|
|||
|
|
@ -7,16 +7,6 @@
|
|||
<dependency-of>all</dependency-of>
|
||||
</template>
|
||||
|
||||
<subproject id="emulator" template="sub">
|
||||
<dir>emulator/src</dir>
|
||||
<installable>no</installable>
|
||||
</subproject>
|
||||
|
||||
<subproject id="execmon" template="sub">
|
||||
<dir>execmon</dir>
|
||||
<installable>yes</installable>
|
||||
</subproject>
|
||||
|
||||
<subproject id="helpview" template="sub">
|
||||
<dir>helpview/src</dir>
|
||||
<installable>no</installable>
|
||||
|
|
|
|||