Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
mkimage-profiles
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
2
Issues
2
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Ximper Linux
mkimage-profiles
Commits
e53b6acb
Commit
e53b6acb
authored
Jun 12, 2011
by
Michael Shigorin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
installer firmware support
Thanks go to lakostis@ (see #18047) for all the aic94xx reminders and the final testing of the proposed image.
parent
faafaf12
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
51 additions
and
30 deletions
+51
-30
distro.mk
distro.mk
+3
-8
config.mk
features.in/firmware/config.mk
+21
-0
Makefile
image.in/Makefile
+2
-1
iso.mk
iso.mk
+2
-2
Makefile
pkg.in/Makefile
+2
-2
Makefile
sub.in/install2/Makefile
+1
-1
Makefile
sub.in/main/Makefile
+4
-2
Makefile
sub.in/stage1/Makefile
+9
-7
README
sub.in/stage1/README
+3
-3
02-kdefault
sub.in/stage1/scripts.d/02-kdefault
+4
-4
No files found.
distro.mk
View file @
e53b6acb
...
...
@@ -34,21 +34,16 @@ distro/syslinux: distro/.init distro/.branding sub/stage1 \
# something actually useful (as a network-only installer)
distro/installer: distro/.base use/installer
@$(call set,INSTALLER,server-light)
@$(call set,INSTALLER_KMODULES_REGEXP,drm.*) # for KMS
# BASE_LISTS, DISK_LISTS, MAIN_PACKAGES: see sub.in/main/
distro/server-base: distro/installer sub/main use/syslinux/ui-menu use/memtest
@$(call add,BASE_LISTS,server-base)
# STAGE1_KFLAVOUR is the one for installer
# KDEFAULT is for the installed system
# both of these default to the last KFLAVOURS item if not set
distro/server-ovz: distro/server-base use/hdt
@$(call set,STAGE1_KFLAVOUR,std-def)
distro/server-ovz: distro/server-base use/hdt use/firmware/server
@$(call set,INSTALLER_KFLAVOUR,std-def)
@$(call set,KFLAVOURS,std-def ovz-el)
@$(call set,KDEFAULT,ovz-el)
@$(call set,STAGE1_KMODULES_REGEXP,drm.*)
@$(call add,KMODULES,bcmwl e1000e igb ndiswrapper rtl8168 rtl8192)
@$(call add,KMODULES,ipset ipt-netflow opendpi pf_ring xtables-addons)
@$(call add,KMODULES,drbd83 kvm)
...
...
features.in/firmware/config.mk
0 → 100644
View file @
e53b6acb
# NB: if the firmware is needed in installer,
# it should be installed to stage1's *instrumental* chroot
# for mkmodpack to use
use/firmware:
@$(call add,COMMON_PACKAGES,firmware-linux)
use/firmware/server: use/firmware
@$(call add,COMMON_PACKAGES,firmware-aic94xx-seq)
@$(call add,MAIN_PACKAGES_REGEXP,firmware-ql.*)
use/firmware/desktop: use/firmware
@$(call add,COMMON_PACKAGES,firmware-psb)
use/firmware/wireless: use/firmware
@$(call add,MAIN_PACKAGES,firmware-acx100)
@$(call add,MAIN_PACKAGES,firmware-i2400m)
@$(call add,MAIN_PACKAGES_REGEXP,firmware-ipw.*)
@$(call add,MAIN_PACKAGES_REGEXP,firmware-iwl.*)
@$(call add,MAIN_PACKAGES_REGEXP,firmware-rt.*)
@$(call add,MAIN_PACKAGES_REGEXP,firmware-zd.*)
image.in/Makefile
View file @
e53b6acb
...
...
@@ -35,7 +35,7 @@ include $(MKIMAGE_PREFIX)/targets.mk
all
:
prep copy-subdirs copy-tree run-scripts pack-image
# Metadata/ needed only for installer (and not for e.g. syslinux.iso)
ifeq
"$(
STAGE1
_KFLAVOUR)$(KFLAVOURS)"
""
ifeq
"$(
INSTALLER
_KFLAVOUR)$(KFLAVOURS)"
""
metadata
:
@
echo
"** skipping metadata target, no stage1 kernel installed"
else
...
...
@@ -47,6 +47,7 @@ metadata:
@
rm
-f
files/Metadata/pkg-groups.tar
@
echo
-e
"
\n
# auto-added in image.in/Makefile"
>>
$
(
call list,.base
)
@
echo
"
$
(call kpackages,
$(KMODULES)
,
$(KFLAVOURS)
)"
>>
$
(
call list,.base
)
@
echo
"
$(COMMON_PACKAGES)
"
>>
$
(
call list,.base
)
@
echo
"branding-
$(BRANDING)
-release"
>>
$
(
call list,.base
)
@
tar
-cvf
files/Metadata/pkg-groups.tar
\
-C
$(PKGDIR)
\
...
...
iso.mk
View file @
e53b6acb
...
...
@@ -17,7 +17,7 @@ iso:
else \
echo " (coffee time)"; \
fi
@if time -f
%E
$(ARCH) \
@if time -f
"%E %PCPU %Mk"
$(ARCH) \
$(MAKE) -C $(BUILDDIR)/ GLOBAL_BUILDDIR=$(BUILDDIR) $(LOG); \
then \
echo "** build done (`tail -1 $(BUILDLOG) | cut -f1 -d. \
...
...
@@ -27,5 +27,5 @@ iso:
if test -z "$(DEBUG)"; then \
echo " (you might want to re-run with DEBUG=1)"; \
fi; \
tail -100 "$(BUILDLOG)" | egrep "^E:|
rror|
arning"; \
tail -100 "$(BUILDLOG)" | egrep "^E:|
[Ee]rror|[Ww]
arning"; \
fi
pkg.in/Makefile
View file @
e53b6acb
...
...
@@ -6,6 +6,6 @@ $(error BUILDDIR not defined)
endif
all
:
for
dir
in
lists
groups
;
do
\
$(MAKE)
-C
$$
dir
BUILDDIR
=
$(BUILDDIR)
;
\
@
for
dir
in
lists
groups
;
do
\
$(MAKE)
-C
$$
dir
;
\
done
sub.in/install2/Makefile
View file @
e53b6acb
...
...
@@ -12,7 +12,7 @@ include $(MKIMAGE_PREFIX)/config.mk
# need kernel modules only (which require corresponding kernel-image);
# these go into work chroot; NB: no vmlinuz there
IMAGE_PACKAGES_REGEXP
=
$
(
call kpackages,
$(
KMODULES)
,
$(KFLAVOURS
)
)
IMAGE_PACKAGES_REGEXP
=
$
(
call kpackages,
$(
INSTALLER_KMODULES)
,
$(INSTALLER_KFLAVOUR
)
)
IMAGE_PACKAGES
=
$(COMMON_PACKAGES)
\
$(INSTALL2_PACKAGES)
\
./packages
...
...
sub.in/main/Makefile
View file @
e53b6acb
...
...
@@ -12,7 +12,8 @@ include $(MKIMAGE_PREFIX)/config.mk
CHROOT_PACKAGES
=
apt-utils rsync
IMAGE_PACKAGES_REGEXP
=
$
(
call kpackages,
$(KMODULES)
,
$(KFLAVOURS)
)
IMAGE_PACKAGES_REGEXP
=
$
(
call kpackages,
$(KMODULES)
,
$(KFLAVOURS)
)
\
$(MAIN_PACKAGES_REGEXP)
IMAGE_PACKAGES
=
$
(
call map,list,.base
$(BASE_LISTS)
$(DISK_LISTS)
$(GROUPS)
)
\
$(COMMON_PACKAGES)
\
$(MAIN_PACKAGES)
...
...
@@ -25,4 +26,5 @@ include $(MKIMAGE_PREFIX)/targets.mk
all
:
$(GLOBAL_DEBUG) copy-packages pack-image
debug
:
@
echo
"IMAGE_PACKAGES:
$(IMAGE_PACKAGES)
"
@
echo
"** main: IMAGE_PACKAGES:
$(IMAGE_PACKAGES)
"
@
echo
"** main: IMAGE_PACKAGES_REGEXP:
$(IMAGE_PACKAGES_REGEXP)
"
sub.in/stage1/Makefile
View file @
e53b6acb
...
...
@@ -21,23 +21,24 @@ COPY_TREE = ./files
include
$(MKIMAGE_PREFIX)/targets.mk
CHROOT_PACKAGES
=
$(STAGE1_PACKAGES)
$(COMMON_PACKAGES)
# here we try and come up with the installer kernel/modules, if any;
# only a single kernel might be needed (
STAGE1
_KFLAVOUR sets explicitly);
# only a single kernel might be needed (
INSTALLER
_KFLAVOUR sets explicitly);
# kernel image copied from instrumental chroot into .work/syslinux/alt0/
STAGE1
_KFLAVOUR
?=
$
(
lastword
$(KFLAVOURS)
)
INSTALLER
_KFLAVOUR
?=
$
(
lastword
$(KFLAVOURS)
)
# propagator needed iff stage1 kernel installed (not for e.g. syslinux.iso)
ifeq
"$(
STAGE1
_KFLAVOUR)"
""
ifeq
"$(
INSTALLER
_KFLAVOUR)"
""
build-propagator
:
@
echo
"** skipping build-propagator target, no kernel installed"
else
CHROOT_PACKAGES_REGEXP
:=
$
(
call kpackages,
$(
STAGE1_KMODULES_REGEXP)
,
$(STAGE1
_KFLAVOUR)
)
INFO_
STAGE1_KFLAVOUR
:=
$(STAGE1
_KFLAVOUR)
CHROOT_PACKAGES_REGEXP
:=
$
(
call kpackages,
$(
INSTALLER_KMODULES_REGEXP)
,
$(INSTALLER
_KFLAVOUR)
)
INFO_
INSTALLER_KFLAVOUR
:=
$(INSTALLER
_KFLAVOUR)
endif
CHROOT_PACKAGES_REGEXP
+=
$(STAGE1_PACKAGES_REGEXP)
CHROOT_PACKAGES
=
$(STAGE1_PACKAGES)
$(COMMON_PACKAGES)
# scripts prepare bootloader configuration, too
all
:
debug prepare-workdir copy-tree run-scripts build-propagator
\
copy-$(BOOTLOADER) pack-image
...
...
@@ -45,6 +46,7 @@ all: debug prepare-workdir copy-tree run-scripts build-propagator \
debug
:
@
if
test
-n
"
$(GLOBAL_VERBOSE)
"
;
then
\
echo
"** STAGE1_PACKAGES:
$(STAGE1_PACKAGES)
"
;
\
echo
"** STAGE1_PACKAGES_REGEXP:
$(STAGE1_PACKAGES_REGEXP)
"
;
\
echo
"** CHROOT_PACKAGES:
$(CHROOT_PACKAGES)
"
;
\
echo
"** CHROOT_PACKAGES_REGEXP:
$(CHROOT_PACKAGES_REGEXP)
"
;
\
echo
"** BOOTLOADER:
$(BOOTLOADER)
"
;
\
...
...
sub.in/stage1/README
View file @
e53b6acb
...
...
@@ -7,10 +7,10 @@
к составу STAGE1_PACKAGES и объёму этой стадии.
Обратите внимание: если не указать явно требуемый вариант
ядра посредством
STAGE1_KFLAVOUR, будет взят последний из
перечисленных в KFLAVOURS; если не указать явно регэкс,
ядра посредством
INSTALLER_KFLAVOUR, будет взят последний
из
перечисленных в KFLAVOURS; если не указать явно регэкс,
описывающий требуемые в инсталяторе модули, посредством
STAGE1_KMODULES_REGEXP -- будет только
подмножество модулей
INSTALLER_KMODULES_REGEXP -- будет
подмножество модулей
из kernel-image (упаковываются в syslinux/alt0/full.cz).
Требуется для инсталяционных, live- и rescue-образов.
...
...
sub.in/stage1/scripts.d/02-kdefault
View file @
e53b6acb
#!/bin/sh
# symlink default kernel iff requested but not yet done
STAGE1_KFLAVOUR
=
"
$INFO_STAGE1
_KFLAVOUR
"
INSTALLER_KFLAVOUR
=
"
$INFO_INSTALLER
_KFLAVOUR
"
if
[
-n
"
$GLOBAL_VERBOSE
"
]
;
then
echo
"**
STAGE1_KFLAVOUR:
$STAGE1
_KFLAVOUR
"
echo
"**
INSTALLER_KFLAVOUR:
$INSTALLER
_KFLAVOUR
"
fi
# kernel-image in instrumental chroot
...
...
@@ -16,8 +16,8 @@ if [ -L "$VMLINK" ]; then
echo
"**
$VMLINK
->
$(
readlink
"
$VMLINK
"
)
"
fi
if
[
-n
"
$
STAGE1
_KFLAVOUR
"
]
;
then
VMLINUZ
=
"
$(
cd
/boot
;
echo
vmlinuz-
*
-
$
STAGE1
_KFLAVOUR
-
*)
"
if
[
-n
"
$
INSTALLER
_KFLAVOUR
"
]
;
then
VMLINUZ
=
"
$(
cd
/boot
;
echo
vmlinuz-
*
-
$
INSTALLER
_KFLAVOUR
-
*)
"
if
[
-n
"
$VMLINUZ
"
]
;
then
ln
-sf
"
$VMLINUZ
"
"
$VMLINK
"
echo
"** overriding
$VMLINK
with
$VMLINUZ
"
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment