[SailfishDevel] qmake / Makefile - rules missing
Putze Sven
sailfish.os at hardcodes.de
Sat Nov 30 12:12:17 UTC 2013
Hi there,
after I changed the structure inside of a test project, some of the rules in the resulting Makefile are missing. The structure is now as follows:
TestSailfishOS/
├── Makefile
├── TestSailfishOS
├── TestSailfishOS.pro
├── TestSailfishOS.pro.user
├── moc
│ └── moc_qbusinesslogic.cpp
├── model
│ ├── model.pri
│ ├── qt
│ │ ├── qbusinesslogic.cpp
│ │ └── qbusinesslogic.h
│ └── std
│ ├── businesslogic.cpp
│ └── businesslogic.h
├── obj
│ ├── TestSailfishOS.o
│ ├── businesslogic.o
│ ├── moc_qbusinesslogic.o
│ └── qbusinesslogic.o
└── sailfishos
├── TestSailfishOS.cpp
├── TestSailfishOS.desktop
├── TestSailfishOS.png
├── qml
│ ├── TestSailfishOS.qml
│ ├── cover
│ │ └── CoverPage.qml
│ └── pages
│ ├── FirstPage.qml
│ └── SecondPage.qml
├── rpm
│ └── TestSailfishOS.yaml
└── sailfishos.pri
The sailsihos/sailfishos.pri file is a variation of the standard template, just edited with the new path:
# The name of your app.
# NOTICE: name defined in TARGET has a corresponding QML filename.
# If name defined in TARGET is changed, following needs to be
# done to match new name:
# - corresponding QML filename must be changed
# - desktop icon filename must be changed
# - desktop filename must be changed
# - icon definition filename in desktop file must be changed
CONFIG += sailfishapp
SOURCES += sailfishos/TestSailfishOS.cpp
OTHER_FILES += sailfishos/qml/TestSailfishOS.qml \
sailfishos/qml/cover/CoverPage.qml \
sailfishos/qml/pages/FirstPage.qml \
sailfishos/qml/pages/SecondPage.qml \
sailfishos/rpm/TestSailfishOS.spec \
sailfishos/rpm/TestSailfishOS.yaml \
sailfishos/TestSailfishOS.desktop
Compiling works just fine, the moc file, *.o files and finally the binary are built.
But there are missing some rules in the Makefile, which are quite essential for deploying and testing :-) These are missing:
install_qml: first FORCE
@test -d $(INSTALL_ROOT)/usr/share/TestSailfishOS || mkdir -p $(INSTALL_ROOT)/usr/share/TestSailfishOS
-$(INSTALL_DIR) /home/mersdk/QtProjects/TestSailfishOS/qml $(INSTALL_ROOT)/usr/share/TestSailfishOS/
uninstall_qml: FORCE
-$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/TestSailfishOS/qml
-$(DEL_DIR) $(INSTALL_ROOT)/usr/share/TestSailfishOS/
install_desktop: first FORCE
@test -d $(INSTALL_ROOT)/usr/share/applications || mkdir -p $(INSTALL_ROOT)/usr/share/applications
-$(INSTALL_PROGRAM) /home/mersdk/QtProjects/TestSailfishOS/TestSailfishOS.desktop $(INSTALL_ROOT)/usr/share/applications/
uninstall_desktop: FORCE
-$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/applications/TestSailfishOS.desktop
-$(DEL_DIR) $(INSTALL_ROOT)/usr/share/applications/
install_icon: first FORCE
@test -d $(INSTALL_ROOT)/usr/share/icons/hicolor/90x90/apps || mkdir -p $(INSTALL_ROOT)/usr/share/icons/hicolor/90x90/apps
-$(INSTALL_PROGRAM) /home/mersdk/QtProjects/TestSailfishOS/TestSailfishOS.png $(INSTALL_ROOT)/usr/share/icons/hicolor/90x90/apps/
uninstall_icon: FORCE
-$(DEL_FILE) -r $(INSTALL_ROOT)/usr/share/icons/hicolor/90x90/apps/TestSailfishOS.png
-$(DEL_DIR) $(INSTALL_ROOT)/usr/share/icons/hicolor/90x90/apps/
So obviously qmake has a problem when leaving the expected path(s). Is this expected behavior? Is this a bug? Or must I now provide some extra settings in the sailfishos.pri file so that the rules in the Makefile are generated again?
Thanks,
BR.
Sven
More information about the Devel
mailing list