Skip to content

Commit

Permalink
MAINT: Use separate directory for auxiliary files
Browse files Browse the repository at this point in the history
  • Loading branch information
Krzmbrzl committed Sep 10, 2022
1 parent 4b6aabe commit 406ce93
Show file tree
Hide file tree
Showing 23 changed files with 92 additions and 76 deletions.
2 changes: 2 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -175,6 +175,8 @@ if(plugins AND client)
add_subdirectory(plugins)
endif()

add_subdirectory(auxiliary_files)

if(packaging)
file(COPY
${CMAKE_SOURCE_DIR}/installer/gpl.txt
Expand Down
36 changes: 36 additions & 0 deletions auxiliary_files/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Copyright 2022 The Mumble Developers. All rights reserved.
# Use of this source code is governed by a BSD-style license
# that can be found in the LICENSE file at the root of the
# Mumble source tree or at <https://www.mumble.info/LICENSE>.

if(client)
# Install Mumble man files
install(FILES "man_files/mumble.1" DESTINATION "${MUMBLE_INSTALL_MANDIR}" COMPONENT doc)

if(UNIX AND NOT APPLE)
configure_file("config_files/info.mumble.Mumble.appdata.xml.in" "${CMAKE_BINARY_DIR}/info.mumble.Mumble.appdata.xml")
configure_file("config_files/info.mumble.Mumble.desktop.in" "${CMAKE_BINARY_DIR}/info.mumble.Mumble.desktop")
install(FILES "${CMAKE_BINARY_DIR}/info.mumble.Mumble.appdata.xml" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/metainfo")
install(FILES "${CMAKE_BINARY_DIR}/info.mumble.Mumble.desktop" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/applications")
endif()
endif()

if(server)
file(COPY "mumble_server.ini" DESTINATION ${CMAKE_BINARY_DIR})
file(COPY "config_files/mumble-server.conf" DESTINATION ${CMAKE_CURRENT_BINARY_DIR})

if(UNIX)
# Install Murmur man files
install(FILES "man_files/mumble-server.1" DESTINATION "${MUMBLE_INSTALL_MANDIR}" COMPONENT doc)
install(FILES "man_files/mumble-server-user-wrapper.1" DESTINATION "${MUMBLE_INSTALL_MANDIR}" COMPONENT doc)
endif()
endif()
if(overlay)
if(UNIX)
# install overlay script
install(PROGRAMS "run_scripts/mumble-overlay" DESTINATION "${MUMBLE_INSTALL_SCRIPTDIR}")

# install overlay man-files
install(FILES "man_files/mumble-overlay.1" DESTINATION "${MUMBLE_INSTALL_MANDIR}" COMPONENT doc)
endif()
endif()
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/><!-- Win 7 -->
<supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}"/><!-- Win 8 -->
<supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}"/><!-- Win 8.1 -->
<supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"/><!-- Win 10 -->
<supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"/><!-- Win 10 & 11 -->
</application>
</compatibility>
</assembly>
84 changes: 42 additions & 42 deletions scripts/murmur.ini → auxiliary_files/mumble_server.ini
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
; Murmur configuration file.
; Mumble server configuration file.
;
; General notes:
; * Settings in this file are default settings and many of them can be overridden
Expand All @@ -12,10 +12,10 @@
; NOT regex = \w* BUT regex = \\w*

; Path to database. If blank, will search for
; murmur.sqlite in default locations or create it if not found.
; mumble_server.sqlite in default locations or create it if not found.
database=

; Murmur defaults to using SQLite with its default rollback journal.
; The server defaults to using SQLite with its default rollback journal.
; In some situations, using SQLite's write-ahead log (WAL) can be
; advantageous.
; If you encounter slowdowns when moving between channels and similar
Expand All @@ -26,13 +26,13 @@ database=
;
; 0 - Use SQLite's default rollback journal.
; 1 - Use write-ahead log with synchronous=NORMAL.
; If Murmur crashes, the database will be in a consistent state, but
; If the server crashes, the database will be in a consistent state, but
; the most recent changes might be lost if the operating system did
; not write them to disk yet. This option can improve Murmur's
; not write them to disk yet. This option can improve the server's
; interactivity on busy servers, or servers with slow storage.
; 2 - Use write-ahead log with synchronous=FULL.
; All database writes are synchronized to disk when they are made.
; If Murmur crashes, the database will be include all completed writes.
; If the server crashes, the database will be include all completed writes.
;sqlite_wal=0

; If you wish to use something other than SQLite, you'll need to set the name
Expand All @@ -45,19 +45,19 @@ database=
;dbPassword=
;dbHost=
;dbPort=
;dbPrefix=murmur_
;dbPrefix=mumble_server_
;dbOpts=

; Murmur defaults to not using D-Bus. If you wish to use dbus, which is one of the
; RPC methods available in Murmur, please specify so here.
; The server defaults to not using D-Bus. If you wish to use dbus, which is one of the
; RPC methods available in the server, please specify so here.
;
;dbus=session

; Alternate D-Bus service name. Only use if you are running distinct
; murmurd processes connected to the same D-Bus daemon.
; mumble server processes connected to the same D-Bus daemon.
;dbusservice=net.sourceforge.mumble.murmur

; If you want to use ZeroC Ice to communicate with Murmur, you need
; If you want to use ZeroC Ice to communicate with the server, you need
; to specify the endpoint to use. Since there is no authentication
; with ICE, you should only use it if you trust all the users who have
; shell access to your machine.
Expand All @@ -79,13 +79,13 @@ ice="tcp -h 127.0.0.1 -p 6502"
;icesecretread=
icesecretwrite=

; Specifies the file Murmur should log to. By default, Murmur
; logs to the file 'murmur.log'. If you leave this field blank
; on Unix-like systems, Murmur will force itself into foreground
; Specifies the file the server should log to. By default the server
; logs to the file 'mumble_server.log'. If you leave this field blank
; on Unix-like systems, the server will force itself into foreground
; mode which logs to the console.
;logfile=murmur.log
;logfile=mumble_server.log

; If set, Murmur will write its process ID to this file
; If set, the server will write its process ID to this file
; when running in daemon mode (when the -fg flag is not
; specified on the command line). Only available on
; Unix-like systems.
Expand All @@ -98,7 +98,7 @@ icesecretwrite=
; Welcome message sent to clients when they connect.
; If the welcome message is set to an empty string,
; no welcome message will be sent to clients.
welcometext="<br />Welcome to this server running <b>Murmur</b>.<br />Enjoy your stay!<br />"
welcometext="<br />Welcome to this server running <b>Mumble</b>.<br />Enjoy your stay!<br />"

; The welcometext can also be read from an external file which might be useful
; if you want to specify a rather lengthy text. If a value for welcometext is
Expand All @@ -109,7 +109,7 @@ welcometext="<br />Welcome to this server running <b>Murmur</b>.<br />Enjoy your
port=64738

; Specific IP or hostname to bind to.
; If this is left blank (default), Murmur will bind to all available addresses.
; If this is left blank (default), the server will bind to all available addresses.
;host=

; Password to join server.
Expand All @@ -119,8 +119,8 @@ serverpassword=
; to send speech at.
bandwidth=558000

; Murmur and Mumble are usually pretty good about cleaning up hung clients, but
; occasionally one will get stuck on the server. The timeout setting will cause
; The Mumble client and server are usually pretty good about cleaning up hung clients,
; but occasionally one will get stuck on the server. The timeout setting will cause
; a periodic check of all clients who haven't communicated with the server in
; this many seconds - causing zombie clients to be disconnected.
;
Expand Down Expand Up @@ -193,7 +193,7 @@ allowping=true
; moved into that channel instead. Note that this is the numeric ID of the
; channel, which can be a little tricky to get (you'll either need to use an
; RPC mechanism, watch the console of a debug client, or root around through
; the Murmur Database to get it).
; the server database to get it).
;
;defaultchannel=0

Expand All @@ -217,7 +217,7 @@ allowping=true
; Allow clients to use HTML in messages, user comments and channel descriptions?
;allowhtml=true

; Murmur retains the per-server log entries in an internal database which
; The server retains the per-server log entries in an internal database which
; allows it to be accessed over D-Bus/ICE.
; How many days should such entries be kept?
; Set to 0 to keep forever, or -1 to disable logging to the DB.
Expand Down Expand Up @@ -249,18 +249,18 @@ allowping=true
;bonjour=true

; If you have a proper SSL certificate, you can provide the filenames here.
; Otherwise, Murmur will create its own certificate automatically.
; Otherwise, the server will create its own certificate automatically.
;sslCert=
;sslKey=

; If the keyfile specified above is encrypted with a passphrase, you can enter
; it in this setting. It must be plaintext, so you may wish to adjust the
; permissions on your murmur.ini file accordingly.
; permissions on your mumble_server.ini file accordingly.
;sslPassPhrase=

; If your certificate is signed by an authority that uses a sub-signed or
; "intermediate" certificate, you probably need to bundle it with your
; certificate in order to get Murmur to accept it. You can either concatenate
; certificate in order to get the server to accept it. You can either concatenate
; the two certificates into one file, or you can put it in a file by itself and
; put the path to that PEM-file in sslCA.
;sslCA=
Expand All @@ -270,13 +270,13 @@ allowping=true
; Hellman parameters for all virtual servers.
;
; Instead of pointing sslDHParams to a file, you can also use the option
; to specify a named set of Diffie-Hellman parameters for Murmur to use.
; Murmur comes bundled with the Diffie-Hellman parameters from RFC 7919.
; to specify a named set of Diffie-Hellman parameters for the server to use.
; The server comes bundled with the Diffie-Hellman parameters from RFC 7919.
; These parameters are available by using the following names:
;
; @ffdhe2048, @ffdhe3072, @ffdhe4096, @ffdhe6144, @ffdhe8192
;
; By default, Murmur uses @ffdhe2048.
; By default, the server uses @ffdhe2048.
;sslDHParams=@ffdhe2048

; The sslCiphers option chooses the cipher suites to make available for use
Expand All @@ -289,21 +289,21 @@ allowping=true
; It is recommended that you try your cipher string using 'openssl ciphers <string>'
; before setting it here, to get a feel for which cipher suites you will get.
;
; After setting this option, it is recommend that you inspect your Murmur log
; to ensure that Murmur is using the cipher suites that you expected it to.
; After setting this option, it is recommend that you inspect your server log
; to ensure that the server is using the cipher suites that you expected it to.
;
; Note: Changing this option may impact the backwards compatibility of your
; Murmur server, and can remove the ability for older Mumble clients to be able
; server, and can remove the ability for older Mumble clients to be able
; to connect to it.
;sslCiphers=EECDH+AESGCM:EDH+aRSA+AESGCM:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:AES256-SHA:AES128-SHA

; If Murmur is started as root, which user should it switch to?
; This option is ignored if Murmur isn't started with root privileges.
; If the server is started as root, which user should it switch to?
; This option is ignored if the server isn't started with root privileges.
;uname=

; By default, in log files and in the user status window for privileged users,
; Mumble will show IP addresses - in some situations you may find this unwanted
; behavior. If obfuscate is set to true, Murmur will randomize the IP addresses
; behavior. If obfuscate is set to true, the server will randomize the IP addresses
; of connecting users.
;
; The obfuscate function only affects the log file and DOES NOT effect the user
Expand Down Expand Up @@ -361,19 +361,19 @@ allowping=true
;kdfiterations=-1

; In order to prevent misconfigured, impolite or malicious clients from
; affecting the low-latency of other users, Murmur has a rudimentary global-ban
; affecting the low-latency of other users, the server has a rudimentary global-ban
; system. It's configured using the autobanAttempts, autobanTimeframe and
; autobanTime settings.
;
; If a client attempts autobanAttempts connections in autobanTimeframe seconds,
; they will be banned for autobanTime seconds. This is a global ban, from all
; virtual servers on the Murmur process. It will not show up in any of the
; virtual servers on the server process. It will not show up in any of the
; ban-lists on the server, and they can't be removed without restarting the
; Murmur process - just let them expire. A single, properly functioning client
; server process - just let them expire. A single, properly functioning client
; should not trip these bans.
;
; To disable, set autobanAttempts or autobanTimeframe to 0. Commenting these
; settings out will cause Murmur to use the defaults:
; settings out will cause the server to use the defaults:
;
; To avoid autobanning successful connection attempts from the same IP address,
; set autobanSuccessfulConnections=false.
Expand All @@ -386,22 +386,22 @@ allowping=true
; Enables logging of group changes. This means that every time a group in a
; channel changes, the server will log all groups and their members from before
; the change and after the change. Default is false. This option was introduced
; with Murmur 1.4.0.
; with Mumble server 1.4.0.
;
;loggroupchanges=false

; Enables logging of ACL changes. This means that every time the ACL in a
; channel changes, the server will log all ACLs from before the change and
; after the change. Default is false. This option was introduced with Murmur
; 1.4.0.
; after the change. Default is false. This option was introduced with
; Mumble server 1.4.0.
;
;logaclchanges=false

; A flag dictating whether clients may use the built-in recording function. Newer
; clients will respect this option in the UI (e.g. disable the recording feature
; in the UI). Additionally any client that tries to start a recording is kicked
; from the server with a corresponding message, if recording is disabled.
; Default is true. This option was introduced with Murmur 1.5.0.
; Default is true. This option was introduced with Mumble server 1.5.0.
;
; allowRecording=true

Expand Down
File renamed without changes.
File renamed without changes.
2 changes: 1 addition & 1 deletion helpers/g15helper/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ configure_file("${CMAKE_CURRENT_SOURCE_DIR}/g15helper.rc.in" "${G15HELPER_RC}")
get_target_property(MUMBLE_SOURCE_DIR mumble SOURCE_DIR)

add_executable(g15-helper WIN32
"${MUMBLE_SOURCE_DIR}/mumble.appcompat.manifest"
"${CMAKE_SOURCE_DIR}/auxiliary_files/mumble.appcompat.manifest"
"${G15HELPER_RC}"
)

Expand Down
10 changes: 4 additions & 6 deletions overlay/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ if(BUILD_OVERLAY_XCOMPILE)
LANGUAGES CXX
)

include("${PARENT_SOURCE_DIR}/cmake/compiler.cmake")
include("${MUMBLE_SOURCE_ROOT}/cmake/compiler.cmake")
endif()

set(DX11_PIXEL_SHADERS "overlay11.ps")
Expand Down Expand Up @@ -118,7 +118,7 @@ if(BUILD_OVERLAY_XCOMPILE)
target_include_directories(overlay
PRIVATE
${Boost_INCLUDE_DIRS}
${PARENT_SOURCE_DIR}
${MUMBLE_SOURCE_ROOT}
${CMAKE_CURRENT_BINARY_DIR}
)
else()
Expand Down Expand Up @@ -156,8 +156,7 @@ if(64_BIT AND MSVC)
CMAKE_GENERATOR ${CMAKE_GENERATOR}
CMAKE_ARGS -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}
"-DVCPKG_TARGET_TRIPLET=x86-windows-static-md"
"-DPARENT_SOURCE_DIR=${CMAKE_SOURCE_DIR}"
"-DMUMBLE_SOURCE_DIR=${CMAKE_SOURCE_DIR}/src/mumble"
"-DMUMBLE_SOURCE_ROOT=${CMAKE_SOURCE_DIR}"
"-DMUMBLE_BINARY_DIR=${CMAKE_BINARY_DIR}"
"-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}"
# Force MSVC, because CMake prioritizes MinGW over it.
Expand All @@ -179,8 +178,7 @@ if(64_BIT AND MSVC)
-G ${CMAKE_GENERATOR}
-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}
"-DVCPKG_TARGET_TRIPLET=x86-windows-static-md"
"-DPARENT_SOURCE_DIR=${CMAKE_SOURCE_DIR}"
"-DMUMBLE_SOURCE_DIR=${CMAKE_SOURCE_DIR}/src/mumble"
"-DMUMBLE_SOURCE_ROOT=${CMAKE_SOURCE_DIR}"
"-DMUMBLE_BINARY_DIR=${CMAKE_BINARY_DIR}"
"-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}"
# Force MSVC, because CMake prioritizes MinGW over it.
Expand Down
6 changes: 3 additions & 3 deletions overlay/overlay_exe/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,14 @@ else()
endif()

if(NOT BUILD_OVERLAY_XCOMPILE)
get_target_property(MUMBLE_SOURCE_DIR mumble SOURCE_DIR)
set(MUMBLE_SOURCE_ROOT "${CMAKE_SOURCE_DIR}")
endif()

add_executable(overlay_exe WIN32
"overlay_exe.cpp"
"overlay_exe.h"

"${MUMBLE_SOURCE_DIR}/mumble.appcompat.manifest"
"${MUMBLE_SOURCE_ROOT}/auxiliary_files/mumble.appcompat.manifest"
"${OVERLAY_EXE_RC}"
)

Expand All @@ -33,7 +33,7 @@ set_target_properties(overlay_exe PROPERTIES OUTPUT_NAME ${OUTPUT_NAME})
if(BUILD_OVERLAY_XCOMPILE)
set_target_properties(overlay_exe PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${MUMBLE_BINARY_DIR})

target_include_directories(overlay_exe PRIVATE ${PARENT_SOURCE_DIR}/overlay)
target_include_directories(overlay_exe PRIVATE ${MUMBLE_SOURCE_ROOT}/overlay)
else()
set_target_properties(overlay_exe PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})

Expand Down
5 changes: 0 additions & 5 deletions overlay_gl/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -129,8 +129,3 @@ endif()
# install native overlay library
install(TARGETS overlay_gl LIBRARY DESTINATION "${MUMBLE_INSTALL_LIBDIR}")

# install overlay script
install(PROGRAMS "${CMAKE_SOURCE_DIR}/scripts/mumble-overlay" DESTINATION "${MUMBLE_INSTALL_SCRIPTDIR}")

# install overlay man-files
install(FILES "${CMAKE_SOURCE_DIR}/man/mumble-overlay.1" DESTINATION "${MUMBLE_INSTALL_MANDIR}" COMPONENT doc)
4 changes: 0 additions & 4 deletions src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -258,11 +258,7 @@ endif()
if(client)
add_subdirectory(mumble)

configure_file("${CMAKE_SOURCE_DIR}/scripts/info.mumble.Mumble.appdata.xml.in" "${CMAKE_BINARY_DIR}/info.mumble.Mumble.appdata.xml")

if(UNIX AND NOT APPLE)
install(FILES "${CMAKE_BINARY_DIR}/info.mumble.Mumble.appdata.xml" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/metainfo")
install(FILES "${CMAKE_SOURCE_DIR}/scripts/info.mumble.Mumble.desktop" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/applications")
install(FILES "${CMAKE_SOURCE_DIR}/icons/mumble.svg" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/scalable/apps")
install(FILES "${CMAKE_SOURCE_DIR}/icons/mumble_256x256.png" DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/256x256/apps" RENAME "mumble.png")
endif()
Expand Down
Loading

0 comments on commit 406ce93

Please sign in to comment.