summaryrefslogtreecommitdiff
path: root/rpm
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>1996-06-16 08:46:47 +0000
committerRoland McGrath <roland@gnu.org>1996-06-16 08:46:47 +0000
commit3433189e8a3934084db3945f1e9c0c8fa3f8f166 (patch)
tree798d5f1ce424d072420434f15155754e621f1a4d /rpm
parent6a441471712cfa78ae0b706b7d7529612b37338e (diff)
Sun Jun 16 03:22:49 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* sysdeps/unix/sysv/Makefile (sysdep_headers): Make append of termio.h and rule for it conditional on termio.h not already being in sysdep_headers. * rpm/Makefile (install-others) [libc.so-version]: Get libc.so from $(libdir), only the versioned named from $(slibdir). (instfiles): New variable. (glibc-$(version).$(config).rpm): New target. Run rpm -bb. * rpm/rpmrc: New file. A third of the options controlling rpm can only be given here (another third is on the command line, and a third cannot be specified in any way shape or form).
Diffstat (limited to 'rpm')
-rw-r--r--rpm/Makefile29
-rw-r--r--rpm/rpmrc4
2 files changed, 28 insertions, 5 deletions
diff --git a/rpm/Makefile b/rpm/Makefile
index a4e7969c23..5ffa19ab88 100644
--- a/rpm/Makefile
+++ b/rpm/Makefile
@@ -39,21 +39,24 @@ install-lib += $(foreach lib,$(versioned),\
$(lib)$($(lib)-version) $(lib))
# Add libc.so itself, which is a special case in Makerules.
+ifndef libc.so-version
install-others += $(slibdir)/libc.so
-ifdef libc.so-version
-install-others += $(slibdir)/libc-$(version).so \
+else
+install-others += $(libdir)/libc.so \
+ $(slibdir)/libc-$(version).so \
$(slibdir)/libc.so$(libc.so-version)
endif
-glibc-$(version).$(config).rpm: $(config)
+all: glibc-$(version).$(config).rpm
-all: $(config)
+instvars = include lib bin sbin data others
+# Generate the rpm spec file for this configuration.
$(config): template $(distinfo) Makefile
rm -f $@.new
(sed -e 's%@VERSION@%$(version)%g' $<; \
- ($(foreach var,include lib bin sbin data others,\
+ ($(foreach var,$(instvars),\
for f in $(install-$(var)); do \
echo $(filter-out /,$($(var)dir)/)$$f; \
done;\
@@ -65,3 +68,19 @@ $(config): template $(distinfo) Makefile
install-include = $(headers)
+instfiles := $(sort $(foreach x,$(instvars),\
+ $(addprefix $(filter-out /,$($xdir)/),\
+ $(install-$x))))
+
+# Build the binary rpm for this configuration.
+glibc-$(version).$(config).rpm: $(config) rpmrc $(instfiles)
+# rpm is really lame. You cannot tell it the name of the output file,
+# and you can only guess at what the name will turn out to be!
+ arch=`uname -m | sed -e 's/i.86/i386/' -e 's/alpha/axp/'`; \
+ rm -f $$arch; ln -s . $$arch; \
+ rpm --rcfile rpmrc -bb $<; \
+ rm -f $$arch; \
+ mv -f glibc-$(version)-1.$${arch}.rpm $@
+
+# Avoid time-consuming implicit rule search.
+$(instfiles) : ;
diff --git a/rpm/rpmrc b/rpm/rpmrc
new file mode 100644
index 0000000000..e4d66e971d
--- /dev/null
+++ b/rpm/rpmrc
@@ -0,0 +1,4 @@
+builddir: .
+rpmdir: .
+srcrpmdir: .
+specdir: .