Files
ModemManager/data/Makefile.am
Aleksander Morgado e7a6bb7504 data,fcc-unlock: add example unlock scripts
Added scripts for Foxconn SDX55, Quectel EM120, and several old Sierra
Wireless manufactured devices:
 * Installed but not used by default, the user needs to setup manual
   links from ${pkgdatadir}/fcc-unlock.available.d, to
   ${pkgsysconfdir}/fcc-unlock.d in order to enable them.
 * Installed with rights only for the owner, so that the dispatcher in
   ModemManager can validate them.
 * They rely on $PATH to find the qmicli/mbimcli tools.

In addition to these scripts, per-vid:pid links are created in the
same ${pkgdatadir}/fcc-unlock.available.d directory, specifying which
are the specific devices that require the FCC unlock operation.

This patch also creates the ${pkgsysconfdir}/fcc-unlock.d and
${pkglibdir}/fcc-unlock.d directories where ModemManager looks for the
enabled tools.

Note that the meson setup doesn't support creating/deleting links
officially yet, so we use a workaround using meson.add_install_script
that is not perfect (i.e. doesn't handle the symlink removal during
uninstall). See https://github.com/mesonbuild/meson/issues/1602
2021-11-18 11:20:41 +01:00

109 lines
3.1 KiB
Makefile

SUBDIRS = . fcc-unlock tests
edit = @sed \
-e 's|@sbindir[@]|$(sbindir)|g' \
-e 's|@sysconfdir[@]|$(sysconfdir)|g' \
-e 's|@localstatedir[@]|$(localstatedir)|g' \
-e 's|@libexecdir[@]|$(libexecdir)|g' \
-e 's|@MM_POLKIT_SERVICE[@]|$(MM_POLKIT_SERVICE)|g'
# DBus Service file
dbusservicedir = $(DBUS_SYS_DIR)
dbusservice_DATA = org.freedesktop.ModemManager1.conf
dbusservice_file_polkit = org.freedesktop.ModemManager1.conf.polkit
dbusservice_file_nopolkit = org.freedesktop.ModemManager1.conf.nopolkit
if WITH_POLKIT
org.freedesktop.ModemManager1.conf: $(top_srcdir)/data/$(dbusservice_file_polkit)
cp -f $(top_srcdir)/data/$(dbusservice_file_polkit) $(dbusservice_DATA)
else
org.freedesktop.ModemManager1.conf: $(top_srcdir)/data/$(dbusservice_file_nopolkit)
cp -f $(top_srcdir)/data/$(dbusservice_file_nopolkit) $(dbusservice_DATA)
endif
# systemd unit file
systemdsystemunitdir = $(SYSTEMD_UNIT_DIR)
systemdsystemunit_in_files = ModemManager.service.in
if HAVE_SYSTEMD
systemdsystemunit_DATA = ModemManager.service
ModemManager.service: ModemManager.service.in
$(edit) $< >$@
endif
# DBus Activation file
dbusactivationdir = $(datadir)/dbus-1/system-services
dbusactivation_DATA = org.freedesktop.ModemManager1.service
dbusactivation_in_files = org.freedesktop.ModemManager1.service.in
org.freedesktop.ModemManager1.service: org.freedesktop.ModemManager1.service.in
$(edit) $< >$@
# Icon
icondir=${datadir}/icons/hicolor/22x22/apps
icon_DATA = ModemManager.png
# Logos
logos = \
ModemManager-logo-square.svg ModemManager-logo-square.png \
ModemManager-logo-wide.svg ModemManager-logo-wide.png \
ModemManager-logo-wide-text.svg ModemManager-logo-wide-text.png
# Diagrams
diagrams = \
ModemManager-states.png \
ModemManager-interface-initialization-sequence.png \
ModemManager-interface-initialization-sequence-subclassed.png
# Polkit
# build file with translations, which we will include in dist
org.freedesktop.ModemManager1.policy.in: org.freedesktop.ModemManager1.policy.in.in
$(AM_V_GEN) GETTEXTDATADIR=$(top_srcdir)/data $(MSGFMT) --xml -d $(top_srcdir)/po/ -o $@ --template $<
if WITH_POLKIT
# build with requested user policy
org.freedesktop.ModemManager1.policy: org.freedesktop.ModemManager1.policy.in
$(AM_V_GEN) sed -e s,@MM_DEFAULT_USER_POLICY\@,$(MM_DEFAULT_USER_POLICY), $< > $@.tmp && mv $@.tmp $@
polkit_policydir = $(datadir)/polkit-1/actions
polkit_policy_DATA = org.freedesktop.ModemManager1.policy
endif
# Set up pkg-config .pc files for exported libraries
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = \
ModemManager.pc \
mm-glib.pc
MAINTAINERCLEANFILES = \
org.freedesktop.ModemManager1.policy.in
DISTCLEANFILES = \
org.freedesktop.ModemManager1.policy \
$(dbusactivation_DATA) \
$(dbusservice_DATA)
if HAVE_SYSTEMD
DISTCLEANFILES += $(systemdsystemunit_DATA)
endif
EXTRA_DIST = \
its \
org.freedesktop.ModemManager1.policy.in.in \
org.freedesktop.ModemManager1.policy.in \
$(systemdsystemunit_in_files) \
$(dbusactivation_in_files) \
$(dbusservice_file_polkit) \
$(dbusservice_file_nopolkit) \
$(icon_DATA) \
$(logos) \
$(diagrams)