Skip to content

Commit

Permalink
文档更新版本到20220108。
Browse files Browse the repository at this point in the history
该版本增加大量软件包的制作步骤。
  • Loading branch information
sunhaiyong1978 committed Jan 8, 2022
1 parent cfffcf0 commit a6bc2fe
Show file tree
Hide file tree
Showing 18 changed files with 9,585 additions and 0 deletions.
6,937 changes: 6,937 additions & 0 deletions CLFS_For_LoongArch64-20220108.md

Large diffs are not rendered by default.

1,512 changes: 1,512 additions & 0 deletions patches/0001-Add-duktape-as-javascript-engine.patch

Large diffs are not rendered by default.

120 changes: 120 additions & 0 deletions patches/0001-enable-cross-compilation.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
From: Andrew Ruder <[email protected]>
Subject: [PATCH] enable cross compilation for expect

This patch was created by running ./configure on a modern Linux machine
and inserting the results into the cross compilation section of
each AC_MSG_CHECKING that bombed out with an error.

Signed-off-by: Andrew Ruder <[email protected]>
---

Index: expect-5.45/configure.in
===================================================================
--- expect-5.45.orig/configure.in 2013-11-14 07:59:58.732100595 -0600
+++ expect-5.45/configure.in 2013-11-14 07:59:58.732100595 -0600
@@ -481,7 +481,7 @@
,
AC_MSG_RESULT(no)
,
- AC_MSG_ERROR([Expect can't be cross compiled])
+ AC_MSG_RESULT(no)
)

AC_MSG_CHECKING([if any value exists for WNOHANG])
@@ -506,7 +506,8 @@
AC_MSG_RESULT(no)
AC_DEFINE(WNOHANG_BACKUP_VALUE, 1)
,
- AC_MSG_ERROR([Expect can't be cross compiled])
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(WNOHANG_BACKUP_VALUE, 1)
)

#
@@ -574,7 +575,7 @@
AC_DEFINE(REARM_SIG)
,
AC_MSG_RESULT(no)
-, AC_MSG_WARN([Expect can't be cross compiled])
+, AC_MSG_RESULT(no)
)

# HPUX7 has trouble with the big cat so split it
@@ -725,7 +726,7 @@
,
AC_MSG_RESULT(no)
,
- AC_MSG_ERROR([Expect can't be cross compiled])
+ AC_MSG_RESULT(no)
)

# mach systems have include files for unimplemented features
@@ -749,7 +750,9 @@
,
AC_MSG_RESULT(no)
,
- AC_MSG_ERROR([Expect can't be cross compiled])
+ AC_DEFINE(HAVE_TERMIO)
+ PTY_TYPE=termios
+ AC_MSG_RESULT(yes)
)

# now check for the new style ttys (not yet posix)
@@ -771,7 +774,9 @@
,
AC_MSG_RESULT(no)
,
- AC_MSG_ERROR([Expect can't be cross compiled])
+ AC_DEFINE(HAVE_TERMIOS)
+ PTY_TYPE=termios
+ AC_MSG_RESULT(yes)
)
fi

@@ -794,7 +799,7 @@
,
AC_MSG_RESULT(no)
,
- AC_MSG_ERROR([Expect can't be cross compiled])
+ AC_MSG_RESULT(no)
)

AC_MSG_CHECKING([if TIOCGWINSZ in termios.h])
@@ -816,7 +821,7 @@
,
AC_MSG_RESULT(no)
,
- AC_MSG_ERROR([Expect can't be cross compiled])
+ AC_MSG_RESULT(no)
)

# finally check for Cray style ttys
@@ -837,7 +842,7 @@
,
AC_MSG_RESULT(no)
,
- AC_MSG_ERROR([Expect can't be cross compiled])
+ AC_MSG_RESULT(no)
)

#
@@ -869,7 +874,9 @@
AC_HAVE_FUNCS(getpty)

# following test sets SETPGRP_VOID if setpgrp takes 0 args, else takes 2
-AC_FUNC_SETPGRP
+cat >>expect_cf.h <<\_ACEOF
+#define SETPGRP_VOID 1
+_ACEOF

#
# check for timezones
@@ -889,7 +896,7 @@
AC_MSG_RESULT(yes),
AC_MSG_RESULT(no)
,
- AC_MSG_ERROR([Expect can't be cross compiled])
+ AC_MSG_RESULT(yes)
)


21 changes: 21 additions & 0 deletions patches/elogind-246-add-loongarch64.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
diff -Nurp elogind-246.10.orig/src/basic/architecture.h elogind-246.10/src/basic/architecture.h
--- elogind-246.10.orig/src/basic/architecture.h 2021-03-02 08:29:23.000000000 +0000
+++ elogind-246.10/src/basic/architecture.h 2021-09-14 06:28:04.588106869 +0000
@@ -29,6 +29,7 @@ enum {
ARCHITECTURE_MIPS_LE,
ARCHITECTURE_MIPS64,
ARCHITECTURE_MIPS64_LE,
+ ARCHITECTURE_LOONGARCH64,
ARCHITECTURE_ALPHA,
ARCHITECTURE_ARM,
ARCHITECTURE_ARM_BE,
@@ -105,6 +106,9 @@ int uname_architecture(void);
#elif defined(__hppa__)
# define native_architecture() ARCHITECTURE_PARISC
# define LIB_ARCH_TUPLE "hppa‑linux‑gnu"
+#elif defined(__loongarch64)
+# define native_architecture() ARCHITECTURE_LOONGARCH64
+# define LIB_ARCH_TUPLE "loongarch64-linux-gnu"
#elif defined(__s390x__)
# define native_architecture() ARCHITECTURE_S390X
# define LIB_ARCH_TUPLE "s390x-linux-gnu"
20 changes: 20 additions & 0 deletions patches/flac-1.3.3-security_fixes-1.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
Submitted By: Ken Moffat <ken at linuxfromscratch dot org>
Date: 2021-04-02
Initial Package Version: 1.3.3.
Upstream Status: Applied
Origin: https://github.com/xiph/flac/commit/2e7931c27eb15e387da440a37f12437e35b22dd4
Description: Fixes CVE-2020-0499

diff --git a/src/libFLAC/bitreader.c b/src/libFLAC/bitreader.c
index 5e4b59180..3df4d02c0 100644
--- a/src/libFLAC/bitreader.c
+++ b/src/libFLAC/bitreader.c
@@ -869,7 +869,7 @@ FLAC__bool FLAC__bitreader_read_rice_signed_block(FLAC__BitReader *br, int vals[
cwords = br->consumed_words;
words = br->words;
ucbits = FLAC__BITS_PER_WORD - br->consumed_bits;
- b = br->buffer[cwords] << br->consumed_bits;
+ b = cwords < br->capacity ? br->buffer[cwords] << br->consumed_bits : 0;
} while(cwords >= words && val < end);
}

64 changes: 64 additions & 0 deletions patches/gc-8.0.6-add-loongarch.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
diff -Nurp gc-8.0.6.orig/include/private/gcconfig.h gc-8.0.6/include/private/gcconfig.h
--- gc-8.0.6.orig/include/private/gcconfig.h 2021-09-28 20:47:22.000000000 +0000
+++ gc-8.0.6/include/private/gcconfig.h 2021-12-16 08:05:35.137556347 +0000
@@ -238,6 +238,10 @@ EXTERN_C_BEGIN
# define VAX
# define mach_type_known
# endif
+# if defined(__loongarch64)
+# define LOONGARCH64
+# define mach_type_known
+# endif
# if defined(mips) || defined(__mips) || defined(_mips)
# define MIPS
# if defined(nec_ews) || defined(_nec_ews)
@@ -514,6 +518,10 @@ EXTERN_C_BEGIN
# define AARCH64
# define mach_type_known
# endif
+# if defined(FREEBSD) && (defined(__loongarch64) )
+# define LOONGARCH64
+# define mach_type_known
+# endif
# if defined(FREEBSD) && (defined(mips) || defined(__mips) || defined(_mips))
# define MIPS
# define mach_type_known
@@ -1732,6 +1740,26 @@ EXTERN_C_BEGIN
# define STACKBOTTOM ((ptr_t)0xfffff000) /* for Encore */
# endif

+# ifdef LOONGARCH64
+# define MACH_TYPE "LOONGARCH64"
+# ifdef LINUX
+# define OS_TYPE "LINUX"
+# define DYNAMIC_LOADING
+ extern int _end[];
+# pragma weak __data_start
+ extern int __data_start[];
+# define DATASTART ((ptr_t)(__data_start))
+# define DATAEND ((ptr_t)(_end))
+# define CPP_WORDSZ 64
+# define ALIGNMENT (64/8)
+# ifndef HBLKSIZE
+# define HBLKSIZE 4096
+# endif
+# define LINUX_STACKBOTTOM
+# endif
+# endif
+
+
# ifdef MIPS
# define MACH_TYPE "MIPS"
# ifdef LINUX
diff -Nurp gc-8.0.6.orig/os_dep.c gc-8.0.6/os_dep.c
--- gc-8.0.6.orig/os_dep.c 2021-09-28 20:47:22.000000000 +0000
+++ gc-8.0.6/os_dep.c 2021-12-16 08:06:36.491553769 +0000
@@ -3144,7 +3144,7 @@ GC_API GC_push_other_roots_proc GC_CALL
# ifndef SEGV_ACCERR
# define SEGV_ACCERR 2
# endif
-# if defined(AARCH64) || defined(ARM32) || defined(MIPS) \
+# if defined(AARCH64) || defined(ARM32) || defined(MIPS) || defined(LOONGARCH64) \
|| __FreeBSD__ >= 7
# define CODE_OK (si -> si_code == SEGV_ACCERR)
# elif defined(POWERPC)
26 changes: 26 additions & 0 deletions patches/gpm-1.20.1-weak-wgetch.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
--- gpm-1.20.1/src/lib/libcurses.c.weak-wgetch 2002-12-24 17:57:16.000000000 -0500
+++ gpm-1.20.1/src/lib/libcurses.c 2004-03-22 15:51:24.000000000 -0500
@@ -41,7 +41,12 @@
#endif /* HAVE_NCURSES_CURSES_H */
#endif /* HAVE_NCURSES_H */

-#define GET(win) ((win) ? wgetch(win) : getch())
+/* If win != NULL, it must have been created by ncurses anyway.
+ Avoid circular library dependencies. */
+#pragma weak wgetch
+#pragma weak stdscr
+
+#define GET(win) ((win && wgetch) ? wgetch(win) : getch())

int Gpm_Wgetch(WINDOW *win)
{
--- gpm-1.20.1/configure.ac.weak-wgetch 2004-03-22 15:49:51.000000000 -0500
+++ gpm-1.20.1/configure.ac.footer 2004-03-22 15:51:24.000000000 -0500
@@ -115,7 +115,7 @@
AC_CHECK_LIB($i, wgetch,,,$TERMLIBS)
else :; fi
done
- SHARED_LIBS="$LIBS $TERMLIBS -lc"
+ SHARED_LIBS="-lc"
LIBS=$SAVELIBS ;;
esac
116 changes: 116 additions & 0 deletions patches/gpm-1.20.7-consolidated-1.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
Submitted by: Pierre Labastie <pierre dot labastie at neuf dot fr>
Date: 2020-05-10
Initial Package Version: 1.20.7
Origin: Upstream + PR's
Upstream Status: some fixes committed, others pending
Description: Fix several build failures
- some introduced by glibc-2.26
- some introduced by gcc-10
- also fix an ignored error when gpm.h is not already in
/usr/include
diff -Naur gpm-1.20.7.old/src/daemon/open_console.c gpm-1.20.7.new/src/daemon/open_console.c
--- gpm-1.20.7.old/src/daemon/open_console.c 2012-10-26 23:21:38.000000000 +0200
+++ gpm-1.20.7.new/src/daemon/open_console.c 2020-05-10 15:48:59.752067421 +0200
@@ -23,6 +23,10 @@
#include <sys/stat.h> /* stat() */
#include <sys/ioctl.h> /* ioctl */

+#ifdef HAVE_SYS_SYSMACROS_H
+#include <sys/sysmacros.h> /* major() w/newer glibc */
+#endif
+
/* Linux specific (to be outsourced in gpm2 */
#include <linux/serial.h> /* for serial console check */
#include <asm/ioctls.h> /* for serial console check */
diff -Naur gpm-1.20.7.old/src/headers/daemon.h gpm-1.20.7.new/src/headers/daemon.h
--- gpm-1.20.7.old/src/headers/daemon.h 2012-10-26 23:21:38.000000000 +0200
+++ gpm-1.20.7.new/src/headers/daemon.h 2020-05-10 15:48:52.719159555 +0200
@@ -180,7 +180,7 @@
extern Gpm_Type mice[];
extern Gpm_Type *repeated_type;

-time_t last_selection_time;
+extern time_t last_selection_time;



diff -Naur gpm-1.20.7.old/src/prog/display-buttons.c gpm-1.20.7.new/src/prog/display-buttons.c
--- gpm-1.20.7.old/src/prog/display-buttons.c 2012-10-26 23:21:38.000000000 +0200
+++ gpm-1.20.7.new/src/prog/display-buttons.c 2020-05-10 15:48:59.751067434 +0200
@@ -36,7 +36,7 @@
#include <stdio.h> /* printf() */
#include <time.h> /* time() */
#include <errno.h> /* errno */
-#include <gpm.h> /* gpm information */
+#include "headers/gpm.h" /* gpm information */

/* display resulting data */
int display_data(Gpm_Event *event, void *data)
diff -Naur gpm-1.20.7.old/src/prog/display-coords.c gpm-1.20.7.new/src/prog/display-coords.c
--- gpm-1.20.7.old/src/prog/display-coords.c 2012-10-26 23:21:38.000000000 +0200
+++ gpm-1.20.7.new/src/prog/display-coords.c 2020-05-10 15:48:59.751067434 +0200
@@ -37,7 +37,7 @@
#include <stdio.h> /* printf() */
#include <time.h> /* time() */
#include <errno.h> /* errno */
-#include <gpm.h> /* gpm information */
+#include "headers/gpm.h" /* gpm information */

/* display resulting data */
int display_data(Gpm_Event *event, void *data)
diff -Naur gpm-1.20.7.old/src/prog/get-versions.c gpm-1.20.7.new/src/prog/get-versions.c
--- gpm-1.20.7.old/src/prog/get-versions.c 2012-10-26 23:21:38.000000000 +0200
+++ gpm-1.20.7.new/src/prog/get-versions.c 2020-05-10 15:48:59.751067434 +0200
@@ -22,7 +22,7 @@
********/

#include <stdio.h> /* printf() */
-#include <gpm.h> /* gpm information */
+#include "headers/gpm.h" /* gpm information */

int main()
{
diff -Naur gpm-1.20.7.old/src/prog/gpm-root.y gpm-1.20.7.new/src/prog/gpm-root.y
--- gpm-1.20.7.old/src/prog/gpm-root.y 2012-10-26 23:21:38.000000000 +0200
+++ gpm-1.20.7.new/src/prog/gpm-root.y 2020-05-10 15:48:59.752067421 +0200
@@ -443,6 +443,7 @@
}

/*---------------------------------------------------------------------*/
+#if 0
static int f_debug_one(FILE *f, Draw *draw)
{
DrawItem *ip;
@@ -465,6 +466,7 @@
#undef LINE
return 0;
}
+#endif

int f_debug(int mode, DrawItem *self, int uid)
{
@@ -960,10 +962,8 @@
/*------------*/
static inline void scr_restore(int fd, FILE *f, unsigned char *buffer, int vc)
{
- int x,y, dumpfd;
+ int dumpfd;
char dumpname[20];
-
- x=buffer[2]; y=buffer[3];

/* WILL NOT WORK WITH DEVFS! FIXME! */
sprintf(dumpname,"/dev/vcsa%i",vc);
@@ -1196,11 +1196,7 @@
LOG_DAEMON : LOG_USER);
/* reap your zombies */
childaction.sa_handler=reap_children;
-#if defined(__GLIBC__)
- __sigemptyset(&childaction.sa_mask);
-#else /* __GLIBC__ */
- childaction.sa_mask=0;
-#endif /* __GLIBC__ */
+ sigemptyset(&childaction.sa_mask);
childaction.sa_flags=SA_INTERRUPT; /* need to break the select() call */
sigaction(SIGCHLD,&childaction,NULL);

12 changes: 12 additions & 0 deletions patches/gstreamer-1.18.5-add-loongarch64.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
diff -Nurp gstreamer-1.18.5/gst/gstconfig.h.in gstreamer-1.18.5.orig/gst/gstconfig.h.in
--- gstreamer-1.18.5/gst/gstconfig.h.in 2021-10-12 09:21:15.898421183 +0000
+++ gstreamer-1.18.5.orig/gst/gstconfig.h.in 2021-09-08 19:01:48.723989700 +0000
@@ -124,7 +124,7 @@
* http://docs.oracle.com/cd/E19205-01/820-4155/c++_faq.html#Vers6
* https://software.intel.com/en-us/node/583402
*/
-#if defined(__alpha__) || defined(__arc__) || defined(__arm__) || defined(__aarch64__) || defined(__bfin) || defined(__hppa__) || defined(__nios2__) || defined(__MICROBLAZE__) || defined(__mips__) || defined(__or1k__) || defined(__sh__) || defined(__SH4__) || defined(__sparc__) || defined(__sparc) || defined(__ia64__) || defined(_M_ALPHA) || defined(_M_ARM) || defined(_M_ARM64) || defined(_M_IA64) || defined(__xtensa__) || defined(__e2k__) || defined(__riscv)
+#if defined(__alpha__) || defined(__arc__) || defined(__arm__) || defined(__aarch64__) || defined(__bfin) || defined(__hppa__) || defined(__nios2__) || defined(__MICROBLAZE__) || defined(__mips__) || defined(__or1k__) || defined(__sh__) || defined(__SH4__) || defined(__sparc__) || defined(__sparc) || defined(__ia64__) || defined(_M_ALPHA) || defined(_M_ARM) || defined(_M_ARM64) || defined(_M_IA64) || defined(__xtensa__) || defined(__e2k__) || defined(__riscv) || defined(__loongarch64)
# define GST_HAVE_UNALIGNED_ACCESS 0
#elif defined(__i386__) || defined(__i386) || defined(__amd64__) || defined(__amd64) || defined(__x86_64__) || defined(__ppc__) || defined(__ppc64__) || defined(__powerpc__) || defined(__powerpc64__) || defined(__m68k__) || defined(_M_IX86) || defined(_M_AMD64) || defined(_M_X64) || defined(__s390__) || defined(__s390x__) || defined(__zarch__)
# define GST_HAVE_UNALIGNED_ACCESS 1
13 changes: 13 additions & 0 deletions patches/guile-3.0.7-add-loongarch64.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
diff -Nurp guile-3.0.7.orig/module/system/base/target.scm guile-3.0.7/module/system/base/target.scm
--- guile-3.0.7.orig/module/system/base/target.scm 2019-08-02 12:41:06.000000000 +0000
+++ guile-3.0.7/module/system/base/target.scm 2021-12-16 09:22:52.652361492 +0000
@@ -77,7 +77,7 @@
(cond ((string-match "^i[0-9]86$" cpu)
(endianness little))
((member cpu '("x86_64" "ia64"
- "powerpcle" "powerpc64le" "mipsel" "mips64el" "nios2" "sh3" "sh4" "alpha"))
+ "powerpcle" "powerpc64le" "mipsel" "mips64el" "nios2" "sh3" "sh4" "alpha" "loongarch64"))
(endianness little))
((member cpu '("sparc" "sparc64" "powerpc" "powerpc64" "spu"
"mips" "mips64" "m68k" "s390x"))

Loading

0 comments on commit a6bc2fe

Please sign in to comment.