Refactoring linux package build (#1297)

* Move files

* Fix build
This commit is contained in:
Semyon Bezrukov
2024-07-18 18:01:47 +03:00
parent 2821ad6313
commit 8544ab56e0
34 changed files with 116 additions and 401 deletions

26
.gitignore vendored
View File

@ -9,26 +9,16 @@ win-linux/extras/online-installer/build
win-linux/ASCDocumentEditor.build/* win-linux/ASCDocumentEditor.build/*
win-linux/res/gresource.c win-linux/res/gresource.c
win-linux/package/linux/index.html win-linux/package/linux/build
win-linux/package/windows/index.html win-linux/package/linux/deb*/build
win-linux/package/linux/deb*/*.buildinfo
win-linux/package/linux/common/opt win-linux/package/linux/deb*/*.changes
win-linux/package/linux/common/usr/share/applications/variables.m4 win-linux/package/linux/deb*/*.ddeb
win-linux/package/linux/common/usr/share/flyfm/templates/desktopeditors.*.desktop win-linux/package/linux/deb*/*.deb
win-linux/package/linux/common/usr/share/doc/*/* win-linux/package/linux/rpm*/build
win-linux/package/linux/common/help win-linux/package/linux/rpm*/*desktopeditors.spec
/win-linux/package/linux/deb*/build
/win-linux/package/linux/deb*/*.buildinfo
/win-linux/package/linux/deb*/*.changes
/win-linux/package/linux/deb*/*.ddeb
/win-linux/package/linux/deb*/*.deb
win-linux/package/linux/rpm/builddir
win-linux/package/linux/apt-rpm/builddir
win-linux/package/linux/urpmi/builddir
win-linux/package/linux/suse-rpm/builddir
win-linux/package/linux/tar win-linux/package/linux/tar
common/loginpage/res/img/generated/* common/loginpage/res/img/generated/*
common/loginpage/build/plugins/* common/loginpage/build/plugins/*
common/**/node_modules/* common/**/node_modules/*

View File

@ -11,12 +11,13 @@ PUBLISHER_NAME ?= Ascensio System SIA
PUBLISHER_URL ?= http://onlyoffice.com PUBLISHER_URL ?= http://onlyoffice.com
SUPPORT_URL ?= http://support.onlyoffice.com SUPPORT_URL ?= http://support.onlyoffice.com
SUPPORT_MAIL ?= support@onlyoffice.com SUPPORT_MAIL ?= support@onlyoffice.com
SCHEME_HANDLER ?= oo-office
PRODUCT_VERSION ?= 0.0.0 PRODUCT_VERSION ?= 0.0.0
BUILD_NUMBER ?= 0 BUILD_NUMBER ?= 0
PACKAGE_EDITION ?= cool PACKAGE_EDITION ?= cool
BRANDING_DIR ?= $(PWD)/branding BRANDING_DIR ?= .
PACKAGE_NAME := $(COMPANY_NAME_LOW)-$(PRODUCT_NAME_LOW) PACKAGE_NAME := $(COMPANY_NAME_LOW)-$(PRODUCT_NAME_LOW)
PACKAGE_VERSION := $(PRODUCT_VERSION)-$(BUILD_NUMBER) PACKAGE_VERSION := $(PRODUCT_VERSION)-$(BUILD_NUMBER)
@ -35,56 +36,29 @@ ifneq ($(filter aarch%,$(UNAME_M)),)
PLATFORM = linux_arm64 PLATFORM = linux_arm64
endif endif
RPM_BUILD_DIR = $(PWD)/rpm/builddir RPM_BUILD_DIR = rpm/build
APT_RPM_BUILD_DIR = $(PWD)/apt-rpm/builddir RPM_SUSE_BUILD_DIR = rpm-suse/build
URPMI_BUILD_DIR = $(PWD)/urpmi/builddir
SUSE_RPM_BUILD_DIR = $(PWD)/suse-rpm/builddir
TAR_BUILD_DIR = $(PWD)/tar
RPM_PACKAGE_DIR = $(RPM_BUILD_DIR)/RPMS/$(RPM_ARCH) RPM_PACKAGE_DIR = $(RPM_BUILD_DIR)/RPMS/$(RPM_ARCH)
APT_RPM_PACKAGE_DIR = $(APT_RPM_BUILD_DIR)/RPMS/$(RPM_ARCH) RPM_SUSE_PACKAGE_DIR = $(RPM_SUSE_BUILD_DIR)/RPMS/$(RPM_ARCH)
URPMI_PACKAGE_DIR = $(URPMI_BUILD_DIR)/RPMS/$(RPM_ARCH)
SUSE_RPM_PACKAGE_DIR = $(SUSE_RPM_BUILD_DIR)/RPMS/$(RPM_ARCH)
TAR_PACKAGE_DIR = $(TAR_BUILD_DIR)
RPM = $(RPM_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)$(RPM_RELEASE_SUFFIX).$(RPM_ARCH).rpm
APT_RPM = $(APT_RPM_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)$(APT_RPM_RELEASE_SUFFIX).$(RPM_ARCH).rpm
URPMI = $(URPMI_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)$(URPMI_RELEASE_SUFFIX).$(RPM_ARCH).rpm
SUSE_RPM = $(SUSE_RPM_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)$(SUSE_RPM_RELEASE_SUFFIX).$(RPM_ARCH).rpm
DEB = deb/$(PACKAGE_NAME)_$(PACKAGE_VERSION)$(DEB_RELEASE_SUFFIX)_$(DEB_ARCH).deb DEB = deb/$(PACKAGE_NAME)_$(PACKAGE_VERSION)$(DEB_RELEASE_SUFFIX)_$(DEB_ARCH).deb
DEB_ASTRA = deb-astra/$(PACKAGE_NAME)_$(PACKAGE_VERSION)$(DEB_ASTRA_RELEASE_SUFFIX)_$(DEB_ARCH).deb RPM = $(RPM_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)$(RPM_RELEASE_SUFFIX).$(RPM_ARCH).rpm
TAR = $(TAR_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)$(TAR_RELEASE_SUFFIX)-$(TAR_ARCH).tar.xz RPM_SUSE = $(RPM_SUSE_PACKAGE_DIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)$(RPM_SUSE_RELEASE_SUFFIX).$(RPM_ARCH).rpm
HELP_TAR = $(TAR_PACKAGE_DIR)/$(PACKAGE_NAME)-help-$(PACKAGE_VERSION)$(TAR_RELEASE_SUFFIX)-any.tar.xz TAR = tar/$(PACKAGE_NAME)-$(PACKAGE_VERSION)$(TAR_RELEASE_SUFFIX)-$(TAR_ARCH).tar.xz
TAR_HELP = tar/$(PACKAGE_NAME)-help-$(PACKAGE_VERSION)$(TAR_RELEASE_SUFFIX)-any.tar.xz
NEWS_RPM = common/usr/share/doc/$(PACKAGE_NAME)/NEWS NEWS_RPM = build/main/usr/share/doc/$(PACKAGE_NAME)/NEWS
CHANGELOG_RPM = common/usr/share/doc/$(PACKAGE_NAME)/ChangeLog CHANGELOG_RPM = build/main/usr/share/doc/$(PACKAGE_NAME)/ChangeLog
CHANGELOG_DEB = deb/build/debian/changelog CHANGELOG_DEB = deb/build/debian/changelog
CHANGELOG_DEB_ASTRA = deb-astra/build/debian/changelog
DESKTOPEDITORS_PREFIX := $(COMPANY_NAME_LOW)/$(PRODUCT_NAME_LOW) DESKTOPEDITORS_PREFIX := $(COMPANY_NAME_LOW)/$(PRODUCT_NAME_LOW)
DESKTOPEDITORS_EXEC := $(PACKAGE_NAME) DESKTOPEDITORS_EXEC := $(PACKAGE_NAME)
ifneq ($(COMPANY_NAME), ONLYOFFICE)
MEDIAVIEWER_PREFIX := $(COMPANY_NAME_LOW)/mediaviewer
IMAGEVIEWER_EXEC := $(COMPANY_NAME_LOW)-imageviewer
VIDEOPLAYER_EXEC := $(COMPANY_NAME_LOW)-videoplayer
endif
LINUX_DEPS += common/usr/share/applications/variables.m4 BIN_FILES += build/main/usr/bin/$(DESKTOPEDITORS_EXEC)
BIN_FILES += common/usr/bin/$(DESKTOPEDITORS_EXEC) DESKTOP_FILES += build/main/usr/share/applications/$(DESKTOPEDITORS_EXEC).desktop
DESKTOP_FILES += common/usr/share/applications/$(DESKTOPEDITORS_EXEC).desktop
SYMLINK += common/usr/bin/desktopeditors
ifneq ($(COMPANY_NAME), ONLYOFFICE)
BIN_FILES += common/usr/bin/$(IMAGEVIEWER_EXEC)
BIN_FILES += common/usr/bin/$(VIDEOPLAYER_EXEC)
DESKTOP_FILES += common/usr/share/applications/$(IMAGEVIEWER_EXEC).desktop
DESKTOP_FILES += common/usr/share/applications/$(VIDEOPLAYER_EXEC).desktop
DEB_DEPS += common/usr/share/flyfm/templates/desktopeditors.docx.desktop
DEB_DEPS += common/usr/share/flyfm/templates/desktopeditors.xlsx.desktop
DEB_DEPS += common/usr/share/flyfm/templates/desktopeditors.pptx.desktop
endif
LINUX_DEPS += $(BIN_FILES) LINUX_DEPS += $(BIN_FILES)
LINUX_DEPS += $(DESKTOP_FILES) LINUX_DEPS += $(DESKTOP_FILES)
LINUX_DEPS += $(SYMLINK)
LINUX_DEPS += $(CHANGELOG_RPM) LINUX_DEPS += $(CHANGELOG_RPM)
DEB_DEPS += $(CHANGELOG_DEB) DEB_DEPS += $(CHANGELOG_DEB)
@ -99,26 +73,9 @@ DEB_DEPS += deb/build/debian/$(PACKAGE_NAME).dirs
DEB_DEPS += deb/build/debian/$(PACKAGE_NAME).install DEB_DEPS += deb/build/debian/$(PACKAGE_NAME).install
DEB_DEPS += deb/build/debian/$(PACKAGE_NAME).links DEB_DEPS += deb/build/debian/$(PACKAGE_NAME).links
DEB_DEPS += deb/build/debian/$(PACKAGE_NAME)-help.install DEB_DEPS += deb/build/debian/$(PACKAGE_NAME)-help.install
DEB_DEPS += deb/build/package.config
DEB_ASTRA_DEPS += $(CHANGELOG_DEB_ASTRA) SOURCE_DIR := ../../../../build_tools/out/$(PLATFORM)/$(COMPANY_NAME_LOW)
DEB_ASTRA_DEPS += deb-astra/build/debian/compat
DEB_ASTRA_DEPS += deb-astra/build/debian/control
DEB_ASTRA_DEPS += deb-astra/build/debian/postinst
DEB_ASTRA_DEPS += deb-astra/build/debian/postrm
DEB_ASTRA_DEPS += deb-astra/build/debian/prerm
DEB_ASTRA_DEPS += deb-astra/build/debian/rules
DEB_ASTRA_DEPS += deb-astra/build/debian/source/format
DEB_ASTRA_DEPS += deb-astra/build/debian/$(PACKAGE_NAME).dirs
DEB_ASTRA_DEPS += deb-astra/build/debian/$(PACKAGE_NAME).install
DEB_ASTRA_DEPS += deb-astra/build/debian/$(PACKAGE_NAME).links
DEB_ASTRA_DEPS += common/usr/share/flyfm/templates/desktopeditors.docx.desktop
DEB_ASTRA_DEPS += common/usr/share/flyfm/templates/desktopeditors.xlsx.desktop
DEB_ASTRA_DEPS += common/usr/share/flyfm/templates/desktopeditors.pptx.desktop
SRC += ../../../../build_tools/out/$(PLATFORM)/$(DESKTOPEDITORS_PREFIX)
ifneq ($(COMPANY_NAME), ONLYOFFICE)
SRC += ../../../../build_tools/out/$(PLATFORM)/$(MEDIAVIEWER_PREFIX)
endif
M4_PARAMS += -D M4_COMPANY_NAME='$(COMPANY_NAME)' M4_PARAMS += -D M4_COMPANY_NAME='$(COMPANY_NAME)'
M4_PARAMS += -D M4_PRODUCT_NAME='$(PRODUCT_NAME)' M4_PARAMS += -D M4_PRODUCT_NAME='$(PRODUCT_NAME)'
@ -130,21 +87,11 @@ M4_PARAMS += -D M4_PACKAGE_NAME='$(PACKAGE_NAME)'
M4_PARAMS += -D M4_PACKAGE_EDITION='$(PACKAGE_EDITION)' M4_PARAMS += -D M4_PACKAGE_EDITION='$(PACKAGE_EDITION)'
M4_PARAMS += -D M4_DESKTOPEDITORS_PREFIX='$(DESKTOPEDITORS_PREFIX)' M4_PARAMS += -D M4_DESKTOPEDITORS_PREFIX='$(DESKTOPEDITORS_PREFIX)'
M4_PARAMS += -D M4_DESKTOPEDITORS_EXEC='$(DESKTOPEDITORS_EXEC)' M4_PARAMS += -D M4_DESKTOPEDITORS_EXEC='$(DESKTOPEDITORS_EXEC)'
ifneq ($(COMPANY_NAME), ONLYOFFICE) M4_PARAMS += -D M4_SCHEME_HANDLER='$(SCHEME_HANDLER)'
M4_PARAMS += -D M4_MEDIAVIEWER_PREFIX='$(MEDIAVIEWER_PREFIX)'
M4_PARAMS += -D M4_IMAGEVIEWER_EXEC='$(IMAGEVIEWER_EXEC)'
M4_PARAMS += -D M4_VIDEOPLAYER_EXEC='$(VIDEOPLAYER_EXEC)'
M4_PARAMS += -D M4_SCHEME_HANDLER='$(COMPANY_NAME_LOW)'
else
M4_PARAMS += -D M4_SCHEME_HANDLER='oo-office'
endif
M4_PARAMS += -D M4_DEB_ARCH='$(DEB_ARCH)' M4_PARAMS += -D M4_DEB_ARCH='$(DEB_ARCH)'
M4_DEB_PARAMS = $(M4_PARAMS) M4_DEB_PARAMS = $(M4_PARAMS)
M4_DEB_PARAMS += -D M4_PACKAGE_VERSION='$(PACKAGE_VERSION)$(DEB_RELEASE_SUFFIX)' M4_DEB_PARAMS += -D M4_PACKAGE_VERSION='$(PACKAGE_VERSION)$(DEB_RELEASE_SUFFIX)'
M4_DEB_ASTRA_PARAMS = $(M4_PARAMS)
M4_DEB_ASTRA_PARAMS += -D M4_ASTRALINUX_KEYS_DIR='$(abspath $(ASTRALINUX_KEYS_DIR))'
M4_DEB_ASTRA_PARAMS += -D M4_ASTRALINUX_SIGN_IMAGE='$(ASTRALINUX_SIGN_IMAGE)'
M4_DEB_ASTRA_PARAMS += -D M4_PACKAGE_VERSION='$(PACKAGE_VERSION)$(DEB_ASTRA_RELEASE_SUFFIX)'
RPM_PARAMS += --define '_company_name $(COMPANY_NAME)' RPM_PARAMS += --define '_company_name $(COMPANY_NAME)'
RPM_PARAMS += --define '_product_name $(PRODUCT_NAME)' RPM_PARAMS += --define '_product_name $(PRODUCT_NAME)'
@ -156,100 +103,80 @@ RPM_PARAMS += --define '_package_edition $(PACKAGE_EDITION)'
RPM_PARAMS += --define '_product_version $(PRODUCT_VERSION)' RPM_PARAMS += --define '_product_version $(PRODUCT_VERSION)'
RPM_PARAMS += --define '_desktopeditors_prefix $(DESKTOPEDITORS_PREFIX)' RPM_PARAMS += --define '_desktopeditors_prefix $(DESKTOPEDITORS_PREFIX)'
RPM_PARAMS += --define '_desktopeditors_exec $(DESKTOPEDITORS_EXEC)' RPM_PARAMS += --define '_desktopeditors_exec $(DESKTOPEDITORS_EXEC)'
ifneq ($(COMPANY_NAME), ONLYOFFICE) RPM_PARAMS += --define '_scheme_handler $(SCHEME_HANDLER)'
RPM_PARAMS += --define '_mediaviewer_prefix $(MEDIAVIEWER_PREFIX)'
RPM_PARAMS += --define '_imageviewer_exec $(IMAGEVIEWER_EXEC)'
RPM_PARAMS += --define '_videoplayer_exec $(VIDEOPLAYER_EXEC)'
RPM_PARAMS += --define '_scheme_handler $(COMPANY_NAME_LOW)'
else
RPM_PARAMS += --define '_scheme_handler oo-office'
endif
RPM_PARAMS += --define '_binary_payload w7.xzdio' RPM_PARAMS += --define '_binary_payload w7.xzdio'
CHANGES_DIR ?= ../../../common/changes CHANGES_DIR := $(BRANDING_DIR)/../../../common/changes
CHANGES_HTML = changes.html CHANGES_HTML := changes.html
CHANGES_VERSIONS = $(shell echo $(PRODUCT_VERSION); { ls -1 $(CHANGES_DIR) \ CHANGES_VERSIONS := $(shell echo $(PRODUCT_VERSION); { ls -1 $(CHANGES_DIR) \
| grep -E '^[0-9]+' | grep -v $(PRODUCT_VERSION) | sort -Vur; }) | grep -E '^[0-9]+' | grep -v $(PRODUCT_VERSION) | sort -Vur; })
all: tar deb deb-astra rpm apt-rpm suse-rpm urpmi HELP_GLOB := opt/$(DESKTOPEDITORS_PREFIX)/editors/web-apps/apps/*/main/resources/help
ifeq ($(COMPANY_NAME), ONLYOFFICE) -include $(BRANDING_DIR)/branding.mk
tar: $(TAR) $(HELP_TAR)
else
tar: $(TAR)
endif
deb: $(DEB) all : deb rpm rpm-suse tar tar-help
deb : $(DEB)
rpm : $(RPM)
rpm-suse : $(RPM_SUSE)
tar : $(TAR)
tar-help : $(TAR_HELP)
deb-astra: $(DEB_ASTRA) clean :
rm -rf \
rpm: $(RPM) build \
deb*/build \
apt-rpm: $(APT_RPM) deb*/*.buildinfo \
deb*/*.changes \
suse-rpm: $(SUSE_RPM) deb*/*.ddeb \
deb*/*.deb \
urpmi: $(URPMI) rpm*/build \
rpm*/$(PACKAGE_NAME).spec \
clean: tar \
rm -rfv \
common/etc \
common/opt \
common/help \
$(LINUX_DEPS) \
deb/build \
deb/*.buildinfo \
deb/*.changes \
deb/*.ddeb \
deb/*.deb \
deb-astra \
$(RPM_BUILD_DIR) \
$(APT_RPM_BUILD_DIR) \
$(URPMI_BUILD_DIR) \
$(SUSE_RPM_BUILD_DIR) \
$(TAR_BUILD_DIR) \
rpm/$(PACKAGE_NAME).spec \
apt-rpm/$(PACKAGE_NAME).spec \
urpmi/$(PACKAGE_NAME).spec \
suse-rpm/$(PACKAGE_NAME).spec \
$(dir $(CHANGELOG_RPM)) \
$(CHANGES_DIR)/*/changes_??? \ $(CHANGES_DIR)/*/changes_??? \
$(CHANGES_DIR)/*/news_??? $(CHANGES_DIR)/*/news_???
branding: $(BRANDING_DIR) build : $(LINUX_DEPS)
cp -rf $(BRANDING_DIR)/* $(PWD)/ mkdir -p $@/main/opt/$(DESKTOPEDITORS_PREFIX)
cp -rft $@/main/opt/$(DESKTOPEDITORS_PREFIX) $(SOURCE_DIR)/desktopeditors/*
chmod 755 $@/main/opt/$(DESKTOPEDITORS_PREFIX)/DesktopEditors
desktop: branding $(LINUX_DEPS) cp -rf $(BRANDING_DIR)/../../../common/package/license/*.htm \
mkdir -p common/opt $@/main/opt/$(DESKTOPEDITORS_PREFIX)/LICENSE.htm
cp -rft common/opt $(SRC) cp -rf $(BRANDING_DIR)/../../../common/package/license/3dparty/3DPARTYLICENSE \
$@/main/opt/$(DESKTOPEDITORS_PREFIX)/
cp -rf ../../../common/package/license/agpl-3.0.htm common/opt/desktopeditors/LICENSE.htm ifneq ($(wildcard $(BRANDING_DIR)/../../../common/package/mimetypes),)
cp -rf ../../../common/package/license/3dparty/3DPARTYLICENSE common/opt/desktopeditors cp -rf $(BRANDING_DIR)/../../../common/package/mimetypes \
$@/main/opt/$(DESKTOPEDITORS_PREFIX)
endif
cp -rf ../../../common/package/mimetypes common/opt/desktopeditors cd $@; \
for path in main/$(HELP_GLOB); do \
ifeq ($(COMPANY_NAME), ONLYOFFICE) path_new=$$(echo $$path | sed 's|^main/|help/|'); \
for path in common/opt/desktopeditors/editors/web-apps/apps/*/main/resources/help; do \
path_new=$$(echo $$path | sed 's|/opt/|/help/|'); \
mkdir -p $$path_new; \ mkdir -p $$path_new; \
mv -fT $$path $$path_new; \ mv -fT $$path $$path_new; \
done done
for path in $(BRANDING_DIR)/common/icons/*.png; do \
cp -f $$path $@/main/opt/$(DESKTOPEDITORS_PREFIX)/asc-de-$${path##*/}; \
done
ifdef MEDIAVIEWER_PREFIX
mkdir -p $@/main/opt/$(MEDIAVIEWER_PREFIX)
cp -rft $@/main/opt/$(MEDIAVIEWER_PREFIX) $(SOURCE_DIR)/mediaviewer/*
chmod 755 $@/main/opt/$(MEDIAVIEWER_PREFIX)/ImageViewer
chmod 755 $@/main/opt/$(MEDIAVIEWER_PREFIX)/VideoPlayer
endif endif
chmod 755 common/opt/desktopeditors/DesktopEditors $(RPM) : build rpm/$(PACKAGE_NAME).spec
ifneq ($(COMPANY_NAME), ONLYOFFICE)
chmod 755 common/opt/mediaviewer/ImageViewer
chmod 755 common/opt/mediaviewer/VideoPlayer
endif
$(RPM): desktop rpm/$(PACKAGE_NAME).spec
cd rpm && rpmbuild -bb \ cd rpm && rpmbuild -bb \
--define "_topdir $(RPM_BUILD_DIR)" \ --define "_topdir $(PWD)/$(RPM_BUILD_DIR)" \
--define "_build_number $(BUILD_NUMBER)$(RPM_RELEASE_SUFFIX)" \ --define "_build_number $(BUILD_NUMBER)$(RPM_RELEASE_SUFFIX)" \
--define "_package_arch $(RPM_ARCH)" \ --define "_package_arch $(RPM_ARCH)" \
--target $(RPM_ARCH) \ --target $(RPM_ARCH) \
$(RPM_PARAMS) \ $(RPM_PARAMS) \
package.spec $(PACKAGE_NAME).spec
deb/build/debian/% : deb/template/% deb/build/debian/% : deb/template/%
mkdir -pv $(@D) && cp -fv $< $@ mkdir -pv $(@D) && cp -fv $< $@
@ -257,10 +184,6 @@ deb/build/debian/% : deb/template/%
deb/build/debian/% : deb/template/%.m4 deb/build/debian/% : deb/template/%.m4
mkdir -pv $(@D) && m4 $(M4_DEB_PARAMS) $< > $@ mkdir -pv $(@D) && m4 $(M4_DEB_PARAMS) $< > $@
$(CHANGELOG_DEB_ASTRA) : $(CHANGELOG_DEB)
mkdir -pv $(@D)
cp -v $(CHANGELOG_DEB) $@
$(CHANGELOG_DEB) : $(CHANGELOG_DEB) :
mkdir -pv $(@D) mkdir -pv $(@D)
for v in $(CHANGES_VERSIONS); do \ for v in $(CHANGES_VERSIONS); do \
@ -340,7 +263,7 @@ $(NEWS_RPM) :
echo "$(PRODUCT_VERSION)" > $(CHANGES_DIR)/$$v/news_rpm; \ echo "$(PRODUCT_VERSION)" > $(CHANGES_DIR)/$$v/news_rpm; \
fi; \ fi; \
m4 $(M4_PARAMS) -D M4_VERSION=$$v -D M4_DATE_SHORT="$$date" \ m4 $(M4_PARAMS) -D M4_VERSION=$$v -D M4_DATE_SHORT="$$date" \
common/usr/share/doc/NEWS.m4 \ common/NEWS.m4 \
| sed '2r '$(CHANGES_DIR)/$$v/news_rpm >> $@; \ | sed '2r '$(CHANGES_DIR)/$$v/news_rpm >> $@; \
done done
@ -363,7 +286,7 @@ $(CHANGELOG_RPM) : $(NEWS_RPM)
-e 's/^[^ *]/- &/' \ -e 's/^[^ *]/- &/' \
> $(CHANGES_DIR)/$$v/changes_rpm; \ > $(CHANGES_DIR)/$$v/changes_rpm; \
m4 $(M4_PARAMS) -D M4_VERSION=$$v -D M4_DATE="$$date" \ m4 $(M4_PARAMS) -D M4_VERSION=$$v -D M4_DATE="$$date" \
common/usr/share/doc/ChangeLog.m4 \ common/ChangeLog.m4 \
| sed '1r '$(CHANGES_DIR)/$$v/changes_rpm >> $@; \ | sed '1r '$(CHANGES_DIR)/$$v/changes_rpm >> $@; \
done done
@ -373,74 +296,40 @@ deb/build/debian/$(PACKAGE_NAME).% : deb/template/package.%.m4
deb/build/debian/$(PACKAGE_NAME)-help.% : deb/template/package-help.%.m4 deb/build/debian/$(PACKAGE_NAME)-help.% : deb/template/package-help.%.m4
mkdir -pv $(@D) && m4 $(M4_DEB_PARAMS) $< > $@ mkdir -pv $(@D) && m4 $(M4_DEB_PARAMS) $< > $@
deb-astra/build/debian/% : deb/template/% deb/build/package.config :
mkdir -pv $(@D) && cp -fv $< $@ mkdir -p $(@D) && echo "package = deb" > $@
deb-astra/build/debian/% : deb/template/%.m4 $(DEB) : build $(DEB_DEPS)
mkdir -pv $(@D) && \
m4 $(M4_DEB_ASTRA_PARAMS) $< > $@
deb-astra/build/debian/$(PACKAGE_NAME).% : deb/template/package.%.m4
mkdir -pv $(@D) && \
m4 $(M4_DEB_ASTRA_PARAMS) $< > $@
$(DEB): desktop $(DEB_DEPS)
cd deb/build && dpkg-buildpackage -b -uc -us cd deb/build && dpkg-buildpackage -b -uc -us
$(DEB_ASTRA): desktop $(DEB_ASTRA_DEPS) $(RPM_SUSE) : build rpm-suse/$(PACKAGE_NAME).spec
cd deb-astra/build && dpkg-buildpackage -b -uc -us cd rpm-suse && rpmbuild -bb \
--define "_topdir $(PWD)/$(RPM_SUSE_BUILD_DIR)" \
$(APT_RPM): desktop apt-rpm/$(PACKAGE_NAME).spec --define "_build_number $(BUILD_NUMBER)$(RPM_SUSE_RELEASE_SUFFIX)" \
cd apt-rpm && setarch $(RPM_ARCH) rpmbuild -bb \
--define "_topdir $(APT_RPM_BUILD_DIR)" \
--define "_build_number $(BUILD_NUMBER)$(APT_RPM_RELEASE_SUFFIX)" \
--define "_package_arch $(RPM_ARCH)" \ --define "_package_arch $(RPM_ARCH)" \
--target $(RPM_ARCH) \ --target $(RPM_ARCH) \
$(RPM_PARAMS) \ $(RPM_PARAMS) \
package.spec $(PACKAGE_NAME).spec
$(URPMI): desktop urpmi/$(PACKAGE_NAME).spec $(TAR) : build
cd urpmi && setarch $(RPM_ARCH) rpmbuild -bb \ mkdir -p tar
--define "_topdir $(URPMI_BUILD_DIR)" \ tar --create --use-compress-program="xz -9T0" \
--define "_build_number $(BUILD_NUMBER)$(URPMI_RELEASE_SUFFIX)" \ --owner=root --group=root \
--define "_package_arch $(RPM_ARCH)" \ --directory=build/main --file=$@ \
--target $(RPM_ARCH) \ $(patsubst build/main/%,%,$(wildcard build/main/*))
$(RPM_PARAMS) \
package.spec
$(SUSE_RPM): desktop suse-rpm/$(PACKAGE_NAME).spec $(TAR_HELP) : build
cd suse-rpm && rpmbuild -bb \ mkdir -p tar
--define "_topdir $(SUSE_RPM_BUILD_DIR)" \ tar --create --use-compress-program="xz -9T0" \
--define "_build_number $(BUILD_NUMBER)$(SUSE_RPM_RELEASE_SUFFIX)" \ --owner=root --group=root \
--define "_package_arch $(RPM_ARCH)" \ --directory=build/help --file=$@ \
--target $(RPM_ARCH) \ $(patsubst build/help/%,%,$(wildcard build/help/*))
$(RPM_PARAMS) \
package.spec
$(TAR): desktop build/main/usr/bin/$(DESKTOPEDITORS_EXEC) : common/desktopeditors.sh.m4
mkdir -p $(TAR_PACKAGE_DIR) common/opt/desktopeditors/app build/main/usr/share/applications/$(DESKTOPEDITORS_EXEC).desktop : common/desktopeditors.desktop.m4
cp -ft common/opt/desktopeditors/app $(DESKTOP_FILES)
tar -cI"xz -9T0" --owner=root --group=root -f"$@" -C common/opt desktopeditors
$(HELP_TAR): desktop
mkdir -p $(TAR_PACKAGE_DIR)
tar -cI"xz -9T0" --owner=root --group=root -f"$@" -C common/help desktopeditors
common/usr/bin/$(DESKTOPEDITORS_EXEC) : common/usr/bin/desktopeditors.m4
common/usr/bin/$(IMAGEVIEWER_EXEC) : common/usr/bin/imageviewer.m4
common/usr/bin/$(VIDEOPLAYER_EXEC) : common/usr/bin/videoplayer.m4
common/usr/share/applications/variables.m4 : branding
common/usr/share/applications/$(DESKTOPEDITORS_EXEC).desktop : common/usr/share/applications/desktopeditors.desktop.m4 common/usr/share/applications/variables.m4
common/usr/share/applications/$(IMAGEVIEWER_EXEC).desktop : common/usr/share/applications/imageviewer.desktop.m4 common/usr/share/applications/variables.m4
common/usr/share/applications/$(VIDEOPLAYER_EXEC).desktop : common/usr/share/applications/videoplayer.desktop.m4 common/usr/share/applications/variables.m4
common/usr/bin/desktopeditors : common/usr/bin/$(DESKTOPEDITORS_EXEC)
common/usr/bin/$(COMPANY_NAME_LOW) : common/usr/bin/$(DESKTOPEDITORS_EXEC)
$(BIN_FILES) $(DESKTOP_FILES) : $(BIN_FILES) $(DESKTOP_FILES) :
m4 -I'common/usr/share/applications' $(M4_PARAMS) $< > $@ mkdir -p $(@D) && m4 -I "$(BRANDING_DIR)/common" $(M4_PARAMS) $< > $@
$(SYMLINK) :
ln -srf $< $@
% : %.m4 % : %.m4
m4 $(M4_PARAMS) $< > $@ m4 $(M4_PARAMS) $< > $@
@ -448,4 +337,4 @@ $(SYMLINK) :
%/$(PACKAGE_NAME).spec : %/package.spec %/$(PACKAGE_NAME).spec : %/package.spec
cp $< $@ cp $< $@
.PHONY: all tar deb deb-astra rpm apt-rpm suse-rpm urpmi clean desktop branding .PHONY : all clean deb rpm rpm-suse tar tar-help

View File

@ -1,5 +0,0 @@
%if "%{_package_edition}" == "full"
Requires: curl, libX11, xdg-utils, fonts-ttf-dejavu, fonts-ttf-liberation, fonts-ttf-google-crosextra-carlito
%else
Requires: curl, libX11, libXScrnSaver, libatk, libgtk+3, libcairo, xdg-utils, fonts-ttf-dejavu, fonts-ttf-liberation, fonts-ttf-google-crosextra-carlito
%endif

View File

@ -1,4 +1,4 @@
include(variables.m4)dnl include(defines.m4)dnl
[Desktop Entry] [Desktop Entry]
Version=1.0 Version=1.0
ifelse(M4_COMPANY_NAME, ONLYOFFICE, ifelse(M4_COMPANY_NAME, ONLYOFFICE,

View File

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

Before

Width:  |  Height:  |  Size: 400 B

After

Width:  |  Height:  |  Size: 400 B

View File

Before

Width:  |  Height:  |  Size: 473 B

After

Width:  |  Height:  |  Size: 473 B

View File

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

Before

Width:  |  Height:  |  Size: 546 B

After

Width:  |  Height:  |  Size: 546 B

View File

Before

Width:  |  Height:  |  Size: 678 B

After

Width:  |  Height:  |  Size: 678 B

View File

Before

Width:  |  Height:  |  Size: 802 B

After

Width:  |  Height:  |  Size: 802 B

View File

@ -1 +0,0 @@
package = deb

View File

@ -1,8 +0,0 @@
#!/bin/sh
DIR=/opt/M4_MEDIAVIEWER_PREFIX
if [ ! -z "$LD_LIBRARY_PATH" ]; then
LDLPATH=:$LD_LIBRARY_PATH
fi
export LD_LIBRARY_PATH=$DIR$LDLPATH
exec $DIR/ImageViewer "$@"

View File

@ -1,8 +0,0 @@
#!/bin/sh
DIR=/opt/M4_MEDIAVIEWER_PREFIX
if [ ! -z "$LD_LIBRARY_PATH" ]; then
LDLPATH=:$LD_LIBRARY_PATH
fi
export LD_LIBRARY_PATH=$DIR$LDLPATH
exec $DIR/VideoPlayer "$@"

View File

@ -1,25 +0,0 @@
include(variables.m4)dnl
[Desktop Entry]
Version=1.0
Name=defn('IMAGEVIEWER[Name[en]]')
ifdef('IMAGEVIEWER[Name[de]]',Name[de]=defn('IMAGEVIEWER[Name[de]]'),'dnl')
ifdef('IMAGEVIEWER[Name[fr]]',Name[fr]=defn('IMAGEVIEWER[Name[fr]]'),'dnl')
ifdef('IMAGEVIEWER[Name[es]]',Name[es]=defn('IMAGEVIEWER[Name[es]]'),'dnl')
ifdef('IMAGEVIEWER[Name[ru]]',Name[ru]=defn('IMAGEVIEWER[Name[ru]]'),'dnl')
GenericName=defn('IMAGEVIEWER[GenericName[en]]')
ifdef('IMAGEVIEWER[GenericName[de]]',GenericName[de]=defn('IMAGEVIEWER[GenericName[de]]'),'dnl')
ifdef('IMAGEVIEWER[GenericName[fr]]',GenericName[fr]=defn('IMAGEVIEWER[GenericName[fr]]'),'dnl')
ifdef('IMAGEVIEWER[GenericName[es]]',GenericName[es]=defn('IMAGEVIEWER[GenericName[es]]'),'dnl')
ifdef('IMAGEVIEWER[GenericName[ru]]',GenericName[ru]=defn('IMAGEVIEWER[GenericName[ru]]'),'dnl')
Comment=defn('IMAGEVIEWER[Comment[en]]')
ifdef('IMAGEVIEWER[Comment[de]]',Comment[de]=defn('IMAGEVIEWER[Comment[de]]'),'dnl')
ifdef('IMAGEVIEWER[Comment[fr]]',Comment[fr]=defn('IMAGEVIEWER[Comment[fr]]'),'dnl')
ifdef('IMAGEVIEWER[Comment[es]]',Comment[es]=defn('IMAGEVIEWER[Comment[es]]'),'dnl')
ifdef('IMAGEVIEWER[Comment[ru]]',Comment[ru]=defn('IMAGEVIEWER[Comment[ru]]'),'dnl')
Type=Application
Exec=/usr/bin/M4_IMAGEVIEWER_EXEC %F
Terminal=false
Icon=M4_PACKAGE_NAME
Keywords=Image;Photo;Picture;Viewer;
Categories=Graphics;
MimeType=image/jpg;image/jpeg;image/gif;image/png;image/bmp;image/tiff;

View File

@ -1,25 +0,0 @@
include(variables.m4)dnl
[Desktop Entry]
Version=1.0
Name=defn('VIDEOPLAYER[Name[en]]')
ifdef('VIDEOPLAYER[Name[de]]',Name[de]=defn('VIDEOPLAYER[Name[de]]'),'dnl')
ifdef('VIDEOPLAYER[Name[fr]]',Name[fr]=defn('VIDEOPLAYER[Name[fr]]'),'dnl')
ifdef('VIDEOPLAYER[Name[es]]',Name[es]=defn('VIDEOPLAYER[Name[es]]'),'dnl')
ifdef('VIDEOPLAYER[Name[ru]]',Name[ru]=defn('VIDEOPLAYER[Name[ru]]'),'dnl')
GenericName=defn('VIDEOPLAYER[GenericName[en]]')
ifdef('VIDEOPLAYER[GenericName[de]]',GenericName[de]=defn('VIDEOPLAYER[GenericName[de]]'),'dnl')
ifdef('VIDEOPLAYER[GenericName[fr]]',GenericName[fr]=defn('VIDEOPLAYER[GenericName[fr]]'),'dnl')
ifdef('VIDEOPLAYER[GenericName[es]]',GenericName[es]=defn('VIDEOPLAYER[GenericName[es]]'),'dnl')
ifdef('VIDEOPLAYER[GenericName[ru]]',GenericName[ru]=defn('VIDEOPLAYER[GenericName[ru]]'),'dnl')
Comment=defn('VIDEOPLAYER[Comment[en]]')
ifdef('VIDEOPLAYER[Comment[de]]',Comment[de]=defn('VIDEOPLAYER[Comment[de]]'),'dnl')
ifdef('VIDEOPLAYER[Comment[fr]]',Comment[fr]=defn('VIDEOPLAYER[Comment[fr]]'),'dnl')
ifdef('VIDEOPLAYER[Comment[es]]',Comment[es]=defn('VIDEOPLAYER[Comment[es]]'),'dnl')
ifdef('VIDEOPLAYER[Comment[ru]]',Comment[ru]=defn('VIDEOPLAYER[Comment[ru]]'),'dnl')
Type=Application
Exec=/usr/bin/M4_VIDEOPLAYER_EXEC %F
Terminal=false
Icon=M4_PACKAGE_NAME
Keywords=Video;Audio;Sound;Movie;Player;
Categories=AudioVideo;Video;Audio;
MimeType=video/x-msvideo;video/mp4;video/mpeg;audio/mpeg;video/ogg;

View File

@ -1,9 +0,0 @@
[Desktop Entry]
Name=M4_COMPANY_NAME Document
Name[ru]=Документ M4_COMPANY_NAME
Comment=Enter M4_COMPANY_NAME Document filename:
Comment[ru]=Введите имя файла для документа M4_COMPANY_NAME:
Type=Link
URL=.source/new.docx
Icon=application-vnd.oasis.opendocument.text
TryExec=M4_DESKTOPEDITORS_EXEC

View File

@ -1,9 +0,0 @@
[Desktop Entry]
Name=M4_COMPANY_NAME Presentation
Name[ru]=Презентация M4_COMPANY_NAME
Comment=Enter M4_COMPANY_NAME Presentation filename:
Comment[ru]=Введите имя файла для презентации M4_COMPANY_NAME:
Type=Link
URL=.source/new.pptx
Icon=application-vnd.oasis.opendocument.presentation
TryExec=M4_DESKTOPEDITORS_EXEC

View File

@ -1,9 +0,0 @@
[Desktop Entry]
Name=M4_COMPANY_NAME Spreadsheet
Name[ru]=Таблица M4_COMPANY_NAME
Comment=Enter M4_COMPANY_NAME Spreadsheet filename:
Comment[ru]=Введите имя файла для таблицы M4_COMPANY_NAME:
Type=Link
URL=.source/new.xlsx
Icon=application-vnd.oasis.opendocument.spreadsheet
TryExec=M4_DESKTOPEDITORS_EXEC

View File

@ -1 +1 @@
../../common/help/desktopeditors/* opt/M4_DESKTOPEDITORS_PREFIX ../../build/help/* .

View File

@ -1,14 +1,2 @@
../../common/opt/desktopeditors/* /opt/M4_DESKTOPEDITORS_PREFIX ../../build/main/* .
../../common/usr/bin/M4_DESKTOPEDITORS_EXEC /usr/bin package.config opt/M4_DESKTOPEDITORS_PREFIX/converter
../../common/usr/share/applications/M4_DESKTOPEDITORS_EXEC.desktop /usr/share/applications
../../common/package.config /opt/M4_DESKTOPEDITORS_PREFIX/converter
ifelse(M4_COMPANY_NAME, ONLYOFFICE,
../../common/usr/bin/desktopeditors /usr/bin,
../../common/opt/mediaviewer/* /opt/M4_MEDIAVIEWER_PREFIX
../../common/usr/bin/M4_IMAGEVIEWER_EXEC /usr/bin
../../common/usr/bin/M4_VIDEOPLAYER_EXEC /usr/bin
../../common/usr/share/applications/M4_IMAGEVIEWER_EXEC.desktop /usr/share/applications
../../common/usr/share/applications/M4_VIDEOPLAYER_EXEC.desktop /usr/share/applications
../../common/usr/share/flyfm/templates/desktopeditors.*.desktop /usr/share/flyfm/templates
../../common/usr/bin/M4_PACKAGE_NAME /usr/bin)

View File

@ -1,5 +1,2 @@
ifelse(M4_COMPANY_NAME, ONLYOFFICE, ifelse(M4_COMPANY_NAME,ONLYOFFICE,
, usr/bin/M4_DESKTOPEDITORS_EXEC usr/bin/desktopeditors)
opt/M4_DESKTOPEDITORS_PREFIX/converter/empty/new.docx usr/share/flyfm/templates/.source/new.docx
opt/M4_DESKTOPEDITORS_PREFIX/converter/empty/new.xlsx usr/share/flyfm/templates/.source/new.xlsx
opt/M4_DESKTOPEDITORS_PREFIX/converter/empty/new.pptx usr/share/flyfm/templates/.source/new.pptx)

View File

@ -6,21 +6,5 @@ export DH_VERBOSE=1
%: %:
dh $@ dh $@
override_dh_fixperms:
dh_fixperms
chmod 755 debian/M4_PACKAGE_NAME/opt/M4_DESKTOPEDITORS_PREFIX/DesktopEditors
ifelse(M4_COMPANY_NAME, ONLYOFFICE,,
chmod 755 debian/M4_PACKAGE_NAME/opt/M4_MEDIAVIEWER_PREFIX/ImageViewer
chmod 755 debian/M4_PACKAGE_NAME/opt/M4_MEDIAVIEWER_PREFIX/VideoPlayer
chmod 777 debian/M4_PACKAGE_NAME/etc/M4_PACKAGE_NAME)
ifdef(`M4_ASTRALINUX_SIGN_IMAGE',
override_dh_strip:
dh_strip
docker run --rm \
-v M4_ASTRALINUX_KEYS_DIR:/root/keys \
-v $(shell pwd)/debian/M4_PACKAGE_NAME:/root/buildroot \
--name sign-app \
M4_ASTRALINUX_SIGN_IMAGE,)
override_dh_shlibdeps: override_dh_shlibdeps:
dh_shlibdeps --no-act

View File

@ -32,39 +32,21 @@ rm -rf "%{buildroot}"
%build %build
%install %install
COMMON=%{_builddir}/../../../common BUILD_DIR=../../../build
BIN_DIR=%{buildroot}%{_bindir} BIN_DIR=%{buildroot}%{_bindir}
DATA_DIR=%{buildroot}%{_datadir} DATA_DIR=%{buildroot}%{_datadir}
OPT_DIR=%{buildroot}/opt
DESKTOPEDITORS_PREFIX=%{buildroot}/opt/%{_desktopeditors_prefix} mkdir -p %{buildroot}
mkdir -p $BIN_DIR $DATA_DIR/applications $DESKTOPEDITORS_PREFIX cp -rt %{buildroot}/ $BUILD_DIR/main/*
echo "package = rpm" > $OPT_DIR/%{_desktopeditors_prefix}/converter/package.config
cp -r $COMMON/opt/desktopeditors/* $DESKTOPEDITORS_PREFIX
cp -t $BIN_DIR $COMMON/usr/bin/%{_desktopeditors_exec}
cp -t $DATA_DIR/applications $COMMON/usr/share/applications/%{_desktopeditors_exec}.desktop
echo "package = rpm" > $DESKTOPEDITORS_PREFIX/converter/package.config
mkdir -p $DATA_DIR/doc/%{_package_name}
cp $COMMON/usr/share/doc/%{_package_name}/NEWS $DATA_DIR/doc/%{_package_name}
%if "%{_company_name}" == "ONLYOFFICE" %if "%{_company_name}" == "ONLYOFFICE"
# help
cp -r $COMMON/help/desktopeditors/* $DESKTOPEDITORS_PREFIX/
ln -srf $BIN_DIR/%{_desktopeditors_exec} $BIN_DIR/desktopeditors ln -srf $BIN_DIR/%{_desktopeditors_exec} $BIN_DIR/desktopeditors
cp -rt %{buildroot}/ $BUILD_DIR/help/*
%else %else
ETC_DIR=%{buildroot}%{_sysconfdir} ETC_DIR=%{buildroot}%{_sysconfdir}
mkdir -p $ETC_DIR/%{_package_name} mkdir -p $ETC_DIR/%{_package_name}
MEDIAVIEWER_PREFIX=%{buildroot}/opt/%{_mediaviewer_prefix}
mkdir -p $MEDIAVIEWER_PREFIX
cp -r $COMMON/opt/mediaviewer/* $MEDIAVIEWER_PREFIX/
cp -t $BIN_DIR \
$COMMON/usr/bin/%{_imageviewer_exec} \
$COMMON/usr/bin/%{_videoplayer_exec}
cp -t $DATA_DIR/applications \
$COMMON/usr/share/applications/%{_imageviewer_exec}.desktop \
$COMMON/usr/share/applications/%{_videoplayer_exec}.desktop
%endif %endif
%clean %clean
@ -180,4 +162,4 @@ done
%changelog %changelog
%include ../common/usr/share/doc/%{_package_name}/ChangeLog %include ../build/main/usr/share/doc/%{_package_name}/ChangeLog

View File

@ -1,2 +0,0 @@
%include requires.spec
%include ../rpm/common.spec

View File

@ -1,2 +0,0 @@
%include requires-%{_package_arch}.spec
%include ../rpm/common.spec

View File

@ -1,6 +0,0 @@
%if "%{_package_edition}" == "full"
Requires: curl, libx11_6, xdg-utils, fonts-ttf-dejavu, fonts-ttf-liberation
%else
Requires: curl, libx11_6, libxscrnsaver1, libatk1.0_0, libgtk+3_0, libcairo2, xdg-utils, fonts-ttf-dejavu, fonts-ttf-liberation
%endif
#Suggests: webcore-fonts

View File

@ -1,6 +0,0 @@
%if "%{_package_edition}" == "full"
Requires: curl, lib64x11_6, xdg-utils, fonts-ttf-dejavu, fonts-ttf-liberation
%else
Requires: curl, lib64x11_6, lib64xscrnsaver1, lib64atk1.0_0, lib64gtk+2.0_0, lib64cairo2, xdg-utils, fonts-ttf-dejavu, fonts-ttf-liberation
%endif
#Suggests: webcore-fonts