summaryrefslogtreecommitdiff
path: root/plugins/dfinput
diff options
context:
space:
mode:
authoriCatButler <i.am.catbutler@gmail.com>2018-03-19 07:39:08 +0000
committerGitHub <noreply@github.com>2018-03-19 07:39:08 +0000
commit6f76041029393c6823973a29426b28c8c2d0b064 (patch)
tree13c1bb5215c2510a7c430b59bc22df666cd2fbf3 /plugins/dfinput
parent768332417644451d38ce1a737465656c7cc75de3 (diff)
parent128d6afb179756513860187cf5e31d84d6d8cac4 (diff)
downloadpcsxr-6f76041029393c6823973a29426b28c8c2d0b064.tar.gz
Merge pull request #7 from loathingKernel/sync-with-codeplex
Sync with codeplex
Diffstat (limited to 'plugins/dfinput')
-rw-r--r--plugins/dfinput/CMakeLists.txt82
-rw-r--r--plugins/dfinput/Makefile.am43
2 files changed, 82 insertions, 43 deletions
diff --git a/plugins/dfinput/CMakeLists.txt b/plugins/dfinput/CMakeLists.txt
new file mode 100644
index 00000000..4899b85c
--- /dev/null
+++ b/plugins/dfinput/CMakeLists.txt
@@ -0,0 +1,82 @@
+message(STATUS "* Configuring dfinput")
+
+include(GlibCompileResourcesSupport)
+
+#deps
+
+find_package(GLib REQUIRED)
+if(NOT GLib_FOUND)
+ message(FATAL_ERROR "GLIB2 library not found")
+endif(NOT GLib_FOUND)
+include_directories(${GLib_INCLUDE_DIRS})
+
+find_package(GTK3 REQUIRED)
+if(NOT GTK3_FOUND)
+ message(FATAL_ERROR "GTK3 library not found")
+endif(NOT GTK3_FOUND)
+include_directories(${GTK3_INCLUDE_DIRS})
+set(GTK_LIBRARIES ${GTK3_LIBRARY} ${GDK3_LIBRARY} ${GDKPixbuf_LIBRARY} ${Pango_LIBRARY} ${Cairo_LIBRARY} ${GObject_LIBRARY} ${GLib_LIBRARY} ${GIO_LIBRARY})
+
+set(USE_SDL2 0)
+find_package(SDL2)
+if(NOT SDL2_FOUND)
+ find_package(SDL)
+ if(NOT SDL_FOUND)
+ message(FATAL_ERROR "SDL or SDL2 library not found")
+ else(NOT SDL_FOUND)
+ message(STATUS "Using SDL")
+ include_directories(${SDL_INCLUDE_DIR})
+ endif(NOT SDL_FOUND)
+else(NOT SDL2_FOUND)
+ set(USE_SDL2 1)
+ message(STATUS "Using SDL2")
+ include_directories(${SDL2_INCLUDE_DIR})
+endif(NOT SDL2_FOUND)
+
+find_package(X11 REQUIRED)
+find_package(Threads REQUIRED)
+
+#defs
+add_definitions(-DLOCALE_DIR="${CMAKE_INSTALL_FULL_DATAROOTDIR}/locale/" -DPSEMU_DATA_DIR="${CMAKE_INSTALL_FULL_DATAROOTDIR}/psemu" -DDEF_PLUGIN_DIR="${CMAKE_INSTALL_FULL_LIBDIR}/games/psemu")
+
+#sources
+set(PLUGIN_SRCS
+ analog.c
+ cfg.c
+ pad.c
+ sdljoy.c
+ util.c
+ xkb.c
+)
+
+set(GUI_SRCS
+ cfg-gtk.c
+)
+
+
+#resources
+set(RESOURCE_LIST
+ ${CMAKE_CURRENT_SOURCE_DIR}/dfinput.ui
+)
+
+
+compile_gresources(RESOURCE_FILE
+ XML_OUT
+ TYPE EMBED_C
+ PREFIX /org/pcsxr/dfinput
+ SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}
+ RESOURCES ${RESOURCE_LIST})
+
+add_custom_target(dfinput_resource DEPENDS ${RESOURCE_FILE})
+
+include_directories(${CMAKE_SOURCE_DIR}/libpcsxcore ${X11_X11_INCLUDE_PATH})
+add_library(DFInput MODULE ${PLUGIN_SRCS})
+target_link_libraries(DFInput ${SDL_LIBRARY} ${SDL2_LIBRARY} ${X11_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT})
+
+
+add_executable(cfgDFInput ${GUI_SRCS} ${RESOURCE_FILE})
+add_dependencies(cfgDFInput dfinput_resource)
+target_link_libraries(cfgDFInput ${GTK_LIBRARIES} ${SDL_LIBRARY} ${SDL2_LIBRARY} ${X11_LIBRARIES})
+
+install(TARGETS DFInput LIBRARY DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}/games/psemu)
+install(TARGETS cfgDFInput RUNTIME DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR}/games/psemu)
diff --git a/plugins/dfinput/Makefile.am b/plugins/dfinput/Makefile.am
deleted file mode 100644
index 458259c5..00000000
--- a/plugins/dfinput/Makefile.am
+++ /dev/null
@@ -1,43 +0,0 @@
-bindir = @libdir@/games/psemu/
-libdir = @libdir@/games/psemu/
-
-lib_LTLIBRARIES = libDFInput.la
-
-libDFInput_la_SOURCES = cfg.c pad.c pad.h sdljoy.c xkb.c analog.c util.c util.h
-libDFInput_la_LDFLAGS = -module -avoid-version
-libDFInput_la_LIBADD = -lpthread -lX11 $(SDL2_LIBS) $(SDL_LIBS)
-
-AM_CPPFLAGS = -DLOCALE_DIR=\"${datadir}/locale/\" \
- -DDATADIR=\"${datadir}/psemu/\" \
- $(GTK3_CFLAGS) \
- -I../../include -I$(top_srcdir)/libpcsxcore $(SDL2_CFLAGS) $(SDL_CFLAGS)
-
-bin_PROGRAMS = cfgDFInput
-cfgDFInput_SOURCES = cfg-gtk.c pad.h GtkResources.c GtkResources.h
-cfgDFInput_LDADD = $(GTK3_LIBS) $(SDL2_LIBS) $(SDL_LIBS) -lX11
-
-# gresource.xml is dynamically generated in CMake. Mirror that here in a static way.
-define gresource_xml =
-<?xml version="1.0" encoding="UTF-8"?>
-<gresources>
- <gresource prefix="/org/pcsxr/dfinput">
- <file>dfinput.ui</file>
- </gresource>
-</gresources>
-endef
-
-dfinput.gresource.xml:
- $(file >$@,$(gresource_xml))
-dfinput_gresource: dfinput.gresource.xml
- $(shell $(GLIB_COMPILE_RESOURCES) --sourcedir=$(srcdir) --generate-dependencies $(srcdir)/$<)
-GtkResources.c: dfinput.gresource.xml $(dfinput_gresource)
- $(AM_V_GEN) $(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=$(srcdir) --generate-source --c-name dfinput $<
-GtkResources.h: dfinput.gresource.xml $(dfinput_gresource)
- $(AM_V_GEN) $(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=$(srcdir) --generate-header --c-name dfinput $<
-
-
-#glade_DATA = dfinput.ui
-#gladedir = $(datadir)/psemu/
-EXTRA_DIST = $(glade_DATA)
-
-CLEANFILES = dfinput.gresource.xml GtkResources.c GtkResources.h