Skip to content

Commit 389cb7f

Browse files
committed
d/rules: sort dh_auto_install stuff into -arch and -indep
1 parent d350c36 commit 389cb7f

1 file changed

Lines changed: 41 additions & 34 deletions

File tree

debian/rules.in

Lines changed: 41 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -66,23 +66,52 @@ override_dh_auto_clean:
6666
rm -f $(for i in $(find . -name "*.in"); do basename $i .in; done)
6767
dh_clean
6868

69-
override_dh_auto_install:
70-
# avoid installing into already existing directory
71-
rm -rf $(DESTDIR)
72-
# executing regular installation with regular prefix but unterneath the debian folder
73-
DESTDIR=$(DESTDIR) $(MAKE) -C src install
69+
70+
override_dh_auto_install-arch:
71+
# Install all architecture-dependent libraries and executables
72+
# in DESTDIR (the staging dir for the main package).
73+
DESTDIR=$(DESTDIR) $(MAKE) -C src install-software
74+
py3clean .
75+
76+
# Install all desktop files, application-menu entries, and associated
77+
# icons in DESTDIR.
7478
desktop-file-validate $(shell find debian/extras/ share/applications/ -name *.desktop);
7579
cd debian/extras && cp -a * $(DESTDIR)
76-
DESTDIR=$(DESTDIR) $(MAKE) -C src INSTALL=install
77-
py3clean .
78-
# In case that only the indep packages are built
79-
if ls lib|egrep -q "*.a$$"; then \
80-
mkdir -p debian/$(DEV_PACKAGE_NAME)/usr/lib ; \
81-
cp lib/*.a debian/$(DEV_PACKAGE_NAME)/usr/lib ; \
82-
fi
80+
81+
# Install G-code quick reference docs in DESTDIR.
82+
# NOTE: This is arguably documentation, but it lives in the
83+
# architecture-dependent binary package for historical reasons.
8384
mkdir -p $(DESTDIR)/usr/share/doc/linuxcnc
8485
cp docs/html/gcode*.html $(DESTDIR)/usr/share/doc/linuxcnc/
8586

87+
# Move static libraries to the -dev package.
88+
mkdir -p debian/$(DEV_PACKAGE_NAME)/usr/lib
89+
cp lib/*.a debian/$(DEV_PACKAGE_NAME)/usr/lib
90+
91+
mkdir -p $(DESTDIR)/usr/share/doc/linuxcnc/examples
92+
cd $(DESTDIR)/usr/share/doc/linuxcnc/examples && ln -sf ../../../linuxcnc/ncfiles ./nc_files
93+
94+
# -dev
95+
mkdir -p debian/$(DEV_PACKAGE_NAME)/usr/include
96+
mv -t debian/$(DEV_PACKAGE_NAME)/usr/include $(DESTDIR)/usr/include/linuxcnc
97+
98+
mkdir -p debian/$(DEV_PACKAGE_NAME)/usr/lib
99+
mv -t debian/$(DEV_PACKAGE_NAME)/usr/lib/ $(DESTDIR)/usr/lib/*.a $(DESTDIR)/usr/lib/*.so
100+
mkdir -p debian/$(DEV_PACKAGE_NAME)/usr/bin
101+
mv -t debian/$(DEV_PACKAGE_NAME)/usr/bin $(DESTDIR)/usr/bin/halcompile
102+
mkdir -p debian/$(DEV_PACKAGE_NAME)/usr/share/man/man1
103+
mv -t debian/$(DEV_PACKAGE_NAME)/usr/share/man/man1 $(DESTDIR)/usr/share/man/man1/halcompile.1
104+
mv -t debian/$(DEV_PACKAGE_NAME)/usr/share/man $(DESTDIR)/usr/share/man/man3
105+
mkdir -p debian/$(DEV_PACKAGE_NAME)/usr/share/linuxcnc
106+
mv -t debian/$(DEV_PACKAGE_NAME)/usr/share/linuxcnc $(DESTDIR)/usr/share/linuxcnc/Makefile.modinc
107+
108+
# some clean-up
109+
rm -f $(DESTDIR)/usr/share/doc/linuxcnc/examples/sample-configs/*/*position*.txt
110+
111+
112+
override_dh_auto_install-indep:
113+
DESTDIR=$(DESTDIR) $(MAKE) -C src install-docs install-doc
114+
86115
# Moving all language-specific .desktop files to the respective -doc-$$lang package
87116
for lang in zh_CN es fr; do \
88117
p=$$(echo $$lang | tr _ - | tr A-Z a-z); \
@@ -114,28 +143,6 @@ override_dh_auto_install:
114143
d=debian/linuxcnc-doc-en/usr/share/doc/linuxcnc && mkdir -p $$d && mv -t $$d $(DESTDIR)/usr/share/doc/linuxcnc/*.pdf; \
115144
fi
116145

117-
mkdir -p $(DESTDIR)/usr/share/doc/linuxcnc/examples
118-
cd $(DESTDIR)/usr/share/doc/linuxcnc/examples && ln -sf ../../../linuxcnc/ncfiles ./nc_files
119-
120-
# -dev
121-
mkdir -p debian/$(DEV_PACKAGE_NAME)/usr/include
122-
mv -t debian/$(DEV_PACKAGE_NAME)/usr/include $(DESTDIR)/usr/include/linuxcnc
123-
124-
# In case that only the indep packages are built
125-
if ls $(DESTDIR)/usr/lib/*.a $(DESTDIR)/usr/lib/*.so | egrep -q "*.(a|so)$$"; then \
126-
mkdir -p debian/$(DEV_PACKAGE_NAME)/usr/lib; \
127-
mv -t debian/$(DEV_PACKAGE_NAME)/usr/lib/ $(DESTDIR)/usr/lib/*.a $(DESTDIR)/usr/lib/*.so; \
128-
mkdir -p debian/$(DEV_PACKAGE_NAME)/usr/bin; \
129-
mv -t debian/$(DEV_PACKAGE_NAME)/usr/bin $(DESTDIR)/usr/bin/halcompile; \
130-
mkdir -p debian/$(DEV_PACKAGE_NAME)/usr/share/man/man1; \
131-
mv -t debian/$(DEV_PACKAGE_NAME)/usr/share/man/man1 $(DESTDIR)/usr/share/man/man1/halcompile.1; \
132-
mv -t debian/$(DEV_PACKAGE_NAME)/usr/share/man $(DESTDIR)/usr/share/man/man3; \
133-
mkdir -p debian/$(DEV_PACKAGE_NAME)/usr/share/linuxcnc; \
134-
mv -t debian/$(DEV_PACKAGE_NAME)/usr/share/linuxcnc $(DESTDIR)/usr/share/linuxcnc/Makefile.modinc; \
135-
fi
136-
137-
# some clean-up
138-
rm -f $(DESTDIR)/usr/share/doc/linuxcnc/examples/sample-configs/*/*position*.txt
139146

140147
override_dh_compress:
141148
dh_compress -X.pdf -X.txt -X.hal -X.ini -X.clp -X.var -X.nml -X.tbl -X.xml -Xsample-configs

0 commit comments

Comments
 (0)