X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=Makefile.am;h=51c6d33af04ca93453ab6bdf93038b6aae892782;hp=f42f132553489270881540927a89a113dfec8f44;hb=484122c3458ae5ff5236dd4a6e6ddffcffa08336;hpb=10bc4cd469fc677892b07748ec85804ca120825f diff --git a/Makefile.am b/Makefile.am index f42f13255..51c6d33af 100644 --- a/Makefile.am +++ b/Makefile.am @@ -46,9 +46,9 @@ LIBGUDEV_CURRENT=2 LIBGUDEV_REVISION=0 LIBGUDEV_AGE=2 -LIBSYSTEMD_CURRENT=5 -LIBSYSTEMD_REVISION=1 -LIBSYSTEMD_AGE=5 +LIBSYSTEMD_CURRENT=6 +LIBSYSTEMD_REVISION=0 +LIBSYSTEMD_AGE=6 # The following four libraries only exist for compatibility reasons, # their version info should not be bumped anymore @@ -111,6 +111,7 @@ catalogdir=$(prefix)/lib/systemd/catalog kernelinstalldir = $(prefix)/lib/kernel/install.d factory_etcdir = $(prefix)/share/factory/etc factory_pamdir = $(prefix)/share/factory/etc/pam.d +sd_bootlibdir = $(prefix)/lib/systemd/sd-boot # And these are the special ones for / rootprefix=@rootprefix@ @@ -190,6 +191,7 @@ AM_CPPFLAGS = \ -DSYSTEM_SHUTDOWN_PATH=\"$(systemshutdowndir)\" \ -DSYSTEM_SLEEP_PATH=\"$(systemsleepdir)\" \ -DSYSTEMD_KBD_MODEL_MAP=\"$(pkgdatadir)/kbd-model-map\" \ + -DSYSTEMD_LANGUAGE_FALLBACK_MAP=\"$(pkgdatadir)/language-fallback-map\" \ -DX_SERVER=\"$(bindir)/X\" \ -DUDEVLIBEXECDIR=\"$(udevlibexecdir)\" \ -DPOLKIT_AGENT_BINARY_PATH=\"$(bindir)/pkttyagent\" \ @@ -1433,7 +1435,7 @@ EXTRA_DIST += \ test/c.service \ test/daughter.service \ test/d.service \ - test/end.service \ + test/end.service.in \ test/e.service \ test/f.service \ test/grandchild.service \ @@ -2477,15 +2479,21 @@ systemd_efi_boot_generator_LDADD = \ # ------------------------------------------------------------------------------ bootctl_SOURCES = \ - src/boot/boot.h \ - src/boot/boot-loader.h \ - src/boot/bootctl.c \ - src/boot/boot-loader.c \ - src/boot/boot-efi.c + src/boot/bootctl.c + +bootctl_CPPFLAGS = \ + $(AM_CPPFLAGS) \ + -DEFI_MACHINE_TYPE_NAME=\"$(EFI_MACHINE_TYPE_NAME)\" \ + -DSD_BOOTLIBDIR=\"$(sd_bootlibdir)\" + +bootctl_CFLAGS = \ + $(AM_CFLAGS) \ + $(BLKID_CFLAGS) bootctl_LDADD = \ libsystemd-shared.la \ - libsystemd-internal.la + libsystemd-internal.la \ + $(BLKID_LIBS) bin_PROGRAMS += \ bootctl @@ -2496,6 +2504,128 @@ dist_bashcompletion_DATA += \ dist_zshcompletion_DATA += \ shell-completion/zsh/_bootctl +# ------------------------------------------------------------------------------ +if HAVE_GNUEFI +efi_cppflags = \ + $(EFI_CPPFLAGS) \ + -I$(top_builddir) -include config.h \ + -I$(EFI_INC_DIR)/efi \ + -I$(EFI_INC_DIR)/efi/$(EFI_ARCH) \ + -DEFI_MACHINE_TYPE_NAME=\"$(EFI_MACHINE_TYPE_NAME)\" + +efi_cflags = \ + $(EFI_CFLAGS) \ + -Wall \ + -Wextra \ + -nostdinc \ + -ggdb -O0 \ + -fpic \ + -fshort-wchar \ + -nostdinc \ + -ffreestanding \ + -fno-strict-aliasing \ + -fno-stack-protector \ + -Wsign-compare \ + -mno-sse \ + -mno-mmx + +if ARCH_X86_64 +efi_cflags += \ + -mno-red-zone \ + -DEFI_FUNCTION_WRAPPER \ + -DGNU_EFI_USE_MS_ABI +endif + +efi_ldflags = \ + $(EFI_LDFLAGS) \ + -T $(EFI_LDS_DIR)/elf_$(EFI_ARCH)_efi.lds \ + -shared \ + -Bsymbolic \ + -nostdlib \ + -znocombreloc \ + -L $(EFI_LIB_DIR) \ + $(EFI_LDS_DIR)/crt0-efi-$(EFI_ARCH).o + +# ------------------------------------------------------------------------------ +sd_boot_headers = \ + src/sd-boot/util.h \ + src/sd-boot/console.h \ + src/sd-boot/graphics.h \ + src/sd-boot/pefile.h + +sd_boot_sources = \ + src/sd-boot/util.c \ + src/sd-boot/console.c \ + src/sd-boot/graphics.c \ + src/sd-boot/pefile.c \ + src/sd-boot/sd-boot.c + +sd_boot_objects = $(addprefix $(top_builddir)/,$(sd_boot_sources:.c=.o)) +sd_boot_solib = $(top_builddir)/src/sd-boot/sd_boot.so +sd_boot = sd-boot$(EFI_MACHINE_TYPE_NAME).efi + +sd_bootlib_DATA = $(sd_boot) +CLEANFILES += $(sd_boot_objects) $(sd_boot_solib) $(sd_boot) +EXTRA_DIST += $(sd_boot_sources) $(sd_boot_headers) + +$(top_builddir)/src/sd-boot/%.o: $(top_srcdir)/src/sd-boot/%.c $(addprefix $(top_srcdir)/,$(sd_boot_headers)) + @$(MKDIR_P) $(top_builddir)/src/sd-boot/ + $(AM_V_CC)$(EFI_CC) $(efi_cppflags) $(efi_cflags) -c $< -o $@ + +$(sd_boot_solib): $(sd_boot_objects) + $(AM_V_CCLD)$(LD) $(efi_ldflags) $(sd_boot_objects) \ + -o $@ -lefi -lgnuefi $(shell $(CC) -print-libgcc-file-name); \ + nm -D -u $@ | grep ' U ' && exit 1 || : + +$(sd_boot): $(sd_boot_solib) + $(AM_V_GEN) objcopy -j .text -j .sdata -j .data -j .dynamic \ + -j .dynsym -j .rel -j .rela -j .reloc \ + --target=efi-app-$(EFI_ARCH) $< $@ + +# ------------------------------------------------------------------------------ +stub_headers = \ + src/sd-boot/util.h \ + src/sd-boot/pefile.h \ + src/sd-boot/linux.h + +stub_sources = \ + src/sd-boot/util.c \ + src/sd-boot/pefile.c \ + src/sd-boot/linux.c \ + src/sd-boot/stub.c + +stub_objects = $(addprefix $(top_builddir)/,$(stub_sources:.c=.o)) +stub_solib = $(top_builddir)/src/sd-boot/stub.so +stub = linux$(EFI_MACHINE_TYPE_NAME).efi.stub + +sd_bootlib_DATA += $(stub) +CLEANFILES += $(stub_objects) $(stub_solib) $(stub) +EXTRA_DIST += $(stub_sources) $(stub_headers) + +$(top_builddir)/src/sd-boot/%.o: $(top_srcdir)/src/sd-boot/%.c $(addprefix $(top_srcdir)/,$(stub_headers)) + @$(MKDIR_P) $(top_builddir)/src/sd-boot/ + $(AM_V_CC)$(EFI_CC) $(efi_cppflags) $(efi_cflags) -c $< -o $@ + +$(stub_solib): $(stub_objects) + $(AM_V_CCLD)$(LD) $(efi_ldflags) $(stub_objects) \ + -o $@ -lefi -lgnuefi $(shell $(CC) -print-libgcc-file-name); \ + nm -D -u $@ | grep ' U ' && exit 1 || : + +$(stub): $(stub_solib) + $(AM_V_GEN) objcopy -j .text -j .sdata -j .data -j .dynamic \ + -j .dynsym -j .rel -j .rela -j .reloc \ + --target=efi-app-$(EFI_ARCH) $< $@ + +# ------------------------------------------------------------------------------ +CLEANFILES += test-efi-disk.img +EXTRA_DIST += test/test-efi-create-disk.sh + +test-efi-disk.img: $(sd_boot) $(stub) test/test-efi-create-disk.sh + $(AM_V_GEN)test/test-efi-create-disk.sh + +test-efi: test-efi-disk.img + $(QEMU) -machine accel=kvm -m 1024 -bios $(QEMU_BIOS) -snapshot test-efi-disk.img +endif endif # ------------------------------------------------------------------------------ @@ -3553,13 +3683,14 @@ dist_udevrules_DATA += \ rules/50-udev-default.rules \ rules/60-drm.rules \ rules/60-keyboard.rules \ - rules/70-mouse.rules \ rules/60-persistent-storage-tape.rules \ rules/60-persistent-serial.rules \ rules/60-persistent-input.rules \ rules/60-persistent-alsa.rules \ rules/60-persistent-storage.rules \ rules/64-btrfs.rules \ + rules/70-mouse.rules \ + rules/70-touchpad.rules \ rules/75-net-description.rules \ rules/75-tty-description.rules \ rules/78-sound-card.rules \ @@ -3751,7 +3882,8 @@ dist_udevhwdb_DATA = \ hwdb/20-OUI.hwdb \ hwdb/20-net-ifname.hwdb \ hwdb/60-keyboard.hwdb \ - hwdb/70-mouse.hwdb + hwdb/70-mouse.hwdb \ + hwdb/70-touchpad.hwdb EXTRA_DIST += \ units/systemd-hwdb-update.service.in @@ -4988,10 +5120,8 @@ BUSNAMES_TARGET_WANTS += \ org.freedesktop.locale1.busname dist_pkgdata_DATA += \ - src/locale/kbd-model-map - -dist_noinst_SCRIPT = \ - src/locale/generate-kbd-model-map + src/locale/kbd-model-map \ + src/locale/language-fallback-map localectl_SOURCES = \ src/locale/localectl.c @@ -5583,13 +5713,16 @@ libsystemd_networkd_core_la_SOURCES = \ src/network/networkd-netdev-bond.c \ src/network/networkd-netdev-bridge.c \ src/network/networkd-link.c \ + src/network/networkd-link-bus.c \ src/network/networkd-ipv4ll.c \ src/network/networkd-dhcp4.c \ src/network/networkd-dhcp6.c \ src/network/networkd-network.c \ + src/network/networkd-network-bus.c \ src/network/networkd-address.c \ src/network/networkd-route.c \ src/network/networkd-manager.c \ + src/network/networkd-manager-bus.c \ src/network/networkd-fdb.c \ src/network/networkd-address-pool.c @@ -5664,14 +5797,33 @@ tests += \ test-network \ test-network-tables +dist_systemunit_DATA += \ + units/systemd-networkd.socket + nodist_systemunit_DATA += \ units/systemd-networkd.service \ units/systemd-networkd-wait-online.service +dist_systemunit_DATA_busnames += \ + units/org.freedesktop.network1.busname + +dist_dbussystemservice_DATA += \ + src/network/org.freedesktop.network1.service + +dist_dbuspolicy_DATA += \ + src/network/org.freedesktop.network1.conf + GENERAL_ALIASES += \ + $(systemunitdir)/systemd-networkd.socket $(pkgsysconfdir)/system/sockets.target.wants/systemd-networkd.socket \ $(systemunitdir)/systemd-networkd.service $(pkgsysconfdir)/system/multi-user.target.wants/systemd-networkd.service \ $(systemunitdir)/systemd-networkd-wait-online.service $(pkgsysconfdir)/system/network-online.target.wants/systemd-networkd-wait-online.service +SYSTEM_UNIT_ALIASES += \ + systemd-networkd.service dbus-org.freedesktop.network1.service + +BUSNAMES_TARGET_WANTS += \ + org.freedesktop.network1.busname + EXTRA_DIST += \ src/network/networkd-network-gperf.gperf \ src/network/networkd-netdev-gperf.gperf \ @@ -6556,7 +6708,7 @@ endif # # Require python when making dist # -.PHONY: dist-check-python +.PHONY: dist-check-python dist-check-compat-libs dist-check-help dist-check-python: if !HAVE_PYTHON @echo "*** python and python-lxml module must be installed and enabled in order to make dist" @@ -6569,6 +6721,14 @@ if !ENABLE_COMPAT_LIBS @false endif +dist-check-help: $(rootbin_PROGRAMS) $(bin_PROGRAMS) + for i in $(abspath $^); do \ + if $$i --help | grep -v 'default:' | grep -E -q '.{80}.' ; then \ + echo "$(basename $$i) --help output is too wide:"; \ + $$i --help | awk 'length > 80' | grep -E --color=yes '.{80}'; \ + exit 1; \ + fi; done + dist: dist-check-python dist-check-compat-libs # check "broken" platforms limited toolchains for link breakage before we release