gtk2/gtk/makefile.msc.in

472 lines
12 KiB
Plaintext
Raw Normal View History

## Makefile for building the gtk DLL with Microsoft C
## Use: nmake -f makefile.msc
## There is no install target, you have to decide where and
## how to install for yourself.
TOP = ../..
!INCLUDE $(TOP)/build/win32/make.msc
################################################################
# Possibly override versions from build/win32/module.defs
GTK_VER = @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@
GDK_PIXBUF_VER = @GDK_PIXBUF_MAJOR@.@GDK_PIXBUF_MINOR@
GDK_LIBS = ../gdk/gdk-win32-$(GTK_VER).lib
GTK_LIBS = gtk-win32-$(GTK_VER).lib
GDK_PIXBUF_LIBS = ../gdk-pixbuf/gdk_pixbuf-$(GDK_PIXBUF_VER).lib
# Perl and awk are needed to generate some source files.
# These generated source files are distribuyted with the Win32 GTk+ source
# distributions, so don't worry if you don't have perl and awk.
PERL = perl
AWK = gawk
INCLUDES = -I . -I .. -I ../gdk -I ../gdk-pixbuf
DEPCFLAGS = $(PANGO_CFLAGS) $(GLIB_CFLAGS) $(LIBICONV_CFLAGS) $(INTL_CFLAGS)
LDFLAGS = /link /machine:ix86 $(LINKDEBUG)
# Some files use near as an identifier
DEFINES = -DGTK_DISABLE_COMPAT_H -DGTK_COMPILATION -DG_LOG_DOMAIN=\"Gtk\" -Dnear=xxnear -DGTK_VERSION=\"@GTK_VERSION@\"
TOUCH = copy makefile.msc+nul
GTK_VER=1.3
all : \
..\config.h \
generated \
gtk-win32-$(GTK_VER).dll \
testcalendar.exe \
testdnd.exe \
testgtk.exe \
testinput.exe \
testrgb.exe \
testselection.exe \
testtext.exe \
testtextbuffer.exe \
simple.exe
gtk_OBJECTS = \
fnmatch.obj \
gdk-pixbuf-loader.obj \
gtkaccelgroup.obj \
gtkaccellabel.obj \
gtkadjustment.obj \
gtkalignment.obj \
gtkarg.obj \
gtkarrow.obj \
gtkaspectframe.obj \
gtkbin.obj \
gtkbindings.obj \
gtkbbox.obj \
gtkbox.obj \
gtkbutton.obj \
gtkcalendar.obj \
gtkcellrenderer.obj \
gtkcellrenderertext.obj \
gtkcellrenderertextpixbuf.obj \
gtkcellrenderertoggle.obj \
gtkcellrendererpixbuf.obj \
gtkcheckbutton.obj \
gtkcheckmenuitem.obj \
gtkclipboard.obj \
gtkclist.obj \
gtkcolorsel.obj \
gtkcolorseldialog.obj \
gtkcombo.obj \
gtkcontainer.obj \
gtkctree.obj \
gtkcurve.obj \
gtkdata.obj \
gtkdialog.obj \
gtkdnd.obj \
gtkdrawingarea.obj \
gtkeditable.obj \
gtkentry.obj \
gtkeventbox.obj \
gtkfilesel.obj \
gtkfixed.obj \
gtkfontsel.obj \
gtkframe.obj \
gtkgamma.obj \
gtkgc.obj \
gtkhandlebox.obj \
gtkhbbox.obj \
gtkhbox.obj \
gtkhpaned.obj \
gtkhruler.obj \
gtkhscale.obj \
gtkhscrollbar.obj \
gtkhseparator.obj \
gtkhsv.obj \
gtkiconfactory.obj \
gtkimage.obj \
gtkimcontext.obj \
gtkimcontextsimple.obj \
gtkimmodule.obj \
gtkimmulticontext.obj \
gtkinputdialog.obj \
gtkinvisible.obj \
gtkitem.obj \
gtkitemfactory.obj \
gtklabel.obj \
gtklayout.obj \
gtklist.obj \
gtklistitem.obj \
gtkmain.obj \
gtkmenu.obj \
gtkmenubar.obj \
gtkmenufactory.obj \
gtkmenuitem.obj \
gtkmenushell.obj \
gtkmessagedialog.obj \
gtkmisc.obj \
gtknotebook.obj \
gtkobject.obj \
gtkoldeditable.obj \
gtkoptionmenu.obj \
gtkpacker.obj \
gtkpaned.obj \
gtkpixmap.obj \
gtkplug.obj \
gtkpreview.obj \
gtkprogress.obj \
gtkprogressbar.obj \
gtkradiobutton.obj \
gtkradiomenuitem.obj \
gtkrange.obj \
gtkrc.obj \
gtkruler.obj \
gtkscale.obj \
gtkscrollbar.obj \
gtkscrolledwindow.obj \
gtkselection.obj \
gtkseparator.obj \
gtksignal.obj \
gtksocket.obj \
gtkspinbutton.obj \
gtkstyle.obj \
gtkstatusbar.obj \
gtkstock.obj \
gtktable.obj \
gtktearoffmenuitem.obj \
gtktext.obj \
gtktextbtree.obj \
gtktextbuffer.obj \
gtktextchild.obj \
gtktextdisplay.obj \
gtktextiter.obj \
gtktextlayout.obj \
gtktextmark.obj \
gtktextsegment.obj \
gtktexttag.obj \
gtktexttagtable.obj \
gtktexttypes.obj \
gtktextview.obj \
gtkthemes.obj \
gtktipsquery.obj \
gtktogglebutton.obj \
gtktoolbar.obj \
gtktooltips.obj \
gtktree.obj \
gtktreeitem.obj \
gtktreemodel.obj \
gtktypeutils.obj \
gtkvbbox.obj \
gtkvbox.obj \
gtkviewport.obj \
gtkvpaned.obj \
gtkvruler.obj \
gtkvscale.obj \
gtkvscrollbar.obj \
gtkvseparator.obj \
gtkwidget.obj \
gtkwindow.obj \
gtkwindow-decorate.obj
# Source headers which are non-autogenerated headers
gtk_public_h_sources = \
gtk.h \
gtkaccelgroup.h \
gtkaccellabel.h \
gtkadjustment.h \
gtkalignment.h \
gtkarg.h \
gtkarrow.h \
gtkaspectframe.h \
gtkbin.h \
gtkbindings.h \
gtkbbox.h \
gtkbox.h \
gtkbutton.h \
gtkcalendar.h \
gtkcheckbutton.h \
gtkcheckmenuitem.h \
gtkclist.h \
gtkclipboard.h \
gtkcolorsel.h \
gtkcolorseldialog.h \
gtkcombo.h \
gtkcompat.h \
gtkcontainer.h \
gtkctree.h \
gtkcurve.h \
gtkcellrenderer.h \
gtkcellrenderertext.h \
gtkcellrenderertextpixbuf.h \
gtkcellrenderertoggle.h \
gtkcellrendererpixbuf.h \
gtkdata.h \
gtkdebug.h \
gtkdialog.h \
gtkdnd.h \
gtkdrawingarea.h \
gtkeditable.h \
gtkentry.h \
gtkenums.h \
gtkeventbox.h \
gtkfilesel.h \
gtkfixed.h \
gtkfontsel.h \
gtkframe.h \
gtkgamma.h \
gtkgc.h \
gtkhandlebox.h \
gtkhbbox.h \
gtkhbox.h \
gtkhpaned.h \
gtkhruler.h \
gtkhscale.h \
gtkhscrollbar.h \
gtkhseparator.h \
gtkhsv.h \
gtkiconfactory.h \
gtkimage.h \
gtkimcontext.h \
gtkimmodule.h \
gtkimmulticontext.h \
gtkinputdialog.h \
gtkinvisible.h \
gtkitem.h \
gtkitemfactory.h \
gtklabel.h \
gtklayout.h \
gtklist.h \
gtklistitem.h \
gtkliststore.h \
gtkmain.h \
gtkmenu.h \
gtkmenubar.h \
gtkmenufactory.h \
gtkmenuitem.h \
gtkmenushell.h \
gtkmessagedialog.h \
gtkmisc.h \
gtkmodelsimple.h \
gtknotebook.h \
gtkoldeditable.h \
gtkobject.h \
gtkoptionmenu.h \
gtkpacker.h \
gtkpaned.h \
gdk-pixbuf-loader.h \
gtkpixmap.h \
gtkplug.h \
gtkpreview.h \
gtkprivate.h \
gtkprogress.h \
gtkprogressbar.h \
gtkradiobutton.h \
gtkradiomenuitem.h \
gtkrange.h \
gtkrc.h \
gtkruler.h \
gtkscale.h \
gtkscrollbar.h \
gtkscrolledwindow.h \
gtkselection.h \
gtkseparator.h \
gtksignal.h \
gtksocket.h \
gtkspinbutton.h \
gtkstyle.h \
gtkstatusbar.h \
gtkstock.h \
gtktable.h \
gtktearoffmenuitem.h \
gtktextbuffer.h \
gtktextchild.h \
gtktextdisplay.h \
gtktextiter.h \
gtktextlayout.h \
gtktextmark.h \
gtktexttag.h \
gtktexttagtable.h \
gtktextview.h \
gtktext.h \
gtktipsquery.h \
gtktogglebutton.h \
gtktoolbar.h \
gtktooltips.h \
gtktree.h \
gtktreeitem.h \
gtktreemodel.h \
gtktreemodelsort.h \
gtktreeselection.h \
gtktreestore.h \
gtktreeview.h \
gtktreeviewcolumn.h \
gtktypeutils.h \
gtkvbbox.h \
gtkvbox.h \
gtkviewport.h \
gtkvpaned.h \
gtkvruler.h \
gtkvscale.h \
gtkvscrollbar.h \
gtkvseparator.h \
gtkwidget.h \
gtkwindow.h
# More headers to use when autogenerating.
gdk_headers = \
..\gdk\gdkcc.h \
..\gdk\gdkcolor.h \
..\gdk\gdkcursor.h \
..\gdk\gdkdnd.h \
..\gdk\gdkdrawable.h \
..\gdk\gdkevents.h \
..\gdk\gdkfont.h \
..\gdk\gdkgc.h \
..\gdk\gdkim.h \
..\gdk\gdkimage.h \
..\gdk\gdkinput.h \
..\gdk\gdkpixmap.h \
..\gdk\gdkproperty.h \
..\gdk\gdkregion.h \
..\gdk\gdkrgb.h \
..\gdk\gdkselection.h \
..\gdk\gdktypes.h \
..\gdk\gdkvisual.h \
..\gdk\gdkwindow.h
..\config.h : ..\config.h.win32
copy ..\config.h.win32 ..\config.h
GENERATED = gtk.defs gtktypebuiltins.h gtktypebuiltins_vars.c gtktypebuiltins_ids.c gtktypebuiltins_evals.c gtkmarshal.h gtkmarshal.c
#
# Generated source files:
#
generated : $(GENERATED)
$(TOUCH) generated
gtk.defs : makeenums.pl gtk-boxed.defs $(gtk_public_h_sources) $(gdk_headers)
$(PERL) makeenums.pl defs $(gtk_public_h_sources) $(gdk_headers) >gd.tmp
copy gd.tmp+gtk-boxed.defs gtk.defs
@erase gd.tmp
# generate type identifier header (GTK_TYPE_WIDGET_FLAGS)
gtktypebuiltins.h: gtk.defs maketypes.awk
$(AWK) -f maketypes.awk gtk.defs macros >gtktypebuiltins.h
# generate type identifier variables (GTK_TYPE_WIDGET_FLAGS)
gtktypebuiltins_vars.c: gtk.defs maketypes.awk
$(AWK) -f maketypes.awk gtk.defs variables >gtktypebuiltins_vars.c
# generate type entries for type-id registration
gtktypebuiltins_ids.c: gtk.defs maketypes.awk
$(AWK) -f maketypes.awk gtk.defs entries >gtktypebuiltins_ids.c
# generate enum value arrays
gtktypebuiltins_evals.c: makeenums.pl gtk.defs
$(PERL) makeenums.pl arrays $(gtk_public_h_sources) $(gdk_headers) >gtktypebuiltins_evals.c
2000-10-27 21:39:26 +00:00
gtkmarshal.h : gtkmarshal.list
glib-genmarshal --prefix=gtk_marshal gtkmarshal.list --header >gtkmarshal.h
gtkmarshal.c : gtkmarshal.list
glib-genmarshal --prefix=gtk_marshal gtkmarshal.list --body >gtkmarshal.c
#
# Linking:
#
gtk-win32-$(GTK_VER).dll : $(gtk_OBJECTS) gtk.def
$(CC) $(CFLAGS) -LD -Fegtk-win32-$(GTK_VER).dll $(gtk_OBJECTS) $(GDK_LIBS) $(GDK_PIXBUF_LIBS) $(PANGO_LIBS) $(INTL_LIBS) $(GLIB_LIBS) gdi32.lib user32.lib advapi32.lib $(LDFLAGS) /def:gtk.def
# General rule for compiling the objects into the DLL
.c.obj :
$(CC) $(CFLAGS) -GD -c -DGTK_COMPILATION -DG_LOG_DOMAIN=\"Gtk\" $<
#
# Test programs:
#
testcalendar.exe : gtk-win32-$(GTK_VER).dll testcalendar.obj
$(CC) $(CFLAGS) testcalendar.obj $(GTK_LIBS) $(GDK_LIBS) $(PANGO_LIBS) $(GLIB_LIBS) $(LDFLAGS)
# Must have separate rules for these objects that don't go in the DLL
testcalendar.obj : testcalendar.c
$(CC) $(CFLAGS) -c -DG_LOG_DOMAIN=\"testcalendar\" testcalendar.c
testdnd.exe : gtk-win32-$(GTK_VER).dll testdnd.obj
$(CC) $(CFLAGS) testdnd.obj $(GTK_LIBS) $(GDK_LIBS) $(GLIB_LIBS) $(LDFLAGS)
testdnd.obj : testdnd.c
$(CC) $(CFLAGS) -c -DG_LOG_DOMAIN=\"testdnd\" testdnd.c
testgtk.exe : gtk-win32-$(GTK_VER).dll testgtk.obj
$(CC) $(CFLAGS) testgtk.obj $(GTK_LIBS) $(GDK_LIBS) $(GLIB_LIBS) $(PANGO_LIBS) $(LDFLAGS)
testgtk.obj : testgtk.c
$(CC) $(CFLAGS) -c -DG_LOG_DOMAIN=\"testgtk\" testgtk.c
testinput.exe : gtk-win32-$(GTK_VER).dll testinput.obj
$(CC) $(CFLAGS) testinput.obj $(GTK_LIBS) $(GDK_LIBS) $(GLIB_LIBS) $(LDFLAGS)
testinput.obj : testinput.c
$(CC) $(CFLAGS) -c -DG_LOG_DOMAIN=\"testinput\" testinput.c
testrgb.exe : gtk-win32-$(GTK_VER).dll testrgb.obj
$(CC) $(CFLAGS) testrgb.obj $(GTK_LIBS) $(GDK_LIBS) $(GLIB_LIBS) $(LDFLAGS)
testrgb.obj : testrgb.c
$(CC) $(CFLAGS) -c -DG_LOG_DOMAIN=\"testrgb\" testrgb.c
testselection.exe : gtk-win32-$(GTK_VER).dll testselection.obj
$(CC) $(CFLAGS) testselection.obj $(GTK_LIBS) $(GDK_LIBS) $(GLIB_LIBS) $(LDFLAGS)
testselection.obj : testselection.c
$(CC) $(CFLAGS) -c -DG_LOG_DOMAIN=\"testselection\" testselection.c
testtext.exe : gtk-win32-$(GTK_VER).dll testtext.obj
$(CC) $(CFLAGS) testtext.obj $(PANGO_LIBS) $(GDK_PIXBUF_LIBS) $(GTK_LIBS) $(GDK_LIBS) $(GLIB_LIBS) $(LDFLAGS)
testtext.obj : testtext.c
$(CC) $(CFLAGS) -c -DG_LOG_DOMAIN=\"testtext\" testtext.c
testtextbuffer.exe : gtk-win32-$(GTK_VER).dll testtextbuffer.obj
$(CC) $(CFLAGS) testtextbuffer.obj $(GDK_PIXBUF_LIBS) $(GTK_LIBS) $(GDK_LIBS) $(GLIB_LIBS) $(LDFLAGS)
testtextbuffer.obj : testtextbuffer.c
$(CC) $(CFLAGS) -c -DG_LOG_DOMAIN=\"testtextbuffer\" testtextbuffer.c
testthreads.exe : gtk-win32-$(GTK_VER).dll testthreads.obj
$(CC) $(CFLAGS) testthreads.obj $(GTK_LIBS) $(GDK_LIBS) $(GLIB_LIBS) $(PTHREAD_LIBS) $(LDFLAGS)
testthreads.obj : testthreads.c
$(CC) $(CFLAGS) $(PTHREAD_CFLAGS) -c -DG_LOG_DOMAIN=\"testthreads\" -DUSE_PTHREADS=1 testthreads.c
simple.exe : gtk-win32-$(GTK_VER).dll simple.obj
$(CC) $(CFLAGS) simple.obj $(GTK_LIBS) $(GDK_LIBS) $(GLIB_LIBS) $(LDFLAGS)
simple.obj : simple.c
$(CC) $(CFLAGS) -c -DG_LOG_DOMAIN=\"simple\" simple.c
makefile.msc: makefile.msc.in
sed -e s,@GTK[_]MAJOR_VERSION@,@GTK_MAJOR_VERSION@, \
-e s,@GTK[_]MINOR_VERSION@,@GTK_MINOR_VERSION@, \
-e 's,@GTK[_]VERSION@,@GTK_VERSION@,' \
-e 's,@GDK_PIXBUF[_]MAJOR@,@GDK_PIXBUF_MAJOR@,' \
-e 's,@GDK_PIXBUF[_]MINOR@,@GDK_PIXBUF_MINOR@,' <makefile.msc.in >$@