1# Copyright (c) 2017 Dave Freese, W1HKJ (w1hkj AT bellsout DOT net) 2 3bin_PROGRAMS = flcluster 4 5MINGW32_SRC = flcluster-rc.rc include/flclusterrc.h \ 6 include/compat.h compat/getsysinfo.c compat/mingw.c compat/mingw.h 7 8# Build the xmlrpcpp source if libflxmlrpc is not found 9XMLRPCPP_SRC = \ 10 xmlrpcpp/XmlRpcBase64.h \ 11 xmlrpcpp/XmlRpcClient.cpp \ 12 xmlrpcpp/XmlRpcClient.h \ 13 xmlrpcpp/XmlRpcDispatch.cpp \ 14 xmlrpcpp/XmlRpcDispatch.h \ 15 xmlrpcpp/XmlRpcException.h \ 16 xmlrpcpp/XmlRpc.h \ 17 xmlrpcpp/XmlRpcMutex.cpp \ 18 xmlrpcpp/XmlRpcMutex.h \ 19 xmlrpcpp/XmlRpcServerConnection.cpp \ 20 xmlrpcpp/XmlRpcServerConnection.h \ 21 xmlrpcpp/XmlRpcServer.cpp \ 22 xmlrpcpp/XmlRpcServer.h \ 23 xmlrpcpp/XmlRpcServerMethod.cpp \ 24 xmlrpcpp/XmlRpcServerMethod.h \ 25 xmlrpcpp/XmlRpcSocket.cpp \ 26 xmlrpcpp/XmlRpcSocket.h \ 27 xmlrpcpp/XmlRpcSource.cpp \ 28 xmlrpcpp/XmlRpcSource.h \ 29 xmlrpcpp/XmlRpcUtil.cpp \ 30 xmlrpcpp/XmlRpcUtil.h \ 31 xmlrpcpp/XmlRpcValue.cpp \ 32 xmlrpcpp/XmlRpcValue.h 33 34# We distribute these but do not always compile them 35EXTRA_flcluster_SOURCES = $(FLCLUSTER_WIN32_RES_SRC) $(MINGW32_SRC) $(XMLRPCPP_SRC) 36 37flcluster_SOURCES = 38 39if !ENABLE_FLXMLRPC 40 flcluster_SOURCES += $(XMLRPCPP_SRC) 41 flcluster_CPPFLAGS = @FLCLUSTER_BUILD_CPPFLAGS@ 42 flcluster_CXXFLAGS = @FLCLUSTER_BUILD_CXXFLAGS@ 43 flcluster_CFLAGS = $(flcluster_CXXFLAGS) 44 flcluster_LDFLAGS = @FLCLUSTER_BUILD_LDFLAGS@ 45 flcluster_LDADD = @FLCLUSTER_BUILD_LDADD@ 46else 47 flcluster_CPPFLAGS = @FLCLUSTER_BUILD_CPPFLAGS@ @FLXMLRPC_CFLAGS@ 48 flcluster_CXXFLAGS = @FLCLUSTER_BUILD_CXXFLAGS@ @FLXMLRPC_CFLAGS@ 49 flcluster_CFLAGS = $(flcluster_CXXFLAGS) 50 flcluster_LDFLAGS = @FLCLUSTER_BUILD_LDFLAGS@ @FLXMLRPC_CFLAGS@ 51 flcluster_LDADD = @FLCLUSTER_BUILD_LDADD@ 52endif 53 54if MINGW32 55if HAVE_WINDRES 56 flcluster_SOURCES += $(MINGW32_SRC) 57endif 58endif 59 60######################################################################## 61 62 63flcluster_VERSION_MAJOR = @FLCLUSTER_VERSION_MAJOR@ 64flcluster_VERSION_MINOR = @FLCLUSTER_VERSION_MINOR@ 65flcluster_VERSION_PATCH = @FLCLUSTER_VERSION_PATCH@ 66flcluster_VERSION = @FLCLUSTER_VERSION@ 67 68.EXPORT_ALL_VARIABLES: nsisinst appbundle 69 70# Sources that are generated, 71BUILT_SOURCES = 72# not distributed, 73nodist_flcluster_SOURCES = $(BUILT_SOURCES) 74# and deleted by the clean targets 75CLEANFILES = $(BUILT_SOURCES) 76CLEAN_LOCAL = 77 78if MINGW32 79if HAVE_WINDRES 80.rc.o: 81 $(WINDRES) -Iinclude -I../data/win32 $< -O coff $@ 82endif 83endif 84 85install-data-local: 86 if test -f ../data/flcluster.xpm; then \ 87 $(mkinstalldirs) $(DESTDIR)/$(datadir)/pixmaps; \ 88 $(INSTALL_DATA) ../data/flcluster.xpm $(DESTDIR)/$(datadir)/pixmaps; \ 89 fi 90 if test -f ../data/flcluster.desktop; then \ 91 $(mkinstalldirs) $(DESTDIR)/$(datadir)/applications; \ 92 $(INSTALL_DATA) ../data/flcluster.desktop $(DESTDIR)/$(datadir)/applications; \ 93 fi 94 95uninstall-local: 96 rm -f $(DESTDIR)/$(datadir)/pixmaps/flcluster.xpm 97 rm -f $(DESTDIR)/$(datadir)/applications/flcluster.desktop 98 99FL_SRC = dxcluster/dx_dialog.fl 100 101if HAVE_FLUID 102flgen: $(FL_SRC) 103 (cd include; \ 104 for f in $(FL_SRC); do \ 105 c=$${f%.fl}.cxx; \ 106 h=$${f%.fl}.h; \ 107 h=$${h##*/}; \ 108 $(FLUID) -c -o ../$$c -h $$h ../$$f; \ 109 done) 110endif 111 112 113INSTALLER_FILE = flcluster-$(flcluster_VERSION)_setup.exe 114APPBUNDLE=flcluster-$(flcluster_VERSION) 115APPBUNDLE_NOLIBS=$(APPBUNDLE)-nolibs 116 117if HAVE_NSIS 118nsisinst: $(bin_PROGRAMS) 119 sh ../scripts/mknsisinst.sh "../data" . 120 CLEANFILES += $(INSTALLER_FILE) 121endif 122 123if DARWIN 124appbundle: $(bin_PROGRAMS) 125 sh ../scripts/mkappbundle.sh "../data" . 126 CLEAN_LOCAL += $(APPBUNDLE_NOLIBS) $(APPBUNDLE) $(APPBUNDLE)*.dmg 127endif 128 129clean-local: 130 -rm -rf $(CLEAN_LOCAL) 131 132# Sources that we build. It is OK to have headers here. 133flcluster_SOURCES += \ 134 flcluster.cxx \ 135 dxcluster/dx_dialog.cxx \ 136 dxcluster/dxcluster.cxx \ 137 utils/debug.cxx \ 138 utils/socket.cxx \ 139 utils/status.cxx \ 140 utils/threads.cxx \ 141 utils/timeops.cxx \ 142 utils/util.cxx \ 143 utils/xml_io.cxx \ 144 widgets/combo.cxx \ 145 widgets/date.cxx \ 146 widgets/fileselect.cxx \ 147 widgets/flinput2.cxx \ 148 widgets/flslider2.cxx \ 149 widgets/Fl_Text_Buffer_mod.cxx \ 150 widgets/Fl_Text_Editor_mod.cxx \ 151 widgets/Fl_Text_Display_mod.cxx \ 152 widgets/FTextView.cxx \ 153 widgets/icons.cxx \ 154 widgets/pixmaps.cxx \ 155 widgets/pixmaps_tango.cxx \ 156 widgets/font_browser.cxx 157# widgets/calendar.cxx 158 159# Additional source files that are distributed 160EXTRA_DIST = \ 161 config.h \ 162 compat/mingw.c \ 163 compat/mingw.h \ 164 compat/getsysinfo.c \ 165 compat/regex.c \ 166 compat/regex.h \ 167 widgets/flnfc_common.cxx \ 168 dxcluster/arc-help.cxx \ 169 dxcluster/CCC_Commands.cxx \ 170 dxcluster/DXClusterServers.cxx \ 171 dxcluster/DXSpiderCommandReference.cxx \ 172 dxcluster/dx_dialog.fl \ 173 dxcluster/DXSpiderCommandReference.html \ 174 include/ascii.h \ 175 include/calendar.h \ 176 include/combo.h \ 177 include/compat.h \ 178 include/date.h \ 179 include/debug.h \ 180 include/dirent-check.h \ 181 include/dx_dialog.h \ 182 include/dx_cluster.h \ 183 include/fileselect.h \ 184 include/fl_lock.h \ 185 include/flmisc.h \ 186 include/flclusterrc.h \ 187 include/flinput2.h \ 188 include/flslider2.h \ 189 include/font_browser.h \ 190 include/gettext.h \ 191 include/icons.h \ 192 include/flcluster.h \ 193 include/missing_strings.h \ 194 include/socket.h \ 195 include/pixmaps.h \ 196 include/status.h \ 197 include/threads.h \ 198 include/timeops.h \ 199 include/util.h \ 200 include/xml_io.h \ 201 widgets/Fl_Text_Buffer_mod.cxx \ 202 widgets/Fl_Text_Display_mod.cxx \ 203 widgets/Fl_Text_Editor_mod.cxx \ 204 include/Fl_Text_Buffer_mod.H \ 205 include/Fl_Text_Display_mod.H \ 206 include/Fl_Text_Editor_mod.H \ 207 include/FTextView.h 208 209# Additional non-source files that are distributed 210#EXTRA_DIST += \ 211# ../data/template.rtf 212# ../flcluster-doc/flcluster-quick-guide.html 213 214# Additional source files that support non-Linux cross compilation 215EXTRA_DIST += \ 216 ../ChangeLog \ 217 ../data/flcluster.desktop \ 218 ../data/flcluster.png \ 219 ../data/win32/fl_app.nsi \ 220 ../data/win32/flcluster.ico \ 221 ../scripts/buildmxe.sh \ 222 ../scripts/builddist.sh \ 223 ../scripts/mkappbundle.sh \ 224 ../scripts/mknsisinst.sh \ 225 ../data/flcluster.xpm \ 226 ../data/flcluster.png \ 227 ../data/mac/Info.plist.in \ 228 ../data/mac/flcluster.icns \ 229 $(flcluster_WIN32_SRC) \ 230 $(flcluster_FL_SRC) 231