Skip to content

Instantly share code, notes, and snippets.

@binkybear
Last active October 15, 2022 19:07
Show Gist options
  • Save binkybear/18dab6ef15bfb8052f15c12c6b7777f3 to your computer and use it in GitHub Desktop.
Save binkybear/18dab6ef15bfb8052f15c12c6b7777f3 to your computer and use it in GitHub Desktop.

Revisions

  1. binkybear revised this gist Sep 2, 2016. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion gistfile1.txt
    Original file line number Diff line number Diff line change
    @@ -133,4 +133,4 @@ EOF
    make
    make install
    cp -rf /data OUT/data && rm -rf /data
    cp -rf /root/build/android-ndk-r10e/platforms/android-21/arch-arm/usr/lib/libcap.* OUT/data/lxc/lib/*
    cp -rf /root/build/android-ndk-r10e/platforms/android-21/arch-arm/usr/lib/libcap.* OUT/data/lxc/lib/
  2. binkybear revised this gist Sep 2, 2016. 1 changed file with 2 additions and 3 deletions.
    5 changes: 2 additions & 3 deletions gistfile1.txt
    Original file line number Diff line number Diff line change
    @@ -30,7 +30,6 @@ cp -f libcap/include/uapi/linux/capability.h /root/build/android-ndk-r10e/platfo
    # Build LXC
    cd /root/lxc
    ./autogen.sh && mkdir -p OUT
    wget https://raw.githubusercontent.com/brauner/lxc/9b1e2e6e2c17e8babf033f782abd704d649c5ac9/src/lxc/criu.c -O src/lxc/criu.c
    cat << 'EOF' > /root/build/android-ndk-r10e/platforms/android-21/arch-arm/usr/include/linux/genetlink.h
    /****************************************************************************
    ****************************************************************************
    @@ -133,5 +132,5 @@ EOF
    ./configure --host=arm-eabi --disable-api-docs --disable-lua --disable-python --disable-examples --prefix=/data/lxc/lxc --with-runtime-path=/cache/ --bindir="/data/lxc/bin" --libdir="/data/lxc/lib" --with-config-path=/data/lxc/containers/
    make
    make install
    cp -rf /data out && rm -rf /data
    cp -rf /root/build/android-ndk-r10e/platforms/android-21/arch-arm/usr/lib/libcap.* out/data/lxc/lib/*
    cp -rf /data OUT/data && rm -rf /data
    cp -rf /root/build/android-ndk-r10e/platforms/android-21/arch-arm/usr/lib/libcap.* OUT/data/lxc/lib/*
  3. binkybear revised this gist Aug 27, 2016. 1 changed file with 19 additions and 13 deletions.
    32 changes: 19 additions & 13 deletions gistfile1.txt
    Original file line number Diff line number Diff line change
    @@ -1,33 +1,35 @@
    # Get Pre-reqs
    apt-get install libattr1-dev git unzip make gcc automake pkg-config

    # Get Android NDK
    cd /root
    mkdir -p build/toolchain && cd build
    mkdir -p build && cd build
    wget http://dl.google.com/android/repository/android-ndk-r10e-linux-x86_64.zip -O /tmp/android-ndk-r10e-linux-x86_64.zip
    unzip /tmp/android-ndk-r10e-linux-x86_64.zip -d /root/build
    cd toolchain
    git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9 android-armhf-4.9

    export PATH=$PATH:/root/build/toolchain/android-armhf-4.9/bin:/root/build/android-ndk-r10e/
    # Set paths
    export PATH=$PATH:/root/build/android-ndk-r10e/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/:/root/build/android-ndk-r10e/
    export SYSROOT=/root/build/android-ndk-r10e/platforms/android-21/arch-arm/
    export LD=arm-linux-androideabi-ld
    export CC="/root/build/toolchain/android-armhf-4.9/bin/arm-linux-androideabi-gcc --sysroot=/root/build/android-ndk-r10e/platforms/android-21/arch-arm/"
    export CC="arm-linux-androideabi-gcc --sysroot=/root/build/android-ndk-r10e/platforms/android-21/arch-arm/"
    export CFLAGS="-fomit-frame-pointer -DANDROID -pie -fPIE --sysroot=/root/build/android-ndk-r10e/platforms/android-21/arch-arm/ -I/root/build/android-ndk-r10e/platforms/android-21/arch-arm/usr/include/"
    export LDFLAGS="-Wl,--dynamic-linker,/system/bin/linker -lc -ldl"
    export BUILD_CC=gcc

    # Get LXC and libcap
    cd /root
    git clone https://github.com/lxc/lxc
    cd lxc
    git clone git://git.kernel.org/pub/scm/linux/kernel/git/morgan/libcap.git
    cd libcap
    git clone https://github.com/lxc/lxc && cd lxc
    git clone git://git.kernel.org/pub/scm/linux/kernel/git/morgan/libcap.git && cd libcap
    git checkout 0ee94211e95096750ede752acd13b163aa6d5046
    make
    cp -f libcap/libcap.so* /root/build/android-ndk-r10e/platforms/android-21/arch-arm/usr/lib/
    cp -f libcap/libcap.a /root/build/android-ndk-r10e/platforms/android-21/arch-arm/usr/lib/
    cp -f libcap/include/sys/capability.h /root/build/android-ndk-r10e/platforms/android-21/arch-arm/usr/include/sys/capability.h
    cp -f libcap/include/uapi/linux/capability.h /root/build/android-ndk-r10e/platforms/android-21/arch-arm/usr/include/linux/
    cd ..
    ./autogen.sh
    mkdir -p OUT

    # Build LXC
    cd /root/lxc
    ./autogen.sh && mkdir -p OUT
    wget https://raw.githubusercontent.com/brauner/lxc/9b1e2e6e2c17e8babf033f782abd704d649c5ac9/src/lxc/criu.c -O src/lxc/criu.c
    cat << 'EOF' > /root/build/android-ndk-r10e/platforms/android-21/arch-arm/usr/include/linux/genetlink.h
    /****************************************************************************
    @@ -126,6 +128,10 @@ enum {
    #define CTRL_ATTR_MCAST_GRP_MAX (__CTRL_ATTR_MCAST_GRP_MAX - 1)
    #endif
    EOF
    ./configure --host=arm-eabi --disable-api-docs --disable-lua --disable-python --disable-examples --prefix=/data/lxc/lxc --with-runtime-path=/cache/ --bindir="/system/bin" --libdir="/system/lib" --with-config-path=/data/lxc/containers/

    # Start build
    ./configure --host=arm-eabi --disable-api-docs --disable-lua --disable-python --disable-examples --prefix=/data/lxc/lxc --with-runtime-path=/cache/ --bindir="/data/lxc/bin" --libdir="/data/lxc/lib" --with-config-path=/data/lxc/containers/
    make
    make install
    cp -rf /data out && rm -rf /data
    cp -rf /root/build/android-ndk-r10e/platforms/android-21/arch-arm/usr/lib/libcap.* out/data/lxc/lib/*
  4. binkybear revised this gist Aug 27, 2016. 1 changed file with 17 additions and 13 deletions.
    30 changes: 17 additions & 13 deletions gistfile1.txt
    Original file line number Diff line number Diff line change
    @@ -1,31 +1,35 @@
    apt-get install libattr1-dev
    apt-get install libattr1-dev git unzip make gcc automake pkg-config
    cd /root
    mkdir -p build/toolchain && cd build
    wget http://dl.google.com/android/repository/android-ndk-r10e-linux-x86_64.zip -O /tmp/android-ndk-r10e-linux-x86_64.zip
    unzip /tmp/android-ndk-r10e-linux-x86_64.zip -d /root/build
    cd toolchain
    git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9 android-armhf-4.9

    wget http://dl.google.com/android/repository/android-ndk-r10e-linux-x86_64.zip

    export PATH=$PATH:/root/build/toolchain/android-armhf-4.9/bin:/build/android-ndk-r10e/
    export SYSROOT=/build/android-ndk-r10e/platforms/android-21/arch-arm/
    export PATH=$PATH:/root/build/toolchain/android-armhf-4.9/bin:/root/build/android-ndk-r10e/
    export SYSROOT=/root/build/android-ndk-r10e/platforms/android-21/arch-arm/
    export LD=arm-linux-androideabi-ld
    export CC="/root/build/toolchain/android-armhf-4.9/bin/arm-linux-androideabi-gcc --sysroot=/build/android-ndk-r10e/platforms/android-21/arch-arm/"
    export CFLAGS="-fomit-frame-pointer -DANDROID -pie -fPIE --sysroot=/build/android-ndk-r10e/platforms/android-21/arch-arm/ -I/build/android-ndk-r10e/platforms/android-21/arch-arm/usr/include/"
    export CC="/root/build/toolchain/android-armhf-4.9/bin/arm-linux-androideabi-gcc --sysroot=/root/build/android-ndk-r10e/platforms/android-21/arch-arm/"
    export CFLAGS="-fomit-frame-pointer -DANDROID -pie -fPIE --sysroot=/root/build/android-ndk-r10e/platforms/android-21/arch-arm/ -I/root/build/android-ndk-r10e/platforms/android-21/arch-arm/usr/include/"
    export LDFLAGS="-Wl,--dynamic-linker,/system/bin/linker -lc -ldl"
    export BUILD_CC=gcc


    cd /root
    git clone https://github.com/lxc/lxc
    cd lxc
    git clone git://git.kernel.org/pub/scm/linux/kernel/git/morgan/libcap.git
    cd libcap
    git checkout 0ee94211e95096750ede752acd13b163aa6d5046
    make
    cp -f libcap/libcap.so* /build/android-ndk-r10e/platforms/android-21/arch-arm/usr/lib/
    cp -f libcap/libcap.a /build/android-ndk-r10e/platforms/android-21/arch-arm/usr/lib/
    cp -f libcap/include/sys/capability.h /build/android-ndk-r10e/platforms/android-21/arch-arm/usr/include/sys/capability.h
    cp -f libcap/include/uapi/linux/capability.h /build/android-ndk-r10e/platforms/android-21/arch-arm/usr/include/linux/
    cp -f libcap/libcap.so* /root/build/android-ndk-r10e/platforms/android-21/arch-arm/usr/lib/
    cp -f libcap/libcap.a /root/build/android-ndk-r10e/platforms/android-21/arch-arm/usr/lib/
    cp -f libcap/include/sys/capability.h /root/build/android-ndk-r10e/platforms/android-21/arch-arm/usr/include/sys/capability.h
    cp -f libcap/include/uapi/linux/capability.h /root/build/android-ndk-r10e/platforms/android-21/arch-arm/usr/include/linux/
    cd ..
    ./autogen.sh
    mkdir -p OUT
    wget https://raw.githubusercontent.com/brauner/lxc/9b1e2e6e2c17e8babf033f782abd704d649c5ac9/src/lxc/criu.c -O src/lxc/criu.c
    cat << 'EOF' > /build/android-ndk-r10e/platforms/android-21/arch-arm/usr/include/linux/genetlink.h
    cat << 'EOF' > /root/build/android-ndk-r10e/platforms/android-21/arch-arm/usr/include/linux/genetlink.h
    /****************************************************************************
    ****************************************************************************
    ***
  5. binkybear created this gist Aug 23, 2016.
    127 changes: 127 additions & 0 deletions gistfile1.txt
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,127 @@
    apt-get install libattr1-dev

    wget http://dl.google.com/android/repository/android-ndk-r10e-linux-x86_64.zip

    export PATH=$PATH:/root/build/toolchain/android-armhf-4.9/bin:/build/android-ndk-r10e/
    export SYSROOT=/build/android-ndk-r10e/platforms/android-21/arch-arm/
    export LD=arm-linux-androideabi-ld
    export CC="/root/build/toolchain/android-armhf-4.9/bin/arm-linux-androideabi-gcc --sysroot=/build/android-ndk-r10e/platforms/android-21/arch-arm/"
    export CFLAGS="-fomit-frame-pointer -DANDROID -pie -fPIE --sysroot=/build/android-ndk-r10e/platforms/android-21/arch-arm/ -I/build/android-ndk-r10e/platforms/android-21/arch-arm/usr/include/"
    export LDFLAGS="-Wl,--dynamic-linker,/system/bin/linker -lc -ldl"
    export BUILD_CC=gcc


    git clone https://github.com/lxc/lxc
    cd lxc
    git clone git://git.kernel.org/pub/scm/linux/kernel/git/morgan/libcap.git
    cd libcap
    git checkout 0ee94211e95096750ede752acd13b163aa6d5046
    make
    cp -f libcap/libcap.so* /build/android-ndk-r10e/platforms/android-21/arch-arm/usr/lib/
    cp -f libcap/libcap.a /build/android-ndk-r10e/platforms/android-21/arch-arm/usr/lib/
    cp -f libcap/include/sys/capability.h /build/android-ndk-r10e/platforms/android-21/arch-arm/usr/include/sys/capability.h
    cp -f libcap/include/uapi/linux/capability.h /build/android-ndk-r10e/platforms/android-21/arch-arm/usr/include/linux/
    cd ..
    ./autogen.sh
    mkdir -p OUT
    wget https://raw.githubusercontent.com/brauner/lxc/9b1e2e6e2c17e8babf033f782abd704d649c5ac9/src/lxc/criu.c -O src/lxc/criu.c
    cat << 'EOF' > /build/android-ndk-r10e/platforms/android-21/arch-arm/usr/include/linux/genetlink.h
    /****************************************************************************
    ****************************************************************************
    ***
    *** This header was automatically generated from a Linux kernel header
    *** of the same name, to make information necessary for userspace to
    *** call into the kernel available to libc. It contains only constants,
    *** structures, and macros generated from the original header, and thus,
    *** contains no copyrightable information.
    ***
    *** To edit the content of this header, modify the corresponding
    *** source file (e.g. under external/kernel-headers/original/) then
    *** run bionic/libc/kernel/tools/update_all.py
    ***
    *** Any manual change here will be lost the next time this script will
    *** be run. You've been warned!
    ***
    ****************************************************************************
    ****************************************************************************/
    #ifndef _UAPI__LINUX_GENERIC_NETLINK_H
    #define _UAPI__LINUX_GENERIC_NETLINK_H
    #include <linux/types.h>
    #include <linux/netlink.h>
    /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    #define GENL_NAMSIZ 16
    #define GENL_MIN_ID NLMSG_MIN_TYPE
    #define GENL_MAX_ID 1023
    struct genlmsghdr {
    /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    __u8 cmd;
    __u8 version;
    __u16 reserved;
    };
    /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    #define GENL_HDRLEN NLMSG_ALIGN(sizeof(struct genlmsghdr))
    #define GENL_ADMIN_PERM 0x01
    #define GENL_CMD_CAP_DO 0x02
    #define GENL_CMD_CAP_DUMP 0x04
    /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    #define GENL_CMD_CAP_HASPOL 0x08
    #define GENL_ID_GENERATE 0
    #define GENL_ID_CTRL NLMSG_MIN_TYPE
    #define GENL_ID_VFS_DQUOT (NLMSG_MIN_TYPE + 1)
    /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    #define GENL_ID_PMCRAID (NLMSG_MIN_TYPE + 2)
    enum {
    CTRL_CMD_UNSPEC,
    CTRL_CMD_NEWFAMILY,
    /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    CTRL_CMD_DELFAMILY,
    CTRL_CMD_GETFAMILY,
    CTRL_CMD_NEWOPS,
    CTRL_CMD_DELOPS,
    /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    CTRL_CMD_GETOPS,
    CTRL_CMD_NEWMCAST_GRP,
    CTRL_CMD_DELMCAST_GRP,
    CTRL_CMD_GETMCAST_GRP,
    /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    __CTRL_CMD_MAX,
    };
    #define CTRL_CMD_MAX (__CTRL_CMD_MAX - 1)
    enum {
    /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    CTRL_ATTR_UNSPEC,
    CTRL_ATTR_FAMILY_ID,
    CTRL_ATTR_FAMILY_NAME,
    CTRL_ATTR_VERSION,
    /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    CTRL_ATTR_HDRSIZE,
    CTRL_ATTR_MAXATTR,
    CTRL_ATTR_OPS,
    CTRL_ATTR_MCAST_GROUPS,
    /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    __CTRL_ATTR_MAX,
    };
    #define CTRL_ATTR_MAX (__CTRL_ATTR_MAX - 1)
    enum {
    /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    CTRL_ATTR_OP_UNSPEC,
    CTRL_ATTR_OP_ID,
    CTRL_ATTR_OP_FLAGS,
    __CTRL_ATTR_OP_MAX,
    /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    };
    #define CTRL_ATTR_OP_MAX (__CTRL_ATTR_OP_MAX - 1)
    enum {
    CTRL_ATTR_MCAST_GRP_UNSPEC,
    /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    CTRL_ATTR_MCAST_GRP_NAME,
    CTRL_ATTR_MCAST_GRP_ID,
    __CTRL_ATTR_MCAST_GRP_MAX,
    };
    /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    #define CTRL_ATTR_MCAST_GRP_MAX (__CTRL_ATTR_MCAST_GRP_MAX - 1)
    #endif
    EOF
    ./configure --host=arm-eabi --disable-api-docs --disable-lua --disable-python --disable-examples --prefix=/data/lxc/lxc --with-runtime-path=/cache/ --bindir="/system/bin" --libdir="/system/lib" --with-config-path=/data/lxc/containers/
    make
    make install