Browse Source

externals: Place font data within cpp files

This places the font data within cpp files, which mitigates the
possibility of the font data being duplicated within the binary if it's
referred to in more than one translation unit in the future. It also
stores the data within a std::array, which is more flexible when it
comes to operating with the standard library.

Furthermore, it makes the data arrays const. This is what we want, as it
allows the compiler to store the data within the read-only segment. As
it is, having several large sections of mutable data like this just
leaves spots in memory that we can accidentally write to (via accidental
overruns, what have you) and actually have it work. This ensures the
font data remains the same no matter what.
nce_cpp
Lioncash 7 years ago
parent
commit
642d916bdb
  1. 17
      externals/open_source_archives/CMakeLists.txt
  2. 6
      externals/open_source_archives/include/FontChineseSimplified.h
  3. 18111
      externals/open_source_archives/include/FontChineseSimplified.ttf.h
  4. 6
      externals/open_source_archives/include/FontChineseTraditional.h
  5. 18523
      externals/open_source_archives/include/FontChineseTraditional.ttf.h
  6. 6
      externals/open_source_archives/include/FontExtendedChineseSimplified.h
  7. 24463
      externals/open_source_archives/include/FontExtendedChineseSimplified.ttf.h
  8. 6
      externals/open_source_archives/include/FontKorean.h
  9. 18110
      externals/open_source_archives/include/FontKorean.ttf.h
  10. 6
      externals/open_source_archives/include/FontNintendoExtended.h
  11. 14342
      externals/open_source_archives/include/FontNintendoExtended.ttf.h
  12. 6
      externals/open_source_archives/include/FontStandard.h
  13. 18110
      externals/open_source_archives/include/FontStandard.ttf.h
  14. 18112
      externals/open_source_archives/src/FontChineseSimplified.cpp
  15. 18525
      externals/open_source_archives/src/FontChineseTraditional.cpp
  16. 24465
      externals/open_source_archives/src/FontExtendedChineseSimplified.cpp
  17. 18112
      externals/open_source_archives/src/FontKorean.cpp
  18. 14344
      externals/open_source_archives/src/FontNintendoExtended.cpp
  19. 18112
      externals/open_source_archives/src/FontStandard.cpp
  20. 12
      src/core/hle/service/ns/pl_u.cpp

17
externals/open_source_archives/CMakeLists.txt

@ -1,3 +1,16 @@
add_library(open_source_archives INTERFACE)
add_library(open_source_archives
src/FontChineseSimplified.cpp
src/FontChineseTraditional.cpp
src/FontExtendedChineseSimplified.cpp
src/FontKorean.cpp
src/FontNintendoExtended.cpp
src/FontStandard.cpp
include/FontChineseSimplified.h
include/FontChineseTraditional.h
include/FontExtendedChineseSimplified.h
include/FontKorean.h
include/FontNintendoExtended.h
include/FontStandard.h
)
target_include_directories(open_source_archives INTERFACE "include/")
target_include_directories(open_source_archives PUBLIC include)

6
externals/open_source_archives/include/FontChineseSimplified.h

@ -0,0 +1,6 @@
#pragma once
#include <array>
extern const std::array<unsigned char, 217276> FontChineseSimplified;

18111
externals/open_source_archives/include/FontChineseSimplified.ttf.h
File diff suppressed because it is too large
View File

6
externals/open_source_archives/include/FontChineseTraditional.h

@ -0,0 +1,6 @@
#pragma once
#include <array>
extern const std::array<unsigned char, 222236> FontChineseTraditional;

18523
externals/open_source_archives/include/FontChineseTraditional.ttf.h
File diff suppressed because it is too large
View File

6
externals/open_source_archives/include/FontExtendedChineseSimplified.h

@ -0,0 +1,6 @@
#pragma once
#include <array>
extern const std::array<unsigned char, 293516> FontExtendedChineseSimplified;

24463
externals/open_source_archives/include/FontExtendedChineseSimplified.ttf.h
File diff suppressed because it is too large
View File

6
externals/open_source_archives/include/FontKorean.h

@ -0,0 +1,6 @@
#pragma once
#include <array>
extern const std::array<unsigned char, 217276> FontKorean;

18110
externals/open_source_archives/include/FontKorean.ttf.h
File diff suppressed because it is too large
View File

6
externals/open_source_archives/include/FontNintendoExtended.h

@ -0,0 +1,6 @@
#pragma once
#include <array>
extern const std::array<unsigned char, 172064> FontNintendoExtended;

14342
externals/open_source_archives/include/FontNintendoExtended.ttf.h
File diff suppressed because it is too large
View File

6
externals/open_source_archives/include/FontStandard.h

@ -0,0 +1,6 @@
#pragma once
#include <array>
extern const std::array<unsigned char, 217276> FontStandard;

18110
externals/open_source_archives/include/FontStandard.ttf.h
File diff suppressed because it is too large
View File

18112
externals/open_source_archives/src/FontChineseSimplified.cpp
File diff suppressed because it is too large
View File

18525
externals/open_source_archives/src/FontChineseTraditional.cpp
File diff suppressed because it is too large
View File

24465
externals/open_source_archives/src/FontExtendedChineseSimplified.cpp
File diff suppressed because it is too large
View File

18112
externals/open_source_archives/src/FontKorean.cpp
File diff suppressed because it is too large
View File

14344
externals/open_source_archives/src/FontNintendoExtended.cpp
File diff suppressed because it is too large
View File

18112
externals/open_source_archives/src/FontStandard.cpp
File diff suppressed because it is too large
View File

12
src/core/hle/service/ns/pl_u.cpp

@ -2,12 +2,12 @@
// Licensed under GPLv2 or any later version
// Refer to the license.txt file included.
#include <FontChineseSimplified.ttf.h>
#include <FontChineseTraditional.ttf.h>
#include <FontExtendedChineseSimplified.ttf.h>
#include <FontKorean.ttf.h>
#include <FontNintendoExtended.ttf.h>
#include <FontStandard.ttf.h>
#include <FontChineseSimplified.h>
#include <FontChineseTraditional.h>
#include <FontExtendedChineseSimplified.h>
#include <FontKorean.h>
#include <FontNintendoExtended.h>
#include <FontStandard.h>
#include "common/common_paths.h"
#include "common/file_util.h"

Loading…
Cancel
Save