# HG changeset patch # User Matti Hamalainen # Date 1491531100 -10800 # Node ID 200ec310660ae9437d7e8187c1be32d07a007901 # Parent 08c0d5116e82ad1560424c1dcb54e0274f24a5b3 Begin revamp of the buildsystem, don't use qmake anymore. diff -r 08c0d5116e82 -r 200ec310660a Makefile --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Makefile Fri Apr 07 05:11:40 2017 +0300 @@ -0,0 +1,38 @@ +# +# Configuration settings for Linux and generic UNIX +# See other Makefile.* files for more options. +# + +# Miscellaneous +QT5_PREFIX = +BINTOOL_PREFIX = +PREFIX = /usr/local +BINPATH = ./ +OBJPATH = obj/unix/ +EXEEXT = + +# Compiler flags and linker flags +DEFINES = -DQT_DEPRECATED_WARNINGS -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_SQL_LIB -DQT_CORE_LIB +INCPATH = -I. \ + -I/usr/include/x86_64-linux-gnu/qt5 \ + -I/usr/include/x86_64-linux-gnu/qt5/QtWidgets \ + -I/usr/include/x86_64-linux-gnu/qt5/QtGui \ + -I/usr/include/x86_64-linux-gnu/qt5/QtSql \ + -I/usr/include/x86_64-linux-gnu/qt5/QtCore \ + -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64 + +QT_RCC = rcc + +QT_MOC = moc +QT_MOC_FLAGS = + +QT_UIC = uic +QT_UIC_FLAGS = + +CFLAGS += -pipe -O2 -Wall -W -D_REENTRANT -fPIC +CXXFLAGS += -pipe -O2 -Wall -W -D_REENTRANT -fPIC +LDFLAGS += -Wl,-O1 +LIBS += -L/usr/X11R6/lib64 -lQt5Widgets -lQt5Gui -lQt5Sql -lQt5Core -lGL -lpthread + + +include Makefile.gen diff -r 08c0d5116e82 -r 200ec310660a Makefile.cross-mingw-win32 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Makefile.cross-mingw-win32 Fri Apr 07 05:11:40 2017 +0300 @@ -0,0 +1,56 @@ +# +# For win32 version cross-compilation with MinGW suite @ Linux +# + +# Miscellaneous +QT5_PREFIX = /misc/packages/qt5-src/qtbase +BINTOOL_PREFIX = i686-w64-mingw32- +PREFIX = +BINPATH = win32/ +OBJPATH = obj/win32/ +EXEEXT = .exe + +# Compiler flags and linker flags +DEFINES = -DUNICODE -DQT_DEPRECATED_WARNINGS -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_SQL_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN +INCPATH = -I. \ + -I$(QT5_PREFIX)/include \ + -I$(QT5_PREFIX)/include/QtWidgets \ + -I$(QT5_PREFIX)/include/QtGui \ + -I$(QT5_PREFIX)/include/QtSql \ + -I$(QT5_PREFIX)/include/QtCore \ + -I$(QT5_PREFIX)/mkspecs/win32-g++ + +QT_RCC = $(QT5_PREFIX)/bin/rcc + +QT_MOC = $(QT5_PREFIX)/bin/moc +QT_MOC_FLAGS = --include $(OBJPATH)/moc_predefs.h + +QT_UIC = $(QT5_PREFIX)/bin/uic +QT_UIC_FLAGS = + +CFLAGS += -pipe -fno-keep-inline-dllexport -O2 -Wall -Wextra +CXXFLAGS += -pipe -fno-keep-inline-dllexport -O2 -frtti -Wall -Wextra -fexceptions -mthreads +LDFLAGS += -Wl,-s -Wl,-subsystem,windows -mthreads +LIBS = -lglu32 -lopengl32 -lgdi32 -luser32 -lmingw32 \ + -L$(QT5_PREFIX)/lib $(QT5_PREFIX)/lib/libqtmain.a \ + -lshell32 \ + $(QT5_PREFIX)/lib/libQt5Widgets.a \ + $(QT5_PREFIX)/lib/libQt5Gui.a \ + $(QT5_PREFIX)/lib/libQt5Sql.a \ + $(QT5_PREFIX)/lib/libQt5Core.a + + +include Makefile.gen + +### +### Windows specific targets +### +$(OBJPATH)moc_predefs.h: $(QT5_PREFIX)/mkspecs/features/data/dummy.cpp + @$(CXX) $(CXXFLAGS) -dM -E -o $@ $< + +#resource.rc: resource.rc.in $VERSION +# sed -e "s/@VERSION@/$(NN_VERSION)/g;s/@VERSION_COM@/$(NN_VERSION_COM)/g;s/@ICON@/$(ICON)/g;s#@EXE@#$(notdir $(NNCHAT_BIN))#g" < $< > $@ + +#resource.o: resource.rc +# $(WINDRES) $< -O coff -o $@ + \ No newline at end of file diff -r 08c0d5116e82 -r 200ec310660a Makefile.gen --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Makefile.gen Fri Apr 07 05:11:40 2017 +0300 @@ -0,0 +1,84 @@ + +CC = $(BINTOOL_PREFIX)gcc +CXX = $(BINTOOL_PREFIX)g++ +AR = $(BINTOOL_PREFIX)ar +RANLIB = $(BINTOOL_PREFIX)ranlib +INSTALL ?= install +MKDIR ?= mkdir +MKDIR_P ?= $(MKDIR) -p + + +SYNTILISTA_BIN=$(BINPATH)Syntilista$(EXEEXT) +SYNTILISTA_OBJS=main.o qrc_Syntilista.o moc_main.o + +LOGO_SVG ?= kampuscafe4.svg + +TARGETS = $(SYNTILISTA_BIN) +NOBUILD_TARGETS += $(OBJPATH) $(BINPATH) +NOINST_TARGETS += qrc_Syntilista.cpp +# moc_main.cpp + + + +## +## Target rules +## +all: $(NOBUILD_TARGETS) $(NOINST_TARGETS) $(TARGETS) + + +moc_%.cpp: %.h + @echo " Qt::MOC $@ $<" + @$(QT_MOC) $(DEFINES) $(QT_MOC_FLAGS) $(INCPATH) $< -o $@ + +ui_%.h: %.ui + @echo " Qt:UIC $@ $<" + @$(QT_UIC) $(QT_UIC_FLAGS) $< -o $@ + + +$(OBJPATH) $(BINPATH): + @echo " MKDIR $@" + @$(MKDIR_P) $@ + +$(OBJPATH)%.o: %.cpp %.h + @echo " CXX $@" + @$(CXX) $(CXXFLAGS) $(DEFINES) $(INCPATH) -c -o $@ $< + +$(OBJPATH)%.o: %.cpp + @echo " CXX $@" + @$(CXX) $(CXXFLAGS) $(DEFINES) $(INCPATH) -c -o $@ $< + + +## +## Application rules +## +icon-%.png: $(LOGO_SVG) + inkscape --export-area-page -w $(patsubst icon-%.png,%,$@) -h $(patsubst icon-%.png,%,$@) -e "$@" "$<" + +logo.png: $(LOGO_SVG) + inkscape --export-area-page -w 300 -h 280 -e "$@" "$<" + + +qrc_Syntilista.cpp: Syntilista.qrc logo.png icon-16.png icon-32.png icon-48.png icon-64.png + @echo " Qt:RCC $@ $<" + @$(QT_RCC) -name "Syntilista" $< -o $@ + +$(OBJPATH)main.o: main.cpp main.h ui_mainwindow.h ui_editperson.h + @echo " CXX $@" + @$(CXX) $(CXXFLAGS) $(DEFINES) $(INCPATH) -c -o $@ $< + + +$(SYNTILISTA_BIN): $(addprefix $(OBJPATH),$(SYNTILISTA_OBJS)) + @echo " LINK $@" + @$(CXX) $(LDFLAGS) -o $@ $+ $(LIBS) + + +## +## Special targets +## +clean: + $(RM) $(TARGETS) $(NOINST_TARGETS) $(OBJPATH)*.o + +distclean: clean + $(RM) *~ core *.core + +.PHONY: clean distclean all diff -r 08c0d5116e82 -r 200ec310660a Syntilista.pro --- a/Syntilista.pro Thu Apr 06 16:03:13 2017 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,34 +0,0 @@ -#------------------------------------------------- -# -# Project created by QtCreator 2017-03-22T15:22:46 -# -#------------------------------------------------- - -QT += core gui sql - -greaterThan(QT_MAJOR_VERSION, 4): QT += widgets - -TARGET = Syntilista -TEMPLATE = app - -# The following define makes your compiler emit warnings if you use -# any feature of Qt which as been marked as deprecated (the exact warnings -# depend on your compiler). Please consult the documentation of the -# deprecated API in order to know how to port your code away from it. -DEFINES += QT_DEPRECATED_WARNINGS - -# You can also make your code fail to compile if you use deprecated APIs. -# In order to do so, uncomment the following line. -# You can also select to disable deprecated APIs only up to a certain version of Qt. -#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 - - -SOURCES += main.cpp - -HEADERS += main.h - -FORMS += mainwindow.ui \ - editperson.ui - -RESOURCES += \ - Syntilista.qrc