2
0
mirror of https://github.com/koreader/koreader synced 2024-11-10 01:10:34 +00:00
Commit Graph

111 Commits

Author SHA1 Message Date
Benoit Pierre
088ae7d4ee lint: fix issues reported by newer shellcheck / shfmt 2024-06-15 23:02:52 +02:00
Marek Veselý
ab2f545075
Add kindlehf target (#11986)
for kindles after fw 5.16.3

* Add kindlehf mk file
* Update kodev to support kindlehf
* Update OTAManager logic to support kindlehf
2024-06-11 18:34:03 +02:00
Benoit Pierre
4c6919ac2a bump base: update tesseract, leptonica and libk2pdfopt
- update leptonica to 1.84.1
- update tesseract to 5.3.4
- update libk2pdfopt to 2.55
2024-06-01 09:56:36 +02:00
Benoit Pierre
5a465f413b tweaks for new build system
- forward unknown make targets to base
- add `cmake` and `staging` directories to ignored output artifacts
- drop `package.path` and `package.cpath` luarocks specific entries
2024-05-29 22:02:06 +02:00
Martín Fernández
2c6808ba78
Add generic Linux package (#9351)
Relates to https://github.com/koreader/koreader/issues/9268
Requires https://github.com/koreader/koreader-base/pull/1504

Usage: 
- `kodev release linux` for native package (same arch as host)
- `LINUX_ARCH=arm release linux` for armhf on a x86_64 host.
- `LINUX_ARCH=arm64 release linux` for arm64 on a x86_64 host.

It produces a `koreader-linux-$ARCH-$VERSION.tar.xz` archive, where $ARCH follows `uname -m` convention {x86_64, armv7l, aarch64}

To generate the debian package from the generic archive the following command is required

`./platform/linux/do_debian_package.sh path_to.tar.xz`
2024-05-13 12:11:11 +02:00
NiLuJe
17bdd56e02 Never export LD_LIBRARY_PATH
It's been made redundant by the RPATH changes

The only platform that gets the dubious honor of actually needing an
LD_LIBRARY_PATH is PocketBook, because of InkView.

Co-authored-by: Benoit Pierre <benoit.pierre@gmail.com>

Bump base to pull in the aforementioned RPATH changes ;).

https://github.com/koreader/koreader-base/pull/1638
2023-07-18 02:11:25 +02:00
Benoit Pierre
3ac8a67c6d android: update to use NDK 23c 2023-07-10 22:46:53 +02:00
Benoit Pierre
7e98241b7e kodev: add dlopen traces to android logcat 2023-07-10 22:46:53 +02:00
NiLuJe
38727d882b
kodev: Catch TAG_SURFACE in the debug logcat filter (#10431) 2023-05-13 20:39:11 +02:00
yparitcher
a52a4158a9
Android: improve kodev run (#10418)
launch & uninstall the correct version

do not rely on setup_env

When paired with wireless debugging, this makes android debugging not such a pain.
2023-05-10 23:56:57 +02:00
yparitcher
b5fda00a8b
kodev check: enforce default submodule.recurse=false for shellcheck & shfmt on submodules (#10362)
Otherwise results might be unexpected for people who set submodule.recurse to true

Regression of sorts since #10344
2023-04-27 15:45:28 +02:00
zwim
60849aed12
kodev: don't check shfm, same as in #8636 (#10344) 2023-04-19 21:08:06 +02:00
yparitcher
3452462fa7
Make kodev check feature complete (#8682) 2023-04-02 21:00:45 +02:00
yparitcher
731b802a0e
kodev: fix grep: warning: stray \ before - (#10071)
New warning in 3.8.
2023-02-03 13:45:23 +01:00
NiLuJe
54fae2987e
Support Android AArch64 (#9645)
c.f., https://github.com/koreader/koreader-base/pull/1540 & https://github.com/koreader/android-luajit-launcher/pull/390
2022-10-25 01:54:18 +02:00
Martín Fernández
9f097da4f0
Bump android backend (#7813)
* Bumps the target Sdk to Android 11 (API30)
* Add a crash handler
2021-06-07 17:13:34 +02:00
yparitcher
dc964f3941
reader.lua: rework file/directory argument handling. (#7053)
platform: do not pass a directory on the command line.
The home directory will be properly set by Device.home_dir.

It was sometimes crashing when opened with no args.

Fixes: #7049
2021-01-07 20:38:10 +01:00
NiLuJe
5756f1f43e
LuaJIT on Android fixes (#7094)
* Don't flag Android as should_restrict_JIT

And allow disabling the C blitter, to put the workaround to the test...

* Add a -d, --debug flag to the log function

Catches KOReader's debug, as well as (our) dlopen & luajit logging

* Bump android-luajit-launcher

https://github.com/koreader/android-luajit-launcher/pull/283
https://github.com/koreader/android-luajit-launcher/pull/282

* Bump base

(https://github.com/koreader/koreader-base/pull/1279)
2021-01-02 03:00:39 +01:00
NiLuJe
7bc8ed87d0
kodev: Avoid catchsegv via -S, --no-catchsegv (#7044)
This works around #7036 on my end (so far).

* Turns out we can actually ask os.exit to close the Lua state, wheee!
Thanks @Frenzie ;).
2020-12-25 00:38:31 +01:00
NiLuJe
04a980649f
kodev: Use getopt instead of a hand-rolled hack (#6980)
* Update log android to match the current issue template
* Fix GUI gdb frontends getting wrecked by the older glib library we ship w/
KOReader
* Slightly more aggressive valgrind defaults
  It's slower, but interpreting results without leak-check=full ends up
  costing more time than just running with it.
* Add a callgrind shortcut
* Use getopt instead of a hand-rolled hack for option parsing
* Make it clearer that complex args should be quoted
* Document prompt
* Add a Valgrind suppression file for libdrm/mesa on AMD hardware
  Because mesa/libdrm isn't built w/ -D valgrind=enabled on Gentoo,
  and Valgrind is very much not happy with mesa ;p.
* Allow toggling reader.lua's sane return mode
  (Enabled automatically under gdb/valgrind).
  Should hopefully weed out some noise from valgrind reports.
* Propagate reader.lua's return code
* Sim a few other common devices
* Handle assigning values to short options with an equal instead of a space, like the previous solution
  (This is purely for backward compatibility purposes, this is a syntax that'd fail with the C getopt, too).
* Add gnu-getopt to the build requirement on macOS, because of course everything is terrible.
2020-12-18 18:26:32 +01:00
Martín Fernández
3142f98e20
add target: debian-arm64 (#6909) 2020-12-11 23:22:00 +01:00
NiLuJe
77314e48c4
kodev: Make the directory finding code work as intended (probably?) (#6935)
It was blowing up when it found multiple matches.

* Pick the most recent one in case of multiples
2020-12-02 17:44:59 +01:00
Martín Fernández
1adea4a497 Add macOS target
Co-authored-by: Jason Benwell <jbenwell@hotmail.com>
2020-07-11 01:29:49 +02:00
Frans de Jonge
8a61e70fad
[fix] Bring kodev cov command in line with kodev test (#6341) 2020-07-02 11:45:12 +02:00
NiLuJe
12e54a17b3
Get rid of the old PB TC (#5860) 2020-02-15 23:49:04 +01:00
Martín Fernández
67627ce2d9
Remarkable port (#5828)
Touchscreen is mirrored in X & Y and has a different resolution from the eink panel.

Uses systemd for time/date/suspend/poweroff/reboot
Two systemd units for platform integration. button-listen is a very
simple launcher.
to-do: add support for wifi by implementing  a wpa supplicant dbus client.

Authored-by: Thomas Spurden <tcrs@users.noreply.github.com>
2020-02-08 01:58:10 +01:00
Frans de Jonge
668eee97fa
[CI] Add curly braces check (#5809)
Update shellcheck and shfmt to the latest version.

Fixes <https://github.com/koreader/koreader/issues/5152>.

Btw, you can apply shellcheck suggestions with a command like:

```
shellcheck --include=SC2250 -f diff *.sh | git apply
```
2020-02-02 20:35:21 +01:00
yparitcher
0f896765c3 transifex -> weblate fixes (#5722) 2020-01-01 21:18:09 +01:00
Frans de Jonge
afd277901a
[fix] Prevent double library loads (#5607)
As per @NiLuJe's suggestions from <https://github.com/koreader/koreader/pull/5598#issuecomment-554767891>.

I'm not super happy with this but being able to easily run the emulator is the most important thing.
2019-11-18 15:24:44 +01:00
Frans de Jonge
c7079c80be
[fix] kodev: Allow nightly build to succeed (#5507)
Translations live in a submodule since <https://github.com/koreader/koreader/pull/5506>,
and without initialized submodules `kodev release` will therefore fail.

The specifics need a fair bit more attention once Weblate has been set up, but this should
suffice for the nightly/stable build to succeed.
2019-10-19 17:45:49 +02:00
Martín Fernández
4910dbc6d2 android: migrate from lzma to zip file 2019-08-30 16:42:57 +02:00
B YI
53b77e3ae4 [shell] Avoid hard-coded path (#5197)
Although the current hard-coded paths work on debian, they may fail on many other distros. Other distros may pack koreader based on the released deb file. I personally have problem using current script on nixos, as it does not use the paths `/bin/bash` and `/usr/lib/`.
2019-08-11 21:30:35 +02:00
Martín Fernández
64cc7e0827 [Android] update ndk/sdk paths on demand, bump sdk tools.. (#5103) 2019-07-01 09:01:15 +02:00
Frans de Jonge
5690998124
kodev: pass correct --lpath for base test (#4973) 2019-04-27 12:24:42 +02:00
Frans de Jonge
27ddd6f313
[spec] Better insulation (#4972)
Some combination of Travis and/or older Busted necessitated insufficient insulation.

Follow-up to https://github.com/koreader/koreader/pull/4970

Space condensing carried over; reset at the start of readertoc.
2019-04-25 23:33:47 +02:00
Frans de Jonge
e869041632
[chore] kodev: make kodev test consistent with build & run (#4969) 2019-04-25 17:40:42 +02:00
Qingping Hou
11a38b33f1 kodev: stop test command if build failed 2019-04-24 21:09:23 +02:00
Qingping Hou
e29c2275ef add check command to kodev 2019-03-03 13:10:45 +01:00
Martín Fernández
ae0861eda8 [Android] Set flavor at build time 2019-03-03 11:47:52 +01:00
Frans de Jonge
48af47109f
[Android] kodev run android: show all errors (#4569)
It will introduce some minor noise, but too much stuff is simply not seen otherwise, for example:

*:E
```
02-09 12:45:53.359  2580  2609 E IconLoader: Unexpected null component name or activity info: ComponentInfo{org.koreader.launcher/org.koreader.launcher.MainActivity}, null
```

*:F
```
--------- beginning of system
--------- beginning of main
--------- beginning of crash
02-09 12:47:31.275  4985  5003 F libc    : /home/frans/src/kobo/koreader/base/thirdparty/filemq/build/i686-linux-android-debug/filemq-prefix/src/filemq/src/fmq_client.c:170: fmq_client_set_resync: assertion "self" failed
02-09 12:47:31.275  4985  5003 F libc    : Fatal signal 6 (SIGABRT), code -6 (SI_TKILL) in tid 5003 (Thread-37), pid 4985 (reader.launcher)
02-09 12:47:31.512  5085  5085 F DEBUG   : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
02-09 12:47:31.512  5085  5085 F DEBUG   : Build fingerprint: 'Android/sdk_phone_x86_64/generic_x86_64:9/PSR1.180720.012/4923214:userdebug/test-keys'
02-09 12:47:31.512  5085  5085 F DEBUG   : Revision: '0'
02-09 12:47:31.513  5085  5085 F DEBUG   : ABI: 'x86'
02-09 12:47:31.513  5085  5085 F DEBUG   : pid: 4985, tid: 5003, name: Thread-37  >>> org.koreader.launcher <<<
02-09 12:47:31.513  5085  5085 F DEBUG   : signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
02-09 12:47:31.513  5085  5085 F DEBUG   : Abort message: '/home/frans/src/kobo/koreader/base/thirdparty/filemq/build/i686-linux-android-debug/filemq-prefix/src/filemq/src/fmq_client.c:170: fmq_client_set_resync: assertion "self" failed'
02-09 12:47:31.513  5085  5085 F DEBUG   :     eax 00000000  ebx 00001379  ecx 0000138b  edx 00000006
02-09 12:47:31.513  5085  5085 F DEBUG   :     edi 00000000  esi 00000000
02-09 12:47:31.513  5085  5085 F DEBUG   :     ebp 33167a17  esp de3e9528  eip f70d8b59
02-09 12:47:31.515  5085  5085 F DEBUG   : 
02-09 12:47:31.515  5085  5085 F DEBUG   : backtrace:
02-09 12:47:31.515  5085  5085 F DEBUG   :     #00 pc 00000b59  [vdso:f70d8000] (__kernel_vsyscall+9)
02-09 12:47:31.515  5085  5085 F DEBUG   :     #01 pc 0001fc08  /system/lib/libc.so (syscall+40)
02-09 12:47:31.515  5085  5085 F DEBUG   :     #02 pc 000321f3  /system/lib/libc.so (abort+115)
02-09 12:47:31.515  5085  5085 F DEBUG   :     #03 pc 00032681  /system/lib/libc.so (__assert2+49)
02-09 12:47:31.515  5085  5085 F DEBUG   :     #04 pc 000046b0  /data/data/org.koreader.launcher/files/libs/libfmq.so.1
02-09 12:47:31.515  5085  5085 F DEBUG   :     #05 pc 00008e54  /data/app/org.koreader.launcher-u3tYrWEK7wgvoJGvd1pTrA==/lib/x86/libluajit.so
02-09 12:47:31.515  5085  5085 F DEBUG   :     #06 pc 00056a61  /data/app/org.koreader.launcher-u3tYrWEK7wgvoJGvd1pTrA==/lib/x86/libluajit.so
02-09 12:47:31.515  5085  5085 F DEBUG   :     #07 pc 0006ed92  /data/app/org.koreader.launcher-u3tYrWEK7wgvoJGvd1pTrA==/lib/x86/libluajit.so
02-09 12:47:31.515  5085  5085 F DEBUG   :     #08 pc 00006fc9  /data/app/org.koreader.launcher-u3tYrWEK7wgvoJGvd1pTrA==/lib/x86/libluajit.so
02-09 12:47:31.515  5085  5085 F DEBUG   :     #09 pc 00061f73  /data/app/org.koreader.launcher-u3tYrWEK7wgvoJGvd1pTrA==/lib/x86/libluajit.so
02-09 12:47:31.515  5085  5085 F DEBUG   :     #10 pc 00006fc9  /data/app/org.koreader.launcher-u3tYrWEK7wgvoJGvd1pTrA==/lib/x86/libluajit.so
02-09 12:47:31.515  5085  5085 F DEBUG   :     #11 pc 00061f73  /data/app/org.koreader.launcher-u3tYrWEK7wgvoJGvd1pTrA==/lib/x86/libluajit.so
02-09 12:47:31.515  5085  5085 F DEBUG   :     #12 pc 00006fc9  /data/app/org.koreader.launcher-u3tYrWEK7wgvoJGvd1pTrA==/lib/x86/libluajit.so
02-09 12:47:31.515  5085  5085 F DEBUG   :     #13 pc 0001c470  /data/app/org.koreader.launcher-u3tYrWEK7wgvoJGvd1pTrA==/lib/x86/libluajit.so (lua_pcall+80)
02-09 12:47:31.515  5085  5085 F DEBUG   :     #14 pc 0000571a  /data/app/org.koreader.launcher-u3tYrWEK7wgvoJGvd1pTrA==/lib/x86/libluajit.so (android_main+458)
02-09 12:47:31.515  5085  5085 F DEBUG   :     #15 pc 00070a38  /data/app/org.koreader.launcher-u3tYrWEK7wgvoJGvd1pTrA==/lib/x86/libluajit.so
02-09 12:47:31.515  5085  5085 F DEBUG   :     #16 pc 0009cce5  /system/lib/libc.so (__pthread_start(void*)+53)
02-09 12:47:31.515  5085  5085 F DEBUG   :     #17 pc 00033c1b  /system/lib/libc.so (__start_thread+75)
```
2019-02-09 15:11:52 +01:00
Frans de Jonge
32bbf17003
[Android] Update logcat command for kodev run android (#4516)
This filters out useless messages using the "intended" way (without
grep).
2019-01-26 19:49:43 +01:00
Martín Fernández
6de5927dc2 [build] Add support for Debian packages (#4434)
* Add support for Debian packages

* SDL: add device probe
2019-01-03 18:21:35 +01:00
Frans de Jonge
fb1c3606d7
[fix, build] kodev: test for PB TC in $PATH (#4344)
Includes and depends on base bump with:

* [build, fix] Support PocketBook TC in path https://github.com/koreader/koreader-base/pull/765
2018-11-18 18:26:38 +01:00
Frans de Jonge
349485e240
[fix] Minor kodev shellscript issues (#4302)
Use `-z` instead of `! -n`.

See https://github.com/koalaman/shellcheck/wiki/SC2236
2018-11-02 11:42:34 +01:00
Martín Fernández
1e69fae7bc [feat] Add support for BQ/Fnac devices (#4294)
Adds support for devices found in https://blog.bq.com/es/bq-ereaders-developers-program/. Tested on BQ Cervantes 4 (last BQ device from 2017).

It adds a new touch input event handler (discussed in #4275) which should work on other single touch devices (ie: Kobo Touch, Mini, Glo, Aura HD) but wasn't tested.

Includes base bump with: [feat] Add BQ/Fnac device support (https://github.com/koreader/koreader-base/pull/745)
2018-10-31 23:48:36 +01:00
Frans de Jonge
d1298ff8e5
[feat] Smaller version on annotated tag (#4295) 2018-10-31 23:34:11 +01:00
Qingping Hou
e869b40625 fix(kodev): match clean command debug flag with build command 2018-10-14 09:14:35 -07:00
Matias N
94d8f2d397 Sony PRSTUX support (#4198)
* Sony PRSTUX support
2018-09-08 01:37:04 +02:00
NiLuJe
e2a0929c51
Better KOA2 support (#4037)
* Better KOA2 support
    * Fix FL
    * Add physical pageturn keys
    * Add accelerometer support
* Possibly better NaturalLight handling on the Clara
* Fix WiFi module name used in some(?) Mk7 Kobos
* A bunch of kodev fixes
2018-07-01 17:35:12 +02:00
onde2rock
c6c740d1da [build] Remove kindle5 target (#3902) 2018-04-22 15:22:11 +02:00