summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Dale <richard.dale@codethink.co.uk>2015-05-19 16:54:26 +0100
committerRichard Dale <richard.dale@codethink.co.uk>2015-05-19 16:56:06 +0100
commitd908e5099f7c05c61ab4daea5849cd90f7cb5cf9 (patch)
tree3eef0826d462a055bf1291c9299a3250df76d7ce
parentbdd8c2cd4f2a3f2c4240ff9d2509628aa6a0b616 (diff)
downloaddefinitions-d908e5099f7c05c61ab4daea5849cd90f7cb5cf9.tar.gz
The OpenWRT stratum 'cpe-wrt.morph' is built on top of 'core-wrt.morph'
-rw-r--r--strata/bsp-x86_64-openwrt.morph24
-rw-r--r--strata/bsp-x86_64-openwrt/linux-x86-64-openwrt.morph286
-rw-r--r--strata/bsp-x86_64-openwrt/nasm-wrt.morph5
-rw-r--r--strata/bsp-x86_64-openwrt/syslinux-wrt.morph12
-rw-r--r--strata/build-essential.morph2
-rw-r--r--strata/core-wrt.morph237
-rw-r--r--strata/core/bison-wrt.morph6
-rw-r--r--strata/core/bison.morph3
-rw-r--r--strata/cpe-wrt.morph125
-rw-r--r--strata/cpe-wrt/base-files.morph44
-rw-r--r--strata/cpe-wrt/dnsmasq.morph8
-rw-r--r--strata/cpe-wrt/dropbear.morph16
-rw-r--r--strata/cpe-wrt/firewall3.morph4
-rw-r--r--strata/cpe-wrt/iwinfo.morph12
-rw-r--r--strata/cpe-wrt/jsonpath.morph12
-rw-r--r--strata/cpe-wrt/libnl-tiny.morph8
-rw-r--r--strata/cpe-wrt/luci2-ui.morph29
-rw-r--r--strata/cpe-wrt/lzo-wrt.morph5
-rw-r--r--strata/cpe-wrt/netifd.morph4
-rw-r--r--strata/cpe-wrt/rpcd.morph6
-rw-r--r--strata/cpe-wrt/ubox.morph12
-rw-r--r--strata/cpe-wrt/ubus.morph4
-rw-r--r--strata/cpe-wrt/uci.morph2
-rw-r--r--strata/cpe-wrt/uhttpd.morph14
-rw-r--r--strata/cpe-wrt/wpa_supplicant_wrt.morph14
-rw-r--r--strata/foundation/openssh-wrt.morph28
-rw-r--r--systems/minimal-system-x86-64-openwrt.morph21
27 files changed, 874 insertions, 69 deletions
diff --git a/strata/bsp-x86_64-openwrt.morph b/strata/bsp-x86_64-openwrt.morph
new file mode 100644
index 00000000..0bd85da3
--- /dev/null
+++ b/strata/bsp-x86_64-openwrt.morph
@@ -0,0 +1,24 @@
+name: bsp-x86_64-openwrt
+kind: stratum
+description: The set of platform specific components required for booting a 64-bit
+ x86 based system.
+build-depends:
+- morph: strata/core-wrt.morph
+chunks:
+- name: linux-x86-64-openwrt
+ morph: strata/bsp-x86_64-openwrt/linux-x86-64-openwrt.morph
+ repo: upstream:linux
+ ref: 39a8804455fb23f09157341d3ba7db6d7ae6ee76
+ unpetrify-ref: v4.0
+- name: nasm-wrt
+ morph: strata/bsp-x86_64-openwrt/nasm-wrt.morph
+ repo: upstream:nasm
+ ref: 78bdad3d14fb875d5f2062957e326ba2a9e4ccb0
+ unpetrify-ref: baserock/morph
+- name: syslinux-wrt
+ morph: strata/bsp-x86_64-openwrt/syslinux-wrt.morph
+ repo: upstream:syslinux
+ ref: 2aab8555987b547b617cbb887e61083fece01541
+ unpetrify-ref: baserock/morph
+ build-depends:
+ - nasm-wrt
diff --git a/strata/bsp-x86_64-openwrt/linux-x86-64-openwrt.morph b/strata/bsp-x86_64-openwrt/linux-x86-64-openwrt.morph
new file mode 100644
index 00000000..cb827e95
--- /dev/null
+++ b/strata/bsp-x86_64-openwrt/linux-x86-64-openwrt.morph
@@ -0,0 +1,286 @@
+name: linux-x86-64-openwrt
+kind: chunk
+products:
+- artifact: linux-x86-64-openwrt-devel
+ include:
+ - (usr/)?src/linux/.*
+- artifact: linux-x86-64-openwrt-bins
+ include:
+ - boot/.*
+- artifact: linux-x86-64-openwrt-libs
+ include:
+ - lib/.*
+configure-commands:
+- make defconfig
+- scripts/config -e PACKET
+- scripts/config -e SATA_AHCI
+- scripts/config -e ATA_GENERIC
+- scripts/config -e HAVE_IDE
+- scripts/config -d BLK_DEV_IDE_SATA
+- scripts/config -e BTRFS_FS
+- scripts/config -e BTRFS_FS_POSIX_ACL
+- scripts/config -e DEVTMPFS
+- scripts/config -e DEVTMPFS_MOUNT
+- scripts/config -e CONFIG_FHANDLE
+- scripts/config -e CGROUPS
+- scripts/config -e AUTOFS4_FS
+- scripts/config --set-str UEVENT_HELPER_PATH ''
+- scripts/config -e EXT2_FS
+- scripts/config -e EXT2_FS_XATTR
+- scripts/config -e EXT2_FS_POSIX_ACL
+- scripts/config -e EXT2_FS_SECURITY
+- scripts/config -e EXT2_FS_XIP
+- scripts/config -e EXT3_FS
+- scripts/config -d EXT3_DEFAULTS_TO_ORDERED
+- scripts/config -e EXT3_FS_XATTR
+- scripts/config -e EXT3_FS_POSIX_ACL
+- scripts/config -e EXT3_FS_SECURITY
+- scripts/config -e EXT4_FS
+- scripts/config -e EXT4_FS_XATTR
+- scripts/config -e EXT4_FS_POSIX_ACL
+- scripts/config -e EXT4_FS_SECURITY
+- scripts/config -d EXT4_DEBUG
+- scripts/config -e FUSE_FS
+- scripts/config -e OVERLAY_FS
+- scripts/config -e XFS_FS
+- scripts/config -e LIBCRC32C
+- scripts/config -d JBD_DEBUG
+- scripts/config -d JBD2_DEBUG
+- scripts/config -e BLK_DEV_LOOP
+- scripts/config -d BLK_DEV_CRYPTOLOOP
+- scripts/config -e CEPH_FS
+- scripts/config --set-val BLK_DEV_LOOP_MIN_COUNT 8
+- scripts/config -e DM_SNAPSHOT
+- scripts/config -e VIRTIO
+- scripts/config -e VIRTIO_RING
+- scripts/config -e VIRTIO_PCI
+- scripts/config -e VIRTIO_BALLOON
+- scripts/config -e VIRTIO_BLK
+- scripts/config -e VIRTIO_NET
+- scripts/config -e VIRTIO_CONSOLE
+- scripts/config -e HW_RANDOM_VIRTIO
+- scripts/config -e 9P_FS
+- scripts/config -e 9P_FSCACHE
+- scripts/config -e 9P_FS_POSIX_ACL
+- scripts/config -e NET_9P
+- scripts/config -e NET_9P_VIRTIO
+- scripts/config -e R8169
+- scripts/config -e 8139TOO
+- scripts/config -e 8139CP
+- scripts/config -e ATL1
+- scripts/config -e ATL1C
+- scripts/config -e ATL1E
+- scripts/config -e E100
+- scripts/config -e E1000
+- scripts/config -e E1000E
+- scripts/config -e USB_USBNET
+- scripts/config -e USB_NET_AX8817X
+- scripts/config -e USB_NET_AX88179_178A
+- scripts/config -e USB_NET_DM9601
+- scripts/config -e IKCONFIG
+- scripts/config -e IKCONFIG_PROC
+- scripts/config -e SECCOMP
+- scripts/config -d DEBUG_STACK_TRACE
+- scripts/config -e NFSD
+- scripts/config -e NFSD_V3
+- scripts/config -e KVM
+- scripts/config -e TUN
+- scripts/config -e BRIDGE
+- scripts/config -e VHOST_NET
+- scripts/config -e NF_NAT
+- scripts/config -e IP_NF_NAT
+- scripts/config -e IP_NF_TARGET_MASQUERADE
+- scripts/config -e FB_VESA
+- scripts/config -e HOTPLUG_PCI
+- scripts/config -e HOTPLUG_PCI_ACPI
+- scripts/config -e VLAN_8021Q
+- scripts/config -e BRIDGE_VLAN_FILTERING
+- scripts/config -e BLK_DEV_NBD
+- scripts/config -e BRIDGE_NF_EBTABLES
+- scripts/config -e NETFILTER
+- scripts/config -e NETFILTER_ADVANCED
+- scripts/config -e NETFILTER_XT_MATCH_ADDRTYPE
+- scripts/config -e OPENVSWITCH
+- scripts/config -e OPENVSWITCH_VXLAN
+- scripts/config -e CONFIG_OPENVSWITCH_GRE
+- scripts/config -e NET_CLS_BASIC
+- scripts/config -e NET_SCH_INGRESS
+- scripts/config -e NET_ACT_POLICE
+- scripts/config -e NET_IPGRE_DEMUX
+- scripts/config -e NET_SCH_HTB
+- scripts/config -e NET_SCH_HFSC
+- scripts/config -e VXLAN
+- scripts/config -e VETH
+- scripts/config -e IP_NF_MATCH_AH
+- scripts/config -e IP_NF_MATCH_ECN
+- scripts/config -e IP_NF_MATCH_RPFILTER
+- scripts/config -e IP_NF_MATCH_TTL
+- scripts/config -e IP_NF_TARGET_SYNPROXY
+- scripts/config -e IP_NF_TARGET_NETMAP
+- scripts/config -e IP_NF_TARGET_REDIRECT
+- scripts/config -e IP_NF_TARGET_CLUSTERIP
+- scripts/config -e IP_NF_TARGET_ECN
+- scripts/config -e IP_NF_TARGET_TTL
+- scripts/config -e IP_NF_RAW
+- scripts/config -e IP_NF_SECURITY
+- scripts/config -e IP_NF_ARPTABLES
+- scripts/config -e KVM_INTEL
+- scripts/config -e NETFILTER_NETLINK_QUEUE
+- scripts/config -e SCSI_NETLINK
+- scripts/config -e NETFILTER_XT_TARGET_MARK
+- scripts/config -e NETFILTER_XT_SET
+- scripts/config -e IP_SET
+- scripts/config -e IP_SET_BITMAP_IP
+- scripts/config -e IP_SET_BITMAP_IPMAC
+- scripts/config -e IP_SET_BITMAP_PORT
+- scripts/config -e IP_SET_HASH_IP
+- scripts/config -e IP_SET_HASH_IPMARK
+- scripts/config -e IP_SET_HASH_IPPORT
+- scripts/config -e IP_SET_HASH_IPPORTIP
+- scripts/config -e IP_SET_HASH_IPPORTNET
+- scripts/config -e IP_SET_HASH_MAC
+- scripts/config -e IP_SET_HASH_NETPORTNET
+- scripts/config -e IP_SET_HASH_NET
+- scripts/config -e IP_SET_HASH_NETNET
+- scripts/config -e IP_SET_HASH_NETPORT
+- scripts/config -e IP_SET_HASH_NETIFACE
+- scripts/config -e IP_SET_LIST_SET
+- scripts/config -e NF_CONNTRACK_TIMEOUT
+- scripts/config -e NF_CONNTRACK_TIMESTAMP
+- scripts/config -e NF_CONNTRACK_EVENTS
+- scripts/config -e NF_CONNTRACK_LABELS
+- scripts/config -e NETFILTER_NETLINK_ACCT
+- scripts/config -e NETFILTER_NETLINK_QUEUE_CT
+- scripts/config -e NF_CT_PROTO_DCCP
+- scripts/config -e NF_CT_PROTO_GRE
+- scripts/config -e NF_CT_PROTO_SCTP
+- scripts/config -e NF_CT_PROTO_UDPLITE
+- scripts/config -e NF_CT_NETLINK_TIMEOUT
+- scripts/config -e NF_CT_NETLINK_HELPER
+- scripts/config -e NF_CONNTRACK_AMANDA
+- scripts/config -e NF_CONNTRACK_H323
+- scripts/config -e NF_CONNTRACK_BROADCAST
+- scripts/config -e NF_CONNTRACK_NETBIOS_NS
+- scripts/config -e NF_CONNTRACK_SNMP
+- scripts/config -e NF_CONNTRACK_PPTP
+- scripts/config -e NF_CONNTRACK_SANE
+- scripts/config -e NF_CONNTRACK_TFTP
+- scripts/config -e NF_LOG_COMMON
+- scripts/config -e NF_NAT_PROTO_DCCP
+- scripts/config -e NF_NAT_PROTO_UDPLITE
+- scripts/config -e NF_NAT_PROTO_SCTP
+- scripts/config -e NF_NAT_AMANDA
+- scripts/config -e NF_NAT_TFTP
+- scripts/config -e NF_TABLES
+- scripts/config -e NF_TABLES_INET
+- scripts/config -e NFT_COMPAT
+- scripts/config -e NFT_EXTHDR
+- scripts/config -e NFT_META
+- scripts/config -e NFT_CT
+- scripts/config -e NFT_LIMIT
+- scripts/config -e NFT_NAT
+- scripts/config -e NFT_QUEUE
+- scripts/config -e NFT_REJECT
+- scripts/config -e NFT_REJECT_INET
+- scripts/config -e NFT_RBTREE
+- scripts/config -e NFT_HASH
+- scripts/config -e NFT_COUNTER
+- scripts/config -e NFT_LOG
+- scripts/config -e NFT_MASQ
+- scripts/config -e NETFILTER_XT_CONNMARK
+- scripts/config -e NETFILTER_XT_TARGET_AUDIT
+- scripts/config -e NETFILTER_XT_TARGET_CHECKSUM
+- scripts/config -e NETFILTER_XT_TARGET_CLASSIFY
+- scripts/config -e NETFILTER_XT_TARGET_CT
+- scripts/config -e NETFILTER_XT_TARGET_DSCP
+- scripts/config -e NETFILTER_XT_TARGET_HMARK
+- scripts/config -e NETFILTER_XT_TARGET_LED
+- scripts/config -e NETFILTER_XT_TARGET_LOG
+- scripts/config -e NETFILTER_XT_TARGET_NFQUEUE
+- scripts/config -e NETFILTER_XT_TARGET_RATEEST
+- scripts/config -e NETFILTER_XT_TARGET_TPROXY
+- scripts/config -e NETFILTER_XT_TARGET_TCPOPTSTRIP
+- scripts/config -e NETFILTER_XT_TARGET_TEE
+- scripts/config -e NETFILTER_XT_TARGET_TRACE
+- scripts/config -e NETFILTER_XT_TARGET_IDLETIMER
+- scripts/config -e NETFILTER_XT_MATCH_BPF
+- scripts/config -e NETFILTER_XT_MATCH_CLUSTER
+- scripts/config -e NETFILTER_XT_MATCH_COMMENT
+- scripts/config -e NETFILTER_XT_MATCH_CONNBYTES
+- scripts/config -e NETFILTER_XT_MATCH_CONNLABEL
+- scripts/config -e NETFILTER_XT_MATCH_CONNLIMIT
+- scripts/config -e NETFILTER_XT_MATCH_CPU
+- scripts/config -e NETFILTER_XT_MATCH_DCCP
+- scripts/config -e NETFILTER_XT_MATCH_DEVGROUP
+- scripts/config -e NETFILTER_XT_MATCH_DSCP
+- scripts/config -e NETFILTER_XT_MATCH_ESP
+- scripts/config -e NETFILTER_XT_MATCH_HASHLIMIT
+- scripts/config -e NETFILTER_XT_MATCH_HELPER
+- scripts/config -e NETFILTER_XT_MATCH_IPCOMP
+- scripts/config -e NETFILTER_XT_MATCH_IPRANGE
+- scripts/config -e NETFILTER_XT_MATCH_IPVS
+- scripts/config -e NETFILTER_XT_MATCH_L2TP
+- scripts/config -e NETFILTER_XT_MATCH_LENGTH
+- scripts/config -e NETFILTER_XT_MATCH_LIMIT
+- scripts/config -e NETFILTER_XT_MATCH_MAC
+- scripts/config -e NETFILTER_XT_MATCH_MULTIPORT
+- scripts/config -e NETFILTER_XT_MATCH_NFACCT
+- scripts/config -e NETFILTER_XT_MATCH_OSF
+- scripts/config -e NETFILTER_XT_MATCH_OWNER
+- scripts/config -e NETFILTER_XT_MATCH_CGROUP
+- scripts/config -e NETFILTER_XT_MATCH_PHYSDEV
+- scripts/config -e NETFILTER_XT_MATCH_PKTTYPE
+- scripts/config -e NETFILTER_XT_MATCH_QUOTA
+- scripts/config -e NETFILTER_XT_MATCH_RATEEST
+- scripts/config -e NETFILTER_XT_MATCH_REALM
+- scripts/config -e NETFILTER_XT_MATCH_RECENT
+- scripts/config -e NETFILTER_XT_MATCH_SCTP
+- scripts/config -e NETFILTER_XT_MATCH_SOCKET
+- scripts/config -e NETFILTER_XT_MATCH_STATISTIC
+- scripts/config -e NETFILTER_XT_MATCH_STRING
+- scripts/config -e NETFILTER_XT_MATCH_TCPMSS
+- scripts/config -e NETFILTER_XT_MATCH_TIME
+- scripts/config -e NETFILTER_XT_MATCH_U32
+- scripts/config -e IP_VS
+- scripts/config -e BRIDGE_NETFILTER
+- scripts/config -e CRYPTO_CRC32C
+- scripts/config -e CONFIGFS_FS
+- scripts/config -e EXPERT
+- scripts/config -e TARGET_CORE
+- scripts/config -e ISCSI_TARGET
+- scripts/config -e TCM_IBLOCK
+- scripts/config -e TCM_FILEIO
+- scripts/config -e TCM_PSCSI
+- scripts/config -e TCM_USER
+- scripts/config -e CONFIG_UIO
+- scripts/config -e LOOPBACK_TARGET
+- scripts/config -e TCM_FC
+- scripts/config -e LIBFC
+- scripts/config -e SCSI_FC_ATTRS
+- scripts/config -e SCSI_ISCSI_ATTRS
+- scripts/config -e ISCSI_TCP
+- scripts/config -e SCSI_LOWLEVEL
+- scripts/config -e SCSI_VIRTIO
+- scripts/config -e HYPERVISOR_GUEST
+- scripts/config -e PARAVIRT
+- yes '' | make oldconfig
+build-commands:
+- make $MAKEFLAGS
+install-commands:
+- mkdir -p "$DESTDIR"/boot
+- make INSTALL_PATH="$DESTDIR"/boot install
+- make INSTALL_MOD_PATH="$DESTDIR" modules_install
+- install -d "$DESTDIR$PREFIX/src/linux"
+- |
+ (
+ printf 'Makefile\0'
+ printf 'Module.symvers\0'
+ find arch/x86 -maxdepth 1 -name 'Makefile*' -print0
+ find arch/x86 \( -name 'module.lds' -o -name 'Kbuild.platforms' -o -name 'Platform' \) -print0
+ find arch/x86 \( -type d -a \( -name include -o -name scripts \) \) -o \
+ \! -type d -a \( -path '*include/*' -o -path '*scripts/*' \) -print0
+ find include -name 'asm*' -prune -o -print0
+ find include/asm-generic -print0
+ find include/uapi -print0
+ find scripts -print0
+ ) | cpio -0pumd "$DESTDIR$PREFIX/src/linux"
diff --git a/strata/bsp-x86_64-openwrt/nasm-wrt.morph b/strata/bsp-x86_64-openwrt/nasm-wrt.morph
new file mode 100644
index 00000000..f7b92066
--- /dev/null
+++ b/strata/bsp-x86_64-openwrt/nasm-wrt.morph
@@ -0,0 +1,5 @@
+name: nasm-wrt
+kind: chunk
+build-system: autotools
+install-commands:
+- make INSTALLROOT="$DESTDIR" install
diff --git a/strata/bsp-x86_64-openwrt/syslinux-wrt.morph b/strata/bsp-x86_64-openwrt/syslinux-wrt.morph
new file mode 100644
index 00000000..18539f28
--- /dev/null
+++ b/strata/bsp-x86_64-openwrt/syslinux-wrt.morph
@@ -0,0 +1,12 @@
+name: syslinux-wrt
+kind: chunk
+products:
+- artifact: syslinux-devel
+ include:
+ - (usr/)?share/syslinux/com32.*
+build-commands:
+- make clean
+- make NO_WERROR=1
+- make NO_WERROR=1 installer
+install-commands:
+- make INSTALLROOT="$DESTDIR" install
diff --git a/strata/build-essential.morph b/strata/build-essential.morph
index ff5682a9..98db50b2 100644
--- a/strata/build-essential.morph
+++ b/strata/build-essential.morph
@@ -305,7 +305,7 @@ chunks:
- name: busybox
morph: strata/build-essential/busybox.morph
repo: https://github.com/mossmaurice/busybox.git
- ref: e7988013de531c2d17fad9412cb5ea528ed66500
+ ref: 52880005e89c4dbf1e31aa0c46ae4c99df72f127
unpetrify-ref: shoinkis/openwrt
build-depends:
- stage2-binutils
diff --git a/strata/core-wrt.morph b/strata/core-wrt.morph
new file mode 100644
index 00000000..90c7cf9a
--- /dev/null
+++ b/strata/core-wrt.morph
@@ -0,0 +1,237 @@
+name: core-wrt
+kind: stratum
+description: Core components of a Baserock base system that are build tools required
+ for the BSP and Foundation strata, but a step above build-essential
+build-depends:
+- morph: strata/build-essential.morph
+chunks:
+- name: sqlite3
+ repo: upstream:sqlite3
+ ref: 24adc227bc29cd17e39df097fbca389c7724cd14
+ unpetrify-ref: sqlite-autoconf-3080801
+- name: cmake
+ morph: strata/core/cmake.morph
+ repo: upstream:cmake
+ ref: 732d8a467ab8a295b1bbf580f865980f8a1a9b29
+ unpetrify-ref: v3.2.1
+- name: gdbm
+ morph: strata/core/gdbm.morph
+ repo: upstream:gdbm-tarball
+ ref: e5faeaaf75ecfb705a9b643b3e4cb881ebb69f48
+ unpetrify-ref: gdbm-1.11
+- name: gettext-tarball
+ morph: strata/core/gettext-tarball.morph
+ repo: upstream:gettext-tarball
+ ref: 482840e61f86ca321838a91e902c41d40c098bbb
+ unpetrify-ref: gettext-0.19.4
+- name: mini-utils
+ morph: strata/core/mini-utils.morph
+ repo: baserock:baserock/mini-utils
+ ref: 5293265b29bbf468ab9d7f3302b19dbc81d0f8b8
+ unpetrify-ref: master
+- name: ncurses
+ morph: strata/core/ncurses.morph
+ repo: upstream:ncurses
+ ref: f67398afa6a76fbc902cc0cea963d5151fa2a953
+ unpetrify-ref: ncurses-5.9-20150131
+- name: perl
+ morph: strata/core/perl.morph
+ repo: upstream:perl
+ ref: 78f9a3c880f11578fb9ff9c7d5f7e34b602d2ad1
+ unpetrify-ref: baserock/morph
+ build-depends:
+ - gdbm
+- name: texinfo-tarball
+ morph: strata/core/texinfo-tarball.morph
+ repo: upstream:texinfo-tarball
+ ref: 6a55f074b1f67d02149c13931eb1df9f0e539b15
+ unpetrify-ref: texinfo-5.2
+ build-depends:
+ - ncurses
+ - perl
+- name: autoconf-tarball
+ morph: strata/core/autoconf-tarball.morph
+ repo: upstream:autoconf-tarball
+ ref: 55d1d2c339bc5f935f6d8d702e98b7bd5d968e9d
+ unpetrify-ref: autoconf-2.69
+ build-depends:
+ - perl
+- name: automake
+ morph: strata/core/automake.morph
+ repo: upstream:automake
+ ref: db43dd473361d90d8b00362cfef5bac8e722000d
+ unpetrify-ref: v1.15
+ build-depends:
+ - autoconf-tarball
+ - perl
+ - texinfo-tarball
+- name: bash
+ morph: strata/core/bash.morph
+ repo: upstream:bash
+ ref: 3590145af6f1c9fa321dff231f69ae696e7e740b
+ unpetrify-ref: baserock/bash-4.3-patch-27
+- name: flex
+ morph: strata/core/flex.morph
+ repo: upstream:flex
+ ref: de10f98e8a2dc2a021796811490d0f30c3cd90bf
+ unpetrify-ref: baserock/build-essential
+ build-depends:
+ - automake
+ - gettext-tarball
+- name: openssl-new
+ morph: strata/core/openssl-new.morph
+ repo: upstream:openssl-new
+ ref: 506c1068801fdeef5cb00f2053854bf56150fb6d
+ unpetrify-ref: OpenSSL_1_0_1m
+ build-depends:
+ - perl
+- name: bzip2
+ morph: strata/core/bzip2.morph
+ repo: upstream:bzip2
+ ref: 8deafa68e52b230018c0318dc7959ff9af3ad2a5
+ unpetrify-ref: baserock/morph
+- name: readline
+ morph: strata/core/readline.morph
+ repo: upstream:readline
+ ref: 518937ab89be812ccd45e9b8c1ce4ad721d35ef6
+ unpetrify-ref: baserock/genivi/baseline
+ build-depends:
+ - automake
+- name: cpython
+ morph: strata/core/cpython.morph
+ repo: upstream:cpython
+ ref: d0188e98ecf02e007d85fc34944f8be8f91b7e94
+ unpetrify-ref: v2.7.9
+ build-depends:
+ - openssl-new
+ - bzip2
+ - sqlite3
+ - ncurses
+ - readline
+- name: libtool-tarball
+ morph: strata/core/libtool-tarball.morph
+ repo: upstream:libtool-tarball
+ ref: c026ca36e37d2643623a75d0d3e9e451023139f3
+ unpetrify-ref: libtool-2.4.6
+- name: xz
+ repo: upstream:xz
+ ref: a0cd05ee71d330b79ead6eb9222e1b24e1559d3a
+ unpetrify-ref: v5.2.0
+ build-depends:
+ - autoconf-tarball
+ - automake
+ - gettext-tarball
+ - libtool-tarball
+ - gettext-tarball
+- name: help2man
+ repo: upstream:help2man
+ ref: 83bab7e2e8e24a380266a9a247c029c49b0de666
+ unpetrify-ref: baserock/v1.46.5
+ build-depends:
+ - autoconf-tarball
+ - automake
+- name: bison
+ morph: strata/core/bison-wrt.morph
+ repo: upstream:bison
+ ref: 2ab6d1daaccf32fc4314e4b2fe44da977f11a308
+ unpetrify-ref: baserock/v3.0.2
+ build-depends:
+ - autoconf-tarball
+ - automake
+ - flex
+ - gettext-tarball
+ - help2man
+ - mini-utils
+- name: pkg-config
+ morph: strata/core/pkg-config.morph
+ repo: upstream:pkg-config
+ ref: 74ceac54ef6f9247c00f08eecd8cca811a3c5934
+ unpetrify-ref: pkg-config-0.28
+ build-depends:
+ - autoconf-tarball
+ - automake
+ - libtool-tarball
+- name: attr
+ morph: strata/core/attr.morph
+ repo: upstream:attr
+ ref: 4b005410f865895d4dcd56e2c135278a7a315877
+ unpetrify-ref: baserock/morph
+ build-depends:
+ - autoconf-tarball
+ - automake
+ - gettext-tarball
+ - libtool-tarball
+- name: acl
+ morph: strata/core/acl.morph
+ repo: upstream:acl
+ ref: f13e09bd54fd4a501c4952f002ed2752bdd9f93b
+ unpetrify-ref: v2.2.52
+ build-depends:
+ - autoconf-tarball
+ - automake
+ - gettext-tarball
+ - libtool-tarball
+ - attr
+- name: linux-pam
+ morph: strata/core/linux-pam.morph
+ repo: upstream:linux-pam
+ ref: b1521c97e73b10469f7b34c0571d51c647eca83c
+ unpetrify-ref: Linux-PAM-1.1.8
+ build-depends:
+ - autoconf-tarball
+ - automake
+ - gettext-tarball
+ - libtool-tarball
+ - pkg-config
+ - flex
+ - attr
+ - acl
+- name: libcap2
+ morph: strata/core/libcap2.morph
+ repo: upstream:libcap2
+ ref: 4f7cca1bc9c2a274edb39d351b65747010d3ba7b
+ unpetrify-ref: baserock/morph
+ build-depends:
+ - autoconf-tarball
+ - automake
+ - gettext-tarball
+ - libtool-tarball
+ - pkg-config
+ - attr
+ - acl
+ - linux-pam
+- name: shadow
+ morph: strata/core/shadow.morph
+ repo: upstream:shadow
+ ref: 4f5000a45963c2cc2a403ad23e459f20296b29c2
+ unpetrify-ref: baserock/4.2
+ build-depends:
+ - autoconf-tarball
+ - automake
+ - gettext-tarball
+ - libtool-tarball
+ - bison
+ - attr
+ - acl
+ - linux-pam
+ - libcap2
+- name: util-linux
+ morph: strata/core/util-linux.morph
+ repo: upstream:util-linux
+ ref: 34760e62e0d5a25262a6aa801b2f1df61216363f
+ unpetrify-ref: v2.26.1
+ build-depends:
+ - autoconf-tarball
+ - automake
+ - gettext-tarball
+ - libtool-tarball
+ - pkg-config
+ - linux-pam
+ - shadow
+- name: bc
+ repo: upstream:bc-tarball
+ ref: 0956d119432ff6a2e85bae1fa336df799cad70b0
+ unpetrify-ref: baserock/morph
+ build-depends:
+ - flex
+ - texinfo-tarball
diff --git a/strata/core/bison-wrt.morph b/strata/core/bison-wrt.morph
new file mode 100644
index 00000000..fb73c15d
--- /dev/null
+++ b/strata/core/bison-wrt.morph
@@ -0,0 +1,6 @@
+name: bison-wrt
+kind: chunk
+build-system: autotools
+pre-configure-commands:
+- echo "3.0.2" > .tarball-version
+- sh bootstrap --skip-po --no-git --gnulib-srcdir=gnulib
diff --git a/strata/core/bison.morph b/strata/core/bison.morph
index 7c7fffd9..352f5fcf 100644
--- a/strata/core/bison.morph
+++ b/strata/core/bison.morph
@@ -2,4 +2,5 @@ name: bison
kind: chunk
build-system: autotools
pre-configure-commands:
-- bash bootstrap --skip-po
+- echo "3.0.2" > .tarball-version
+- sh bootstrap --skip-po --no-git --gnulib-srcdir=gnulib
diff --git a/strata/cpe-wrt.morph b/strata/cpe-wrt.morph
index bf7accab..5d80c4b3 100644
--- a/strata/cpe-wrt.morph
+++ b/strata/cpe-wrt.morph
@@ -2,9 +2,35 @@ name: cpe-wrt
kind: stratum
description: a CPE router strata based on OpenWrt
build-depends:
- - morph: strata/foundation.morph
- - morph: strata/connectivity.morph
+ - morph: strata/core-wrt.morph
chunks:
+- name: lzo-wrt
+ morph: strata/cpe-wrt/lzo-wrt.morph
+ repo: upstream:lzo
+ ref: 5cca83e4d1b0be5825a597ab24ffa6126dc0bc95
+ unpetrify-ref: lzo-2.08
+- name: libnl-tiny
+ morph: strata/cpe-wrt/libnl-tiny.morph
+ repo: upstream:openwrt/libnl-tiny
+ ref: 91420e5fbbe932f93d55f0581bf43256a3dae8dc
+ unpetrify-ref: master
+- name: wpa-supplicant-wrt
+ morph: strata/cpe-wrt/wpa_supplicant_wrt.morph
+ repo: upstream:hostap
+ ref: c4a58c968044c2002706b1a69c089c4d63728e77
+ unpetrify-ref: baserock/hostap_2_3
+ build-depends:
+ - libnl-tiny
+- name: iptables
+ repo: upstream:iptables
+ ref: 482c6d3731e2681cb4baae835c294840300197e6
+ unpetrify-ref: v1.4.21
+- name: dropbear
+ morph: strata/cpe-wrt/dropbear.morph
+ repo: upstream:openwrt/dropbear
+ ref: dd0352d93b92a4cf78bc05958304bc779233d68c
+ unpetrify-ref: DROPBEAR_2015.67
+ build-depends: []
- name: lua
repo: upstream:lua
ref: 5.1.5
@@ -42,12 +68,6 @@ chunks:
build-depends:
- libubox
- lua
-- name: odhcpd
- repo: upstream:openwrt/odhcpd
- ref: 721db56281dba79158470d7f69ccc7577f11fbb6
- unpetrify-ref:
- build-depends:
- - uci
- name: ubox
morph: strata/cpe-wrt/ubox.morph
repo: upstream:openwrt/ubox
@@ -56,6 +76,32 @@ chunks:
build-depends:
- ubus
- uci
+ - iptables
+- name: uhttpd
+ morph: strata/cpe-wrt/uhttpd.morph
+ repo: file:///src/workspace/uhttpd
+ ref: e127d57b212c3617c4608580b77f58f6abdeeda1
+ build-depends:
+ - ubox
+ - json-c
+- name: ustream-ssl
+ repo: upstream:openwrt/ustream-ssl
+ ref: a4ca61527236e89eb9efb782fd9bfd04796144e3
+ build-depends:
+ - ubox
+- name: uclient
+ repo: upstream:openwrt/uclient
+ ref: 81fdb8fdf1470e1c7bf3124ff20d17feaeb519ee
+ build-depends:
+ - ubox
+ - ustream-ssl
+- name: odhcpd
+ repo: upstream:openwrt/odhcpd
+ ref: 681ba23d0b3678a9a0c90ef938cd1d48f2ee6046
+ unpetrify-ref:
+ build-depends:
+ - uci
+ - ubox
- name: firewall3
morph: strata/cpe-wrt/firewall3.morph
repo: upstream:openwrt/firewall3
@@ -64,6 +110,7 @@ chunks:
build-depends:
- ubus
- uci
+ - iptables
- name: fstools
morph: strata/cpe-wrt/fstools.morph
repo: upstream:openwrt/fstools
@@ -82,12 +129,14 @@ chunks:
- libubox
- uci
- ubus
+ - libnl-tiny
- name: mtd
morph: strata/cpe-wrt/mtd.morph
repo: upstream:mtd-utils
- ref: 92686f212c9a4e16891c6a3c57629cbf4f0f8360
- unpetrify-ref:
- build-depends: []
+ ref: dcb5ebe69c663375f13aefa303c8bbbabf414ac8
+ unpetrify-ref: baserock/1.5.1
+ build-depends:
+ - lzo-wrt
- name: procd
morph: strata/cpe-wrt/procd.morph
repo: upstream:openwrt/procd
@@ -103,20 +152,40 @@ chunks:
build-depends:
- netifd
- procd
-#- name: iwinfo
-# morph: strata/cpe-wrt/iwinfo.morph
-# repo: git://git.openwrt.org/project/iwinfo.git
-# ref: HEAD
-# unpetrify-ref:
-# build-depends:
-# - uci
-#- name: rpcd
-# morph: strata/cpe-wrt/rpcd.morph
-# repo: upstream:openwrt/rpcd
-# ref: 805e8ce8918237d93baafa53413c5c4ef0380504
-# unpetrify-ref:
-# build-depends:
-# - json-c
-# - iwinfo
-# - ubus
-# - uci
+- name: iwinfo
+ morph: strata/cpe-wrt/iwinfo.morph
+ repo: file:///src/workspace/iwinfo
+ ref: 6e67940be59e1aee5d275dd61172b257cb34d726
+ unpetrify-ref: master
+ build-depends:
+ - uci
+- name: rpcd
+ morph: strata/cpe-wrt/rpcd.morph
+ repo: upstream:openwrt/rpcd
+ ref: 805e8ce8918237d93baafa53413c5c4ef0380504
+ unpetrify-ref:
+ build-depends:
+ - json-c
+ - iwinfo
+ - ubus
+ - uci
+- name: jsonpath
+ morph: strata/cpe-wrt/jsonpath.morph
+ repo: upstream:openwrt/jsonpath
+ ref: cdc760c58077f44fc40adbbe41e1556a67c1b9a9
+ unpetrify-ref:
+ build-depends:
+ - json-c
+ - libubox
+- name: dnsmasq
+ morph: strata/cpe-wrt/dnsmasq.morph
+ repo: upstream:openwrt/dnsmasq
+ ref: b059c96dc69dfe3055c5b32b078a05c53b11ebb3
+- name: luci2-ui
+ morph: strata/cpe-wrt/luci2-ui.morph
+ repo: upstream:openwrt/luci2-ui
+ ref: e452ca693af5278ff2ddc69b6f8ed0f346c98fb1
+ build-depends:
+ - ubox
+ - ubus
+ - rpcd
diff --git a/strata/cpe-wrt/base-files.morph b/strata/cpe-wrt/base-files.morph
index 50ac95b8..297cf98d 100644
--- a/strata/cpe-wrt/base-files.morph
+++ b/strata/cpe-wrt/base-files.morph
@@ -7,27 +7,23 @@ pre-configure-commands:
- sed -i "s/export -n/export/" package/base-files/files/lib/functions/preinit.sh
install-commands:
-# FHS directories
-- |
- cp -r package/base-files/files/* "$DESTDIR"/
-
-# procd files
-- install package/system/procd/files/hotplug.json "$DESTDIR"/etc/
-- install package/system/procd/files/hotplug-preinit.json "$DESTDIR"/etc/
-- install package/system/procd/files/reload_config "$DESTDIR"/sbin/
-- install package/system/procd/files/procd.sh "$DESTDIR"/lib/functions/
-
-# netifd
-- |
- cp -r package/network/config/netifd/files/* "$DESTDIR"/
-
-# ubox
-- |
- cp -r package/system/ubox/files/* "$DESTDIR"/etc/init.d/log
-
-# uci
-- |
- cp -r package/system/uci/files/* "$DESTDIR"/
-
-# lock symlink
-- ln -s busybox "$DESTDIR"/bin/lock
+- cp -r package/base-files/files/* "$DESTDIR"/
+
+- install package/system/procd/files/hotplug.json "$DESTDIR"/etc/
+- install package/system/procd/files/hotplug-preinit.json "$DESTDIR"/etc/
+- install package/system/procd/files/reload_config "$DESTDIR"/sbin/
+- install package/system/procd/files/procd.sh "$DESTDIR"/lib/functions/
+
+- install -d $DESTDIR/etc/init.d
+- install -d $DESTDIR/etc/rc.d
+- cp -r package/network/config/netifd/files/* "$DESTDIR"/
+- install package/system/ubox/files/log.init "$DESTDIR"/etc/init.d/log
+- cp -r package/system/uci/files/* "$DESTDIR"/
+
+- install package/network/services/odhcpd/files/odhcpd.init "$DESTDIR"/etc/init.d/odhcpd
+- install package/network/services/dnsmasq/files/dnsmasq.init "$DESTDIR"/etc/init.d/dnsmasq
+- install package/network/services/dropbear/files/dropbear.init "$DESTDIR"/etc/init.d/dropbear
+- install package/network/services/uhttpd/files/uhttpd.init "$DESTDIR"/etc/init.d/uhttpd
+- install package/system/rpcd/files/rpcd.init "$DESTDIR"/etc/init.d/rpcd
+- install package/system/mountd/files/mountd.init "$DESTDIR"/etc/init.d/mountd
+- install package/network/config/firewall/files/firewall.init "$DESTDIR"/etc/init.d/firewall
diff --git a/strata/cpe-wrt/dnsmasq.morph b/strata/cpe-wrt/dnsmasq.morph
new file mode 100644
index 00000000..93d9ab02
--- /dev/null
+++ b/strata/cpe-wrt/dnsmasq.morph
@@ -0,0 +1,8 @@
+name: dnsmasq
+kind: chunk
+
+build-commands:
+- make
+
+install-commands:
+- make DESTDIR=$DESTDIR PREFIX=$PREFIX install
diff --git a/strata/cpe-wrt/dropbear.morph b/strata/cpe-wrt/dropbear.morph
new file mode 100644
index 00000000..1a9b0002
--- /dev/null
+++ b/strata/cpe-wrt/dropbear.morph
@@ -0,0 +1,16 @@
+name: dropbear
+kind: chunk
+
+configure-commands:
+- autoreconf -ivf
+- ./configure --prefix=$PREFIX
+
+build-commands:
+- make PROGRAMS="dropbear dbclient dropbearkey dropbearconvert scp"
+
+install-commands:
+- make PROGRAMS="dropbear dbclient dropbearkey dropbearconvert scp" DESTDIR=$DESTDIR install
+
+post-install-commands:
+- install -d "$DESTDIR/sbin" && cd "$DESTDIR/sbin" && ln -s ..$PREFIX/sbin/dropbear ssh
+
diff --git a/strata/cpe-wrt/firewall3.morph b/strata/cpe-wrt/firewall3.morph
index 0ef34b5a..304235d3 100644
--- a/strata/cpe-wrt/firewall3.morph
+++ b/strata/cpe-wrt/firewall3.morph
@@ -1,4 +1,4 @@
-name: ubox
+name: firewall3
kind: chunk
build-commands:
@@ -12,4 +12,4 @@ post-install-commands:
- |
install -d "$DESTDIR/sbin"
cd "$DESTDIR/sbin"
- ln -s ../usr/sbin/fw3 firewall3
+ ln -s ..$PREFIX/sbin/firewall3 fw3
diff --git a/strata/cpe-wrt/iwinfo.morph b/strata/cpe-wrt/iwinfo.morph
index 5040f3a5..8fcb1ebd 100644
--- a/strata/cpe-wrt/iwinfo.morph
+++ b/strata/cpe-wrt/iwinfo.morph
@@ -2,7 +2,15 @@ name: iwinfo
kind: chunk
build-commands:
-- make
+- make CFLAGS=-fPIC
install-commands:
-- make install
+- install -d $DESTDIR$PREFIX/include/iwinfo
+- cd include ; install iwinfo.h $DESTDIR$PREFIX/include/
+- cd include/iwinfo ; install * $DESTDIR$PREFIX/include/iwinfo
+- install -d $DESTDIR$PREFIX/lib
+- install libiwinfo.so $DESTDIR$PREFIX/lib/libiwinfo.so
+- install -d $DESTDIR$PREFIX/lib/lua
+- install iwinfo.so $DESTDIR$PREFIX/lib/lua/iwinfo.so
+- install -d $DESTDIR$PREFIX/bin
+- install iwinfo $DESTDIR$PREFIX/bin/iwinfo
diff --git a/strata/cpe-wrt/jsonpath.morph b/strata/cpe-wrt/jsonpath.morph
new file mode 100644
index 00000000..e6688ca6
--- /dev/null
+++ b/strata/cpe-wrt/jsonpath.morph
@@ -0,0 +1,12 @@
+name: jsonpath
+kind: chunk
+
+configure-commands:
+- sed -i 's/-Werror //' CMakeLists.txt
+- cmake -DCMAKE_INSTALL_PREFIX=$PREFIX
+
+build-commands:
+- make
+
+install-commands:
+- make install
diff --git a/strata/cpe-wrt/libnl-tiny.morph b/strata/cpe-wrt/libnl-tiny.morph
new file mode 100644
index 00000000..ce3f4d45
--- /dev/null
+++ b/strata/cpe-wrt/libnl-tiny.morph
@@ -0,0 +1,8 @@
+name: libnl-tiny
+kind: chunk
+
+build-commands:
+- make
+
+install-commands:
+- make prefix=$PREFIX DESTDIR=$DESTDIR install
diff --git a/strata/cpe-wrt/luci2-ui.morph b/strata/cpe-wrt/luci2-ui.morph
new file mode 100644
index 00000000..eb387a7b
--- /dev/null
+++ b/strata/cpe-wrt/luci2-ui.morph
@@ -0,0 +1,29 @@
+name: luci2-ui
+kind: chunk
+
+configure-commands:
+- cd luci2/src ; cmake -DCMAKE_INSTALL_PREFIX=$PREFIX
+
+build-commands:
+- cd luci2/src ; make
+
+install-commands:
+- install -d $DESTDIR/www
+- cd luci2/htdocs ; cp -R * $DESTDIR/www
+- install -d $DESTDIR$PREFIX/share/rpcd
+- cd luci2/share ; cp -R * $DESTDIR$PREFIX/share/rpcd
+- install -d $DESTDIR$PREFIX/lib/rpcd
+- cd luci2/src/rpcd ; install luci2.so bwmon.so $DESTDIR$PREFIX/lib/rpcd
+- install -d $DESTDIR/www/cgi-bin
+- install -d $DESTDIR$PREFIX/libexec
+- cd luci2/src/io ; install luci2-io $DESTDIR$PREFIX/libexec
+- cd $DESTDIR/www/cgi-bin ; ln ../..$PREFIX/libexec/luci2-io luci-upload
+- cd $DESTDIR/www/cgi-bin ; ln ../..$PREFIX/libexec/luci2-io luci-backup
+- install -d $DESTDIR$PREFIX/share/rpcd/menu.d
+- cd luci2-p910nd/files/usr/share/rpcd/menu.d ; install services.p910nd.json $DESTDIR$PREFIX/share/rpcd/menu.d
+- install -d $DESTDIR$PREFIX/share/rpcd/acl.d
+- cd luci2-p910nd/files/usr/share/rpcd/acl.d ; install services.p910nd.json $DESTDIR$PREFIX/share/rpcd/acl.d
+- install -d $DESTDIR/www/luci2/template
+- cd luci2-p910nd/files/www/luci2/template ; install services.p910nd.htm $DESTDIR/www/luci2/template
+- install -d $DESTDIR/www/luci2/view
+- cd luci2-p910nd/files/www/luci2/view ; install services.p910nd.js $DESTDIR/www/luci2/view
diff --git a/strata/cpe-wrt/lzo-wrt.morph b/strata/cpe-wrt/lzo-wrt.morph
new file mode 100644
index 00000000..f12b00a8
--- /dev/null
+++ b/strata/cpe-wrt/lzo-wrt.morph
@@ -0,0 +1,5 @@
+name: lzo-wrt
+kind: chunk
+build-system: autotools
+configure-commands:
+- ./configure --enable-shared=yes --prefix="$PREFIX"
diff --git a/strata/cpe-wrt/netifd.morph b/strata/cpe-wrt/netifd.morph
index 20126327..df520d77 100644
--- a/strata/cpe-wrt/netifd.morph
+++ b/strata/cpe-wrt/netifd.morph
@@ -9,8 +9,8 @@ pre-configure-commands:
- sed -i "s/SET(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS \"\")/SET(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS \"\")\nINCLUDE(FindPkgConfig)\nPKG_CHECK_MODULES(JSONC json-c)\nIF(JSONC_FOUND)\n ADD_DEFINITIONS(-DJSONC)\n INCLUDE_DIRECTORIES(${JSONC_INCLUDE_DIRS})\nENDIF()\n\nPKG_CHECK_MODULES(LIBNL libnl-3.0)\nINCLUDE_DIRECTORIES(\${LIBNL_INCLUDE_DIRS})\n/" CMakeLists.txt
build-commands:
-- cmake -DCMAKE_INSTALL_PREFIX=$PREFIX
-- make VERBOSE=1
+- cmake -DCMAKE_INSTALL_PREFIX=$PREFIX -DLIBNL_LIBS=-lnl-tiny -DLIBNL_INCLUDE_DIRS=/usr/include/libnl-tiny
+- make
install-commands:
- make install
diff --git a/strata/cpe-wrt/rpcd.morph b/strata/cpe-wrt/rpcd.morph
index ae62a71a..0d8d7479 100644
--- a/strata/cpe-wrt/rpcd.morph
+++ b/strata/cpe-wrt/rpcd.morph
@@ -4,9 +4,13 @@ kind: chunk
pre-configure-commands:
- sed -i "s/json\/json.h/json-c\/json.h/" include/rpcd/plugin.h
-build-commands:
+configure-commands:
- cmake -DCMAKE_INSTALL_PREFIX=$PREFIX
+
+build-commands:
- make
install-commands:
- make install
+- install -d $DESTDIR$PREFIX/include/rpcd
+- cd include/rpcd ; install * $DESTDIR$PREFIX/include/rpcd
diff --git a/strata/cpe-wrt/ubox.morph b/strata/cpe-wrt/ubox.morph
index 3281f166..4a0f7fb9 100644
--- a/strata/cpe-wrt/ubox.morph
+++ b/strata/cpe-wrt/ubox.morph
@@ -1,8 +1,10 @@
name: ubox
kind: chunk
-build-commands:
+configure-commands:
- cmake -DCMAKE_INSTALL_PREFIX=$PREFIX
+
+build-commands:
- make
install-commands:
@@ -12,7 +14,7 @@ post-install-commands:
- |
install -d "$DESTDIR/sbin"
cd "$DESTDIR/sbin"
- ln -s ../usr/sbin/kmodloader kmodloader
- ln -s ../usr/sbin/lsbloader lsbloader
- ln -s ../usr/sbin/validate_data validate_data
- ln -s ../usr/sbin/logd logd
+ ln -s ..$PREFIX/sbin/kmodloader kmodloader
+ ln -s ..$PREFIX/sbin/lsbloader lsbloader
+ ln -s ..$PREFIX/sbin/validate_data validate_data
+ ln -s ..$PREFIX/sbin/logd logd
diff --git a/strata/cpe-wrt/ubus.morph b/strata/cpe-wrt/ubus.morph
index d5ed234a..393be175 100644
--- a/strata/cpe-wrt/ubus.morph
+++ b/strata/cpe-wrt/ubus.morph
@@ -12,7 +12,7 @@ post-install-commands:
- |
install -d "$DESTDIR/sbin"
cd "$DESTDIR/sbin"
- ln -s ../usr/sbin/ubusd ubusd
+ ln -s ..$PREFIX/sbin/ubusd ubusd
install -d "$DESTDIR/bin"
cd "$DESTDIR/bin"
- ln -s ../usr/bin/ubus ubus
+ ln -s ..$PREFIX/bin/ubus ubus
diff --git a/strata/cpe-wrt/uci.morph b/strata/cpe-wrt/uci.morph
index d5734208..86fecdc2 100644
--- a/strata/cpe-wrt/uci.morph
+++ b/strata/cpe-wrt/uci.morph
@@ -9,4 +9,4 @@ install-commands:
- make install
post-install-commands:
-- install -d "$DESTDIR/bin" && cd "$DESTDIR/bin" && ln -s ../usr/bin/uci uci
+- install -d "$DESTDIR/bin" && cd "$DESTDIR/bin" && ln -s ..$PREFIX/bin/uci uci
diff --git a/strata/cpe-wrt/uhttpd.morph b/strata/cpe-wrt/uhttpd.morph
new file mode 100644
index 00000000..594df559
--- /dev/null
+++ b/strata/cpe-wrt/uhttpd.morph
@@ -0,0 +1,14 @@
+name: uhttp
+kind: chunk
+
+pre-configure-commands:
+- sed -i 's/-Werror//' CMakeLists.txt
+
+configure-commands:
+- cmake -DCMAKE_INSTALL_PREFIX=$PREFIX
+
+build-commands:
+- make
+
+install-commands:
+- make install
diff --git a/strata/cpe-wrt/wpa_supplicant_wrt.morph b/strata/cpe-wrt/wpa_supplicant_wrt.morph
new file mode 100644
index 00000000..f8e0b57b
--- /dev/null
+++ b/strata/cpe-wrt/wpa_supplicant_wrt.morph
@@ -0,0 +1,14 @@
+name: wpa-supplicant-wrt
+kind: chunk
+configure-commands:
+- sed -i 's/^CONFIG_READLINE=y$//' wpa_supplicant/.config
+- sed -i 's/^CONFIG_CTRL_IFACE_DBUS=y$//' wpa_supplicant/.config
+- sed -i 's/^CONFIG_CTRL_IFACE_DBUS_NEW=y$//' wpa_supplicant/.config
+- sed -i 's/^CONFIG_CTRL_IFACE_DBUS_INTRO=y$//' wpa_supplicant/.config
+- sed -i 's/^CONFIG_LIBNL32/CONFIG_LIBNL_TINY/' wpa_supplicant/.config
+- echo "CFLAGS += -I/usr/include/libnl-tiny -DLIBNL1_COMPAT -D_GNU_SOURCE" >> wpa_supplicant/.config
+
+build-commands:
+- make -C wpa_supplicant
+install-commands:
+- make -C wpa_supplicant DESTDIR="$DESTDIR" install
diff --git a/strata/foundation/openssh-wrt.morph b/strata/foundation/openssh-wrt.morph
new file mode 100644
index 00000000..2df17a4e
--- /dev/null
+++ b/strata/foundation/openssh-wrt.morph
@@ -0,0 +1,28 @@
+name: openssh-wrt
+kind: chunk
+configure-commands:
+- autoreconf -if
+- |
+ OPENSSL_SEEDS_ITSELF=yes ./configure \
+ --prefix="$PREFIX" --sysconfdir=/etc/ssh \
+ --datadir="$PREFIX/share/sshd" \
+ --libexecdir="$PREFIX/lib/openssh" \
+ --with-privsep-path=/var/lib/sshd
+build-commands:
+- make
+- |
+ sed -e "s|@prefix@|$PREFIX|g" \
+ -e 's|@STARTUP_SCRIPT_SHELL@|/bin/sh|g' \
+ -e 's|@sysconfdir@|/etc/ssh|g' \
+ -e 's|@COMMENT_OUT_ECC@||g' \
+ sshd-keygen.in >sshd-keygen
+- sed -e "s|@prefix@|$PREFIX|g" opensshd.service.in >opensshd.service
+install-commands:
+- make DESTDIR="$DESTDIR" install
+- mkdir -p "$DESTDIR/$PREFIX/sbin"
+- chmod go= "$DESTDIR"/var/lib/sshd
+- install -m 744 sshd-keygen "$DESTDIR/$PREFIX/sbin/sshd-keygen"
+- install -m 755 contrib/ssh-copy-id "$DESTDIR/$PREFIX/bin/ssh-copy-id"
+- mkdir -p "$DESTDIR/lib/systemd/system/multi-user.target.wants"
+- install -m 644 opensshd.service "$DESTDIR/lib/systemd/system/opensshd.service"
+- ln -s ../opensshd.service "$DESTDIR/lib/systemd/system/multi-user.target.wants/opensshd.service"
diff --git a/systems/minimal-system-x86-64-openwrt.morph b/systems/minimal-system-x86-64-openwrt.morph
new file mode 100644
index 00000000..274a2b9b
--- /dev/null
+++ b/systems/minimal-system-x86-64-openwrt.morph
@@ -0,0 +1,21 @@
+name: minimal-system-x86_64-openwrt
+kind: system
+description: The set of strata required to have a minimal system for a 64-bit x86
+ system.
+arch: x86_64
+strata:
+- name: build-essential
+ morph: strata/build-essential.morph
+ artifacts:
+ - build-essential-minimal
+- name: cpe-wrt
+ morph: strata/cpe-wrt.morph
+- name: bsp-x86_64-openwrt
+ morph: strata/bsp-x86_64-openwrt.morph
+ artifacts:
+ - bsp-x86_64-openwrt-runtime
+configuration-extensions:
+- set-hostname
+- simple-network
+- nfsboot
+- install-files