"git@developer.sourcefind.cn:gaoqiong/migraphx.git" did not exist on "ff45e8e836c33f35de73be870ca183f4024f0527"
Commit b63ce2a3 authored by longpanda's avatar longpanda
Browse files

experimental support for loongson mips64el uefi

parent bb7e10d9
File added
...@@ -48,6 +48,8 @@ build_func() { ...@@ -48,6 +48,8 @@ build_func() {
if [ "$libsuffix" = "aa64" ]; then if [ "$libsuffix" = "aa64" ]; then
aarch64-linux-gnu-strip V2D$libsuffix aarch64-linux-gnu-strip V2D$libsuffix
elif [ "$libsuffix" = "m64e" ]; then
mips-linux-gnu-strip V2D$libsuffix
else else
strip V2D$libsuffix strip V2D$libsuffix
fi fi
...@@ -59,5 +61,6 @@ build_func() { ...@@ -59,5 +61,6 @@ build_func() {
build_func "gcc" '64' 'x86_64' build_func "gcc" '64' 'x86_64'
build_func "gcc -m32" '32' 'i386' build_func "gcc -m32" '32' 'i386'
build_func "aarch64-linux-gnu-gcc" 'aa64' 'aarch64' build_func "aarch64-linux-gnu-gcc" 'aa64' 'aarch64'
build_func "mips-linux-gnu-gcc -mips64r2 -mabi=64" 'm64e' 'mips64el'
#
# Makefile
#
# Author: Lasse Collin <lasse.collin@tukaani.org>
#
# This file has been put into the public domain.
# You can do whatever you want with this file.
#
CC = /opt/mips64el-linux-musl-gcc730/bin/mips64el-linux-musl-gcc -mips64r2 -mabi=64 -Os -static -std=gnu89
BCJ_CPPFLAGS = -DXZ_DEC_X86 -DXZ_DEC_POWERPC -DXZ_DEC_IA64 \
-DXZ_DEC_ARM -DXZ_DEC_ARMTHUMB -DXZ_DEC_SPARC
CPPFLAGS = -DXZ_USE_CRC64 -DXZ_DEC_ANY_CHECK
CFLAGS = -ggdb3 -O2 -pedantic -Wall -Wextra
RM = rm -f
VPATH = ../linux/include/linux ../linux/lib/xz
COMMON_SRCS = xz_crc32.c xz_crc64.c xz_dec_stream.c xz_dec_lzma2.c xz_dec_bcj.c
COMMON_OBJS = $(COMMON_SRCS:.c=.o)
XZMINIDEC_OBJS = xzminidec.o
BYTETEST_OBJS = bytetest.o
BUFTEST_OBJS = buftest.o
BOOTTEST_OBJS = boottest.o
XZ_HEADERS = xz.h xz_private.h xz_stream.h xz_lzma2.h xz_config.h
PROGRAMS = xzminidec bytetest buftest boottest
ALL_CPPFLAGS = -I../linux/include/linux -I. $(BCJ_CPPFLAGS) $(CPPFLAGS)
all: $(PROGRAMS)
%.o: %.c $(XZ_HEADERS)
$(CC) $(ALL_CPPFLAGS) $(CFLAGS) -c -o $@ $<
xzminidec: $(COMMON_OBJS) $(XZMINIDEC_OBJS)
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(COMMON_OBJS) $(XZMINIDEC_OBJS)
bytetest: $(COMMON_OBJS) $(BYTETEST_OBJS)
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(COMMON_OBJS) $(BYTETEST_OBJS)
buftest: $(COMMON_OBJS) $(BUFTEST_OBJS)
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(COMMON_OBJS) $(BUFTEST_OBJS)
boottest: $(BOOTTEST_OBJS) $(COMMON_SRCS)
$(CC) $(ALL_CPPFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ $(BOOTTEST_OBJS)
.PHONY: clean
clean:
-$(RM) $(COMMON_OBJS) $(XZMINIDEC_OBJS) $(BUFTEST_OBJS) \
$(BOOTTEST_OBJS) $(PROGRAMS)
...@@ -7,13 +7,17 @@ rm -f vtoytool/00/* ...@@ -7,13 +7,17 @@ rm -f vtoytool/00/*
aarch64-buildroot-linux-uclibc-gcc -Os -static -D_FILE_OFFSET_BITS=64 *.c BabyISO/*.c -IBabyISO -Wall -DBUILD_VTOY_TOOL -o vtoytool_aa64 aarch64-buildroot-linux-uclibc-gcc -Os -static -D_FILE_OFFSET_BITS=64 *.c BabyISO/*.c -IBabyISO -Wall -DBUILD_VTOY_TOOL -o vtoytool_aa64
mips64el-linux-musl-gcc -mips64r2 -mabi=64 -Os -static -D_FILE_OFFSET_BITS=64 *.c BabyISO/*.c -IBabyISO -Wall -DBUILD_VTOY_TOOL -o vtoytool_m64e
#gcc -D_FILE_OFFSET_BITS=64 -static -Wall -DBUILD_VTOY_TOOL *.c BabyISO/*.c -IBabyISO -o vtoytool_64 #gcc -D_FILE_OFFSET_BITS=64 -static -Wall -DBUILD_VTOY_TOOL *.c BabyISO/*.c -IBabyISO -o vtoytool_64
#gcc -D_FILE_OFFSET_BITS=64 -Wall -DBUILD_VTOY_TOOL -m32 *.c BabyISO/*.c -IBabyISO -o vtoytool_32 #gcc -D_FILE_OFFSET_BITS=64 -Wall -DBUILD_VTOY_TOOL -m32 *.c BabyISO/*.c -IBabyISO -o vtoytool_32
if [ -e vtoytool_64 ] && [ -e vtoytool_32 ] && [ -e vtoytool_aa64 ]; then if [ -e vtoytool_64 ] && [ -e vtoytool_32 ] && [ -e vtoytool_aa64 ] && [ -e vtoytool_m64e ]; then
echo -e '\n############### SUCCESS ###############\n' echo -e '\n############### SUCCESS ###############\n'
aarch64-buildroot-linux-uclibc-strip --strip-all vtoytool_aa64 aarch64-buildroot-linux-uclibc-strip --strip-all vtoytool_aa64
mips64el-linux-musl-strip --strip-all vtoytool_m64e
mv vtoytool_m64e vtoytool/00/
mv vtoytool_aa64 vtoytool/00/ mv vtoytool_aa64 vtoytool/00/
mv vtoytool_64 vtoytool/00/ mv vtoytool_64 vtoytool/00/
mv vtoytool_32 vtoytool/00/ mv vtoytool_32 vtoytool/00/
......
...@@ -41,7 +41,9 @@ ...@@ -41,7 +41,9 @@
#endif #endif
#ifndef USE_DIET_C #ifndef USE_DIET_C
#ifndef __mips__
typedef unsigned long long uint64_t; typedef unsigned long long uint64_t;
#endif
typedef unsigned int uint32_t; typedef unsigned int uint32_t;
#endif #endif
......
...@@ -35,7 +35,9 @@ ...@@ -35,7 +35,9 @@
#define IS_DIGIT(x) ((x) >= '0' && (x) <= '9') #define IS_DIGIT(x) ((x) >= '0' && (x) <= '9')
#ifndef USE_DIET_C #ifndef USE_DIET_C
#ifndef __mips__
typedef unsigned long long uint64_t; typedef unsigned long long uint64_t;
#endif
typedef unsigned int uint32_t; typedef unsigned int uint32_t;
typedef unsigned short uint16_t; typedef unsigned short uint16_t;
typedef unsigned char uint8_t; typedef unsigned char uint8_t;
......
...@@ -3,21 +3,27 @@ ...@@ -3,21 +3,27 @@
rm -f vtoyfat_64 rm -f vtoyfat_64
rm -f vtoyfat_32 rm -f vtoyfat_32
rm -f vtoyfat_aa64 rm -f vtoyfat_aa64
rm -f vtoyfat_m64e
gcc -O2 -D_FILE_OFFSET_BITS=64 vtoyfat_linux.c -Ifat_io_lib/include fat_io_lib/lib/libfat_io_64.a -o vtoyfat_64 gcc -O2 -D_FILE_OFFSET_BITS=64 vtoyfat_linux.c -Ifat_io_lib/include fat_io_lib/lib/libfat_io_64.a -o vtoyfat_64
gcc -m32 -O2 -D_FILE_OFFSET_BITS=64 vtoyfat_linux.c -Ifat_io_lib/include fat_io_lib/lib/libfat_io_32.a -o vtoyfat_32 gcc -m32 -O2 -D_FILE_OFFSET_BITS=64 vtoyfat_linux.c -Ifat_io_lib/include fat_io_lib/lib/libfat_io_32.a -o vtoyfat_32
aarch64-buildroot-linux-uclibc-gcc -static -O2 -D_FILE_OFFSET_BITS=64 vtoyfat_linux.c -Ifat_io_lib/include fat_io_lib/lib/libfat_io_aa64.a -o vtoyfat_aa64 aarch64-buildroot-linux-uclibc-gcc -static -O2 -D_FILE_OFFSET_BITS=64 vtoyfat_linux.c -Ifat_io_lib/include fat_io_lib/lib/libfat_io_aa64.a -o vtoyfat_aa64
mips64el-linux-musl-gcc -mips64r2 -mabi=64 -static -O2 -D_FILE_OFFSET_BITS=64 vtoyfat_linux.c -Ifat_io_lib/include fat_io_lib/lib/libfat_io_m64e.a -o vtoyfat_m64e
if [ -e vtoyfat_64 ] && [ -e vtoyfat_32 ] && [ -e vtoyfat_aa64 ]; then if [ -e vtoyfat_64 ] && [ -e vtoyfat_32 ] && [ -e vtoyfat_aa64 ] && [ -e vtoyfat_m64e ]; then
echo -e "\n===== success $name =======\n" echo -e "\n===== success $name =======\n"
strip --strip-all vtoyfat_32 strip --strip-all vtoyfat_32
strip --strip-all vtoyfat_64 strip --strip-all vtoyfat_64
aarch64-buildroot-linux-uclibc-strip --strip-all vtoyfat_aa64 aarch64-buildroot-linux-uclibc-strip --strip-all vtoyfat_aa64
mips64el-linux-musl-strip --strip-all vtoyfat_m64e
[ -d ../INSTALL/tool/i386/ ] && mv vtoyfat_32 ../INSTALL/tool/i386/vtoyfat [ -d ../INSTALL/tool/i386/ ] && mv vtoyfat_32 ../INSTALL/tool/i386/vtoyfat
[ -d ../INSTALL/tool/x86_64/ ] && mv vtoyfat_64 ../INSTALL/tool/x86_64/vtoyfat [ -d ../INSTALL/tool/x86_64/ ] && mv vtoyfat_64 ../INSTALL/tool/x86_64/vtoyfat
[ -d ../INSTALL/tool/aarch64/ ] && mv vtoyfat_aa64 ../INSTALL/tool/aarch64/vtoyfat [ -d ../INSTALL/tool/aarch64/ ] && mv vtoyfat_aa64 ../INSTALL/tool/aarch64/vtoyfat
[ -d ../INSTALL/tool/mips64el/ ] && mv vtoyfat_m64e ../INSTALL/tool/mips64el/vtoyfat
else else
echo -e "\n===== failed =======\n" echo -e "\n===== failed =======\n"
exit 1 exit 1
......
...@@ -21,6 +21,7 @@ ...@@ -21,6 +21,7 @@
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
#include <string.h> #include <string.h>
#include <unistd.h>
#include <errno.h> #include <errno.h>
#include <sys/stat.h> #include <sys/stat.h>
#include <fcntl.h> #include <fcntl.h>
......
...@@ -8,17 +8,23 @@ rm -f vtoygpt_aa64 ...@@ -8,17 +8,23 @@ rm -f vtoygpt_aa64
/opt/diet32/bin/diet -Os gcc -D_FILE_OFFSET_BITS=64 -m32 vtoygpt.c crc32.c -o vtoygpt_32 /opt/diet32/bin/diet -Os gcc -D_FILE_OFFSET_BITS=64 -m32 vtoygpt.c crc32.c -o vtoygpt_32
aarch64-buildroot-linux-uclibc-gcc -Os -static -D_FILE_OFFSET_BITS=64 vtoygpt.c crc32.c -o vtoygpt_aa64 aarch64-buildroot-linux-uclibc-gcc -Os -static -D_FILE_OFFSET_BITS=64 vtoygpt.c crc32.c -o vtoygpt_aa64
mips64el-linux-musl-gcc -mips64r2 -mabi=64 -static -Os -D_FILE_OFFSET_BITS=64 vtoygpt.c crc32.c -o vtoygpt_m64e
#gcc -D_FILE_OFFSET_BITS=64 -static -Wall vtoygpt.c -o vtoytool_64 #gcc -D_FILE_OFFSET_BITS=64 -static -Wall vtoygpt.c -o vtoytool_64
#gcc -D_FILE_OFFSET_BITS=64 -Wall -m32 vtoygpt.c -o vtoytool_32 #gcc -D_FILE_OFFSET_BITS=64 -Wall -m32 vtoygpt.c -o vtoytool_32
if [ -e vtoygpt_64 ] && [ -e vtoygpt_32 ] && [ -e vtoygpt_aa64 ]; then if [ -e vtoygpt_64 ] && [ -e vtoygpt_32 ] && [ -e vtoygpt_aa64 ] && [ -e vtoygpt_m64e ]; then
echo -e '\n############### SUCCESS ###############\n' echo -e '\n############### SUCCESS ###############\n'
mv vtoygpt_64 ../INSTALL/tool/x86_64/vtoygpt mv vtoygpt_64 ../INSTALL/tool/x86_64/vtoygpt
mv vtoygpt_32 ../INSTALL/tool/i386/vtoygpt mv vtoygpt_32 ../INSTALL/tool/i386/vtoygpt
aarch64-buildroot-linux-uclibc-strip --strip-all vtoygpt_aa64 aarch64-buildroot-linux-uclibc-strip --strip-all vtoygpt_aa64
mv vtoygpt_aa64 ../INSTALL/tool/aarch64/vtoygpt mv vtoygpt_aa64 ../INSTALL/tool/aarch64/vtoygpt
mips64el-linux-musl-strip --strip-all vtoygpt_m64e
mv vtoygpt_m64e ../INSTALL/tool/mips64el/vtoygpt
else else
echo -e '\n############### FAILED ################\n' echo -e '\n############### FAILED ################\n'
exit 1 exit 1
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment