view Makefile.am @ 249:6b2441c776dd

*: merge
author Paper <mrpapersonic@gmail.com>
date Wed, 24 Jan 2024 20:18:59 -0500
parents 1ae4d8b28a5c ed5ab3896666
children c130f47f6f48
line wrap: on
line source

bin_PROGRAMS = minori

minori_locale_ts = \
	rc/locale/en_GB.ts \
	rc/locale/es.ts

.ts.qm:
	@MKDIR_P@ `dirname $@`; \
	@QT_LRELEASE@ $< -qm $@

minori_locale_qm = $(minori_locale_ts:.ts=.qm)

# this has to be in the root build folder
translations.qrc: $(minori_locale_qm)
	printf "<!DOCTYPE rcc><RCC version=\"1.0\">\n\t<qresource prefix=\"locale/\">\n" > $@; \
	for q in $(minori_locale_qm); do \
		printf "\t\t<file alias=\"%s\">%s</file>\n" "`basename $$q`" "$$q" >> $@; \
	done; \
	printf "\t</qresource>\n</RCC>\n" >> $@;

minori_qtrc = \
	$(top_srcdir)/rc/icons/icons.qrc	\
	$(top_srcdir)/rc/player_data.qrc	\
	translations.qrc

if BUILD_WIN

minori_qtrc += $(top_srcdir)/rc/win32/dark/dark.qrc

endif

rc/final_qrc.cc: $(minori_qtrc)
	@QT_RCC@ -o $@ $(minori_qtrc)

minori_qtheaders = \
	include/core/http.h			\
	include/gui/dialog/about.h		\
	include/gui/dialog/information.h		\
	include/gui/dialog/settings.h			\
	include/gui/pages/anime_list.h			\
	include/gui/pages/history.h			\
	include/gui/pages/now_playing.h		\
	include/gui/pages/search.h			\
	include/gui/pages/seasons.h		\
	include/gui/pages/statistics.h		\
	include/gui/pages/torrents.h		\
	include/gui/translate/anilist.h		\
	include/gui/translate/anime.h			\
	include/gui/translate/config.h		\
	include/gui/widgets/anime_info.h		\
	include/gui/widgets/clickable_label.h		\
	include/gui/widgets/graph.h			\
	include/gui/widgets/optional_date.h		\
	include/gui/widgets/poster.h			\
	include/gui/widgets/sidebar.h			\
	include/gui/widgets/text.h		\
	include/gui/locale.h	\
	include/gui/theme.h			\
	include/gui/window.h

noinst_HEADERS = \
	include/core/anime_db.h		\
	include/core/anime.h		\
	include/core/config.h		\
	include/core/date.h		\
	include/core/filesystem.h			\
	include/core/ini.h		\
	include/core/json.h			\
	include/core/session.h			\
	include/core/strings.h			\
	include/core/time.h			\
	include/core/torrent.h		\
	include/library/library.h		\
	include/services/anilist.h		\
	include/services/services.h		\
	include/sys/glib/dark_theme.h	\
	include/sys/osx/dark_theme.h	\
	include/sys/osx/filesystem.h	\
	include/sys/win32/dark_theme.h	\
	include/track/media.h			\
	$(minori_qtheaders)

minori_moc_sources = $(minori_qtheaders:.h=_moc.cc)

if BUILD_GLIB
files_glib = src/sys/glib/dark_theme.cc
cflags_glib = @GIO_CFLAGS@
libs_glib = @GIO_LIBS@
endif

if BUILD_WIN
files_win = src/sys/win32/dark_theme.cc
libs_win = -lole32 -luuid
ldflags_win = -mwindows

if BUILD_WINDRES

wrcflags_version = -DWRC_VERSION=0,`echo $(PACKAGE_VERSION) | @SED@ 's/\([0-9]\{1,\}\)\.\([0-9]\{1,\}\)\.\([0-9]\{1,\}\).*/\1,\2,\3/'`

WRCFLAGS = --use-temp-file -I. -I$(srcdir) $(wrcflags_version) $(CPPFLAGS)
.rc.$(OBJEXT):
	$(WINDRES) $(WRCFLAGS) -i $< -o $@
files_windres=rc/win32/version.rc rc/win32/resource.rc
endif
endif

if BUILD_OSX
files_osx = src/sys/osx/dark_theme.cc src/sys/osx/filesystem.cc src/sys/osx/permissions.cc
cflags_osx = -mmacosx-version-min=10.15
libs_osx = -lobjc
ldflags_osx = -framework Foundation -framework AppKit
endif

minori_SOURCES = \
	src/core/anime_db.cc		\
	src/core/anime.cc		\
	src/core/config.cc		\
	src/core/date.cc		\
	src/core/filesystem.cc		\
	src/core/http.cc		\
	src/core/json.cc		\
	src/core/strings.cc		\
	src/core/time.cc		\
	src/gui/dialog/settings/application.cc		\
	src/gui/dialog/settings/library.cc		\
	src/gui/dialog/settings/recognition.cc		\
	src/gui/dialog/settings/services.cc		\
	src/gui/dialog/settings/torrents.cc		\
	src/gui/dialog/about.cc		\
	src/gui/dialog/information.cc		\
	src/gui/dialog/settings.cc		\
	src/gui/pages/anime_list.cc		\
	src/gui/pages/history.cc		\
	src/gui/pages/now_playing.cc		\
	src/gui/pages/search.cc		\
	src/gui/pages/seasons.cc		\
	src/gui/pages/statistics.cc		\
	src/gui/pages/torrents.cc		\
	src/gui/translate/anilist.cc		\
	src/gui/translate/anime.cc		\
	src/gui/translate/config.cc		\
	src/gui/widgets/anime_info.cc		\
	src/gui/widgets/clickable_label.cc		\
	src/gui/widgets/optional_date.cc		\
	src/gui/widgets/poster.cc		\
	src/gui/widgets/sidebar.cc		\
	src/gui/widgets/text.cc		\
	src/gui/locale.cc		\
	src/gui/theme.cc		\
	src/gui/window.cc		\
	src/library/library.cc		\
	src/services/anilist.cc		\
	src/services/services.cc		\
	src/track/media.cc		\
	src/main.cc		\
	$(files_osx)			\
	$(files_glib)			\
	$(files_win)			\
	$(minori_moc_sources)	\
	rc/final_qrc.cc		\
	$(files_windres)

minori_includes = \
	-I$(top_srcdir)/include \
	-I$(top_srcdir)/dep/animia/include \
	-I$(top_srcdir)/dep/pugixml/src \
	-I$(top_srcdir)/dep/anitomy \
	-I$(top_srcdir)/dep

minori_CPPFLAGS = @LIBCURL_CPPFLAGS@ $(minori_includes)
minori_CXXFLAGS = @QT_CXXFLAGS@ $(cflags_osx) $(cflags_glib) $(cflags_win) -std=c++17
minori_LDFLAGS = $(ldflags_osx) $(ldflags_win)

minori_DEPENDENCIES = dep/pugixml/libpugixml.la dep/animia/libanimia.la dep/anitomy/libanitomy.la
minori_LDADD = $(libs_glib) $(libs_osx) $(libs_win) @LIBCURL@ @QT_LIBS@ dep/pugixml/libpugixml.la dep/animia/libanimia.la dep/anitomy/libanitomy.la

.h_moc.cc:
	@MKDIR_P@ -- `dirname $@`
	@QT_MOC@ -o $@ $(minori_includes) $<

SUFFIXES = .h _moc.cc .ts .qm
SUBDIRS = $(subdirs)
ACLOCAL_AMFLAGS = -I m4