blob: d6a63ce276fe39e12eb839972798fe3a71783d3a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
|
# Copyright (C) 1998-2002 Red Hat, Inc.
include Makefile.inc
VERSION := $(shell awk '/Version:/ { print $$2 }' anaconda.spec)
RELEASE := $(shell awk '/Release:/ { print $$2 }' anaconda.spec)
CVSROOT ?= ${CVSROOT:-$(shell cat CVS/Root 2>/dev/null)}
SUBDIRS = isys wlite stubs loader2 po \
textw utils scripts bootdisk installclasses \
iw pixmaps isomd5sum command-stubs ui
# fonts aren't on s390/s390x
ifeq (,$(filter s390 s390x, $(ARCH)))
SUBDIRS += fonts
endif
ifneq (,$(filter i386 x86_64,$(ARCH)))
# we only do the liveinst bits on i386/x86_64 for now
SUBDIRS += liveinst
# gptsync only on x86 for mactels right now
SUBDIRS += gptsync
endif
CATALOGS = po/anaconda.pot
PYFILES = $(wildcard *.py)
all: subdirs mini-wm xutils.so $(CATALOGS) lang-table lang-names
lang-names: lang-table
PYTHONPATH="." $(PYTHON) scripts/getlangnames.py > lang-names
mini-wm: mini-wm.c
gcc -o mini-wm mini-wm.c `pkg-config gtk+-x11-2.0 --cflags --libs` $(CFLAGS) $(LDFLAGS)
xutils.so: xutils.c
gcc -ggdb -Wall -o xutils.o -fno-strict-aliasing -fPIC -I/usr/X11R6/include -I$(PYTHONINCLUDE) -I $(PYTHONINCLUDE) -c xutils.c $(CFLAGS) `pkg-config --cflags gdk-2.0`
gcc -o xutils.so -shared xutils.o -ggdb -L/usr/X11R6/$(LIBDIR) -lX11 `pkg-config --libs gdk-2.0` $(LDFLAGS)
depend:
rm -f *.o *.so *.pyc
for d in $(SUBDIRS); do make -C $$d depend; done
clean:
rm -f *.o *.so *.pyc lang-names mini-wm
rm -rf docs/api
for d in $(SUBDIRS); do make -C $$d clean; done
subdirs:
for d in $(SUBDIRS); do make -C $$d; [ $$? = 0 ] || exit 1; done
# this rule is a hack
install-python:
cp -var $(PYFILES) $(DESTDIR)/$(PYTHONLIBDIR)
./py-compile --basedir $(DESTDIR)/$(PYTHONLIBDIR) $(PYFILES)
install -m 755 anaconda $(DESTDIR)/usr/bin/anaconda
for d in installclasses isys iw textw; do make DESTDIR=`cd $(DESTDIR); pwd` -C $$d install; [ $$? = 0 ] || exit 1; done
install:
@if [ "$(DESTDIR)" = "" ]; then \
echo " "; \
echo "ERROR: A destdir is required"; \
exit 1; \
fi
mkdir -p $(DESTDIR)/usr/bin
mkdir -p $(DESTDIR)/usr/sbin
mkdir -p $(DESTDIR)/etc/rc.d/init.d
mkdir -p $(DESTDIR)/$(PYTHONLIBDIR)
mkdir -p $(DESTDIR)/$(RUNTIMEDIR)
mkdir -p $(DESTDIR)/$(ANACONDADATADIR)
install -m 755 anaconda $(DESTDIR)/usr/sbin/anaconda
install -m 755 mini-wm $(DESTDIR)/usr/bin/mini-wm
cp -var $(PYFILES) $(DESTDIR)/$(PYTHONLIBDIR)
cp -a lang-table $(DESTDIR)/$(PYTHONLIBDIR)
cp -a lang-names $(DESTDIR)/$(PYTHONLIBDIR)
./py-compile --basedir $(DESTDIR)/$(PYTHONLIBDIR) $(PYFILES)
cp -a *.so $(DESTDIR)/$(PYTHONLIBDIR)
strip $(DESTDIR)/$(PYTHONLIBDIR)/*.so
for d in $(SUBDIRS); do make DESTDIR=`cd $(DESTDIR); pwd` -C $$d install; [ $$? = 0 ] || exit 1; done
CVSTAG=anaconda-$(subst .,_,$(VERSION)-$(RELEASE))
SRPMDIR=$(shell rpm --eval '%{_srcrpmdir}')
tag:
@cvs tag -cFR $(CVSTAG)
@echo "Tagged as $(CVSTAG)"
archive: create-archive
src: create-archive
@rpmbuild -ts --nodeps anaconda-$(VERSION).tar.bz2 || exit 1
@rm -f anaconda-$(VERSION).tar.bz2
build: src
@rm -rf /tmp/anaconda
@mkdir /tmp/anaconda
cd /tmp/anaconda ; cvs co common ; cd common ; ./cvs-import.sh $(SRPMDIR)/anaconda-$(VERSION)-$(RELEASE).src.rpm
@rm -rf /tmp/anaconda
koji build $(COLLECTION) 'cvs://cvs.fedoraproject.org/cvs/pkgs?devel/anaconda#$(CVSTAG)'
create-snapshot:
@rm -rf /tmp/anaconda
@rm -rf /tmp/anaconda-$(VERSION)
@tag=`cvs status Makefile | awk ' /Sticky Tag/ { print $$3 } '` 2> /dev/null; \
[ x"$$tag" = x"(none)" ] && tag=HEAD; \
[ x"$$TAG" != x ] && tag=$$TAG; \
cvsroot=`cat CVS/Root` 2>/dev/null; \
echo "*** Pulling off $$tag from $$cvsroot!"; \
cd /tmp ; cvs -z3 -Q -d $$cvsroot export -r $$tag anaconda || echo "Um... export aborted."
@cd /tmp/anaconda ; curl -A "anaconda-build" -o docs/command-line.txt "http://fedoraproject.org/wiki/AnacondaOptions?action=raw"
@cd /tmp/anaconda ; curl -A "anaconda-build" -o docs/kickstart-docs.txt "http://fedoraproject.org/wiki/AnacondaKickstart?action=raw"
@mv /tmp/anaconda /tmp/anaconda-$(VERSION)
@cd /tmp ; tar --bzip2 -cSpf anaconda-$(VERSION).tar.bz2 anaconda-$(VERSION)
@rm -rf /tmp/anaconda-$(VERSION)
@cp /tmp/anaconda-$(VERSION).tar.bz2 .
@rm -f /tmp/anaconda-$(VERSION).tar.bz2
@echo ""
@echo "The final archive is in anaconda-$(VERSION).tar.bz2"
create-archive:
make create-snapshot
pycheck:
PYTHONPATH=isys:textw:iw:installclasses:booty:booty/edd pychecker *.py textw/*.py iw/*.py installclasses/*.py command-stubs/*-stub | grep -v "__init__() not called"
pycheck-file:
PYTHONPATH=.:isys:textw:iw:installclasses:booty:booty/edd pychecker $(CHECK) | grep -v "__init__() not called"
PKGNAME=anaconda
local: clean
@rm -rf ${PKGNAME}-$(VERSION).tar.gz
@rm -rf /tmp/${PKGNAME}-$(VERSION) /tmp/${PKGNAME}
@dir=$$PWD; cd /tmp; cp -a $$dir ${PKGNAME}
@mv /tmp/${PKGNAME} /tmp/${PKGNAME}-$(VERSION)
@dir=$$PWD; cd /tmp; tar --exclude CVS --bzip2 -cvf $$dir/${PKGNAME}-$(VERSION).tar.bz2 ${PKGNAME}-$(VERSION)
@rm -rf /tmp/${PKGNAME}-$(VERSION)
@echo "The archive is in ${PKGNAME}-$(VERSION).tar.bz2"
api:
doxygen docs/api.cfg
|