mirror of
https://github.com/netbootxyz/netboot.xyz.git
synced 2025-08-07 06:16:58 +02:00
* Introduce new variable "make_num_jobs" to user_overrides.yml (default value is 1). * Use new variable in each task that uses "make".
73 lines
2.4 KiB
YAML
73 lines
2.4 KiB
YAML
---
|
|
|
|
- name: Copy netboot.xyz local EFI iPXE configs
|
|
ansible.builtin.copy:
|
|
src: "ipxe/local/{{ item }}"
|
|
dest: "{{ ipxe_source_dir }}/src/config/local/{{ item }}"
|
|
with_items:
|
|
- colour.h
|
|
- console.h
|
|
- crypto.h
|
|
|
|
- name: Copy netboot.xyz general.h.efi iPXE config
|
|
ansible.builtin.copy:
|
|
src: "ipxe/local/general.h.efi"
|
|
dest: "{{ ipxe_source_dir }}/src/config/local/general.h"
|
|
|
|
- name: Set trust file to ipxe ca
|
|
ansible.builtin.set_fact:
|
|
trust_files: "{{ cert_dir }}/{{ ipxe_ca_filename }}"
|
|
when: not generate_signatures
|
|
|
|
- name: Combine trust files if set
|
|
ansible.builtin.set_fact:
|
|
trust_files: "{{ cert_dir }}/{{ ipxe_ca_filename }},{{ cert_dir }}/{{ cert_file_filename }}"
|
|
when: generate_signatures | bool
|
|
|
|
# iPXE workaround
|
|
# http://lists.ipxe.org/pipermail/ipxe-devel/2018-August/006254.html
|
|
# apply patch to fix arm64 builds on amd64 builds
|
|
- name: Workaround in iPXE for arm
|
|
ansible.builtin.shell: sed -i '/WORKAROUND_CFLAGS/d' arch/arm64/Makefile
|
|
args:
|
|
chdir: "{{ ipxe_source_dir }}/src"
|
|
|
|
- name: Compile iPXE bootloaders for EFI arm64
|
|
ansible.builtin.shell: |
|
|
make clean
|
|
make -j{{ make_num_jobs }} \
|
|
CROSS_COMPILE=aarch64-linux-gnu- \
|
|
ARCH=arm64 \
|
|
EMBED={{ bootloader_filename }} \
|
|
TRUST={{ trust_files }} \
|
|
bin-arm64-efi/ipxe.efi \
|
|
bin-arm64-efi/snp.efi \
|
|
bin-arm64-efi/snponly.efi
|
|
args:
|
|
chdir: "{{ ipxe_source_dir }}/src"
|
|
when: ipxe_debug_enabled | bool == false
|
|
|
|
- name: Compile iPXE bootloader for EFI arm64 with debug flags
|
|
ansible.builtin.shell: |
|
|
make clean
|
|
make -j{{ make_num_jobs }} \
|
|
CROSS_COMPILE=aarch64-linux-gnu- \
|
|
ARCH=arm64 \
|
|
DEBUG={{ ipxe_debug_options }} \
|
|
EMBED={{ bootloader_filename }} \
|
|
TRUST={{ trust_files }} \
|
|
bin-arm64-efi/snp.efi
|
|
args:
|
|
chdir: "{{ ipxe_source_dir }}/src"
|
|
when: ipxe_debug_enabled | bool
|
|
|
|
- name: Copy iPXE arm64 EFI builds to http directory
|
|
ansible.builtin.copy:
|
|
src: "{{ ipxe_source_dir }}/src/{{ item.src }}"
|
|
dest: "{{ netbootxyz_root }}/ipxe/{{ item.dest }}"
|
|
remote_src: true
|
|
with_items:
|
|
- {src: "bin-arm64-efi/ipxe.efi", dest: "{{ bootloader_filename }}-arm64.efi"}
|
|
- {src: "bin-arm64-efi/snp.efi", dest: "{{ bootloader_filename }}-arm64-snp.efi"}
|
|
- {src: "bin-arm64-efi/snponly.efi", dest: "{{ bootloader_filename }}-arm64-snponly.efi"}
|