3 # ---------------------------------------------------------------------------
5 PACKAGE = @PACKAGE_TARNAME@
6 VERSION = @PACKAGE_VERSION@
8 # Implementation of a minimal C++ class framework for use with the
9 # Microsoft Windows Application Programming Interface.
13 # Written by Keith Marshall <keithmarshall@users.sourceforge.net>
14 # Copyright (C) 2012, 2013, MinGW.org Project.
16 # ---------------------------------------------------------------------------
18 # Permission is hereby granted, free of charge, to any person obtaining a
19 # copy of this software and associated documentation files (the "Software"),
20 # to deal in the Software without restriction, including without limitation
21 # the rights to use, copy, modify, merge, publish, distribute, sublicense,
22 # and/or sell copies of the Software, and to permit persons to whom the
23 # Software is furnished to do so, subject to the following conditions:
25 # The above copyright notice, this permission notice, and the following
26 # disclaimer shall be included in all copies or substantial portions of
29 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
30 # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
31 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
32 # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
33 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
34 # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
35 # DEALINGS IN THE SOFTWARE.
37 # ---------------------------------------------------------------------------
43 exec_prefix = @exec_prefix@
44 includedir = @includedir@
47 # Compiler identification.
56 # Archive librarian identification.
63 # Default target is a statically linkable object library, comprising
64 # the following object modules.
66 LIBWTK_OBJECTS = wtkbase.$(OBJEXT) wtkmain.$(OBJEXT) wndproc.$(OBJEXT) \
67 dlgproc.$(OBJEXT) wtkchild.$(OBJEXT) wtkexcept.$(OBJEXT) errtext.$(OBJEXT) \
68 sashctrl.$(OBJEXT) hsashctl.$(OBJEXT) vsashctl.$(OBJEXT) strres.$(OBJEXT) \
69 wtkraise.$(OBJEXT) wtkalign.$(OBJEXT)
71 libwtklite.a: $(LIBWTK_OBJECTS)
72 $(AR) $(ARFLAGS) $@ $^
74 # Compilation and dependency tracking...
76 DEPFLAGS = -MMD -MP $(CPPFLAGS)
79 # Implementations for horizontal and vertical sash bar controls are
80 # compiled from common source, so need explicit build rules.
82 HSASH_IMPLEMENTATION = -D HSASH_IMPLEMENTATION ${srcdir}/sashctrl.cpp
83 VSASH_IMPLEMENTATION = -D VSASH_IMPLEMENTATION ${srcdir}/sashctrl.cpp
85 hsashctl.$(OBJEXT): sashctrl.cpp sashctrl.o
86 $(CXX) -c $(DEPFLAGS) $(CXXFLAGS) -o $@ $(HSASH_IMPLEMENTATION)
88 vsashctl.$(OBJEXT): sashctrl.cpp sashctrl.o
89 $(CXX) -c $(DEPFLAGS) $(CXXFLAGS) -o $@ $(VSASH_IMPLEMENTATION)
91 # Other object modules may be implicitly compiled.
94 $(CC) -c $(DEPFLAGS) $(CFLAGS) -o $@ $<
97 $(CXX) -c $(DEPFLAGS) $(CXXFLAGS) -o $@ $<
104 INSTALL_DATA = @INSTALL_DATA@
106 install: install-dirs install-headers install-libs
109 $(MKDIR_P) ${includedir} ${libdir}
111 install-headers: wtklite.h wtkdefs.h wtkalign.h wtkexcept.h
112 $(INSTALL_DATA) $^ ${includedir}
114 install-libs: libwtklite.a
115 $(INSTALL_DATA) $^ ${libdir}
117 # Distribution rules.
119 TARNAME = $(PACKAGE)-$(VERSION)-mingw32
120 SRCDIST_FILES = ChangeLog configure configure.ac Makefile.in install-sh \
121 wtklite.h wtkdefs.h wtkalign.h wtkexcept.h wtkbase.cpp wtkmain.cpp wtkchild.cpp \
122 wndproc.cpp dlgproc.cpp sashctrl.cpp wtkexcept.cpp errtext.cpp strres.cpp \
123 wtkraise.cpp wtkalign.c
125 dist: srcdist devdist
127 srcdist: $(SRCDIST_FILES)
128 rm -rf $(PACKAGE)-$(VERSION)
129 $(MKDIR_P) $(PACKAGE)-$(VERSION)
130 cp -p $^ $(PACKAGE)-$(VERSION)
131 tar cf - $(PACKAGE)-$(VERSION) | xz -c > $(TARNAME)-src.tar.xz
132 rm -rf $(PACKAGE)-$(VERSION)
136 $(MAKE) --no-print-directory install prefix=`pwd`/tmp
137 cd tmp; tar cf - * | xz -c > ../$(TARNAME)-dev.tar.xz
140 # Standard clean-up rules.
143 rm -f *.$(OBJEXT) *.a
146 rm -f *.d config.* Makefile
148 maintainer_clean realclean: distclean
149 rm -rf autom4te.cache
152 # $RCSfile$: end of file