| <<<Back 1 day (to 2016/11/20) | 20161121 |
sebras | tor8: yo. | 15:20.57 |
| tor8: you saw the message about the rc2-tarball missing submodule update? | 15:21.07 |
tor8 | sebras: hi. | 15:21.07 |
| sebras: yes. the new 1.10 tarball should not have the same problem. but best if you double check before we announce it :) | 15:21.29 |
sebras | tor8: I can. rc2 failed to compile. if you archive it you might want to renegerate it. | 15:22.04 |
tor8 | sebras: yeah, I can regenerate and upload a fixed version. | 15:22.21 |
| sebras: unfortunately the CMap commit I did last week doesn't quite work :/ | 15:23.20 |
sebras | tor8: oh? | 15:23.44 |
| tor8: I see you tagged 1.10 | 15:23.52 |
tor8 | it can't find some cmaps when I clusterpush | 15:23.53 |
| sebras: I did. I've uploaded a source tarball, am in the progress of building for windows. | 15:24.07 |
sebras | tor8: ok, in that case I gett the source tarball immediately. | 15:24.25 |
tor8 | Robin_Watts: zip archive with windows release on casper in /home/tor/mupdf-1.10-windows.zip | 15:30.37 |
| could you sign and superzip that please? | 15:30.50 |
sebras | tor8: the tarball I downloaded builds fine. | 15:30.50 |
tor8 | sebras: great1 | 15:30.57 |
sebras | tor8: I know2 | 15:31.35 |
malc_ | woohoo! | 15:32.57 |
malc_ | is going for a release too | 15:33.02 |
Robin_Watts | New version of that zip in my homedir then. | 15:54.01 |
tor8 | Robin_Watts: thanks. I've up that up on the downloads archive. | 16:01.41 |
Robin_Watts | tor8, sebras: 3 commits on robin/muso then. | 18:36.12 |
sebras | Robin_Watts: where are the threading macros being moved out from? | 18:37.14 |
| Robin_Watts: the patch only has additions...? | 18:37.25 |
Robin_Watts | sebras: From Mudraw and Muraster. | 18:37.36 |
| and they are now used in mu-office-lib too. | 18:37.50 |
sebras | Robin_Watts: those files are not modified in the first commit. | 18:37.54 |
Robin_Watts | The next 2 commits move those files over to using the new lib. | 18:38.02 |
sebras | oh.. that happens later! :) | 18:38.05 |
| seems reasonable. | 18:38.14 |
| Robin_Watts: why can't these things live in the fz_ namespace and in source/fitz? | 18:45.42 |
| is that a bad idea somehow? | 18:45.48 |
| maybe tor8 advices against it, but it is non-obvious at least. :) | 18:46.09 |
Robin_Watts | sebras: MuPDF is deliberately done with no knowledge of threads. | 18:48.56 |
| Or rather, no threading dependencies. | 18:49.04 |
| You can give MuPDF locking functions to use, but that's it. | 18:49.26 |
| This is a set of "helper" functions that make it easier to code some tools that happen to use threads. | 18:49.59 |
| But we really don't want the threading lib dependency to be part of MuPDF. | 18:50.14 |
| sebras: Make sense? | 18:54.16 |
sebras | Robin_Watts: I guess o. | 18:59.00 |
| sdo | 18:59.01 |
| so | 18:59.02 |
| Robin_Watts: might it be worthwhile to mention that calling mu_destroy_semaphore() when a thread is waiting on the semaphore might be undefined? | 19:00.19 |
| Robin_Watts: at least if I read pthread_cond_destroy() correctly. | 19:01.23 |
Robin_Watts | possibly. | 19:01.34 |
| done. | 19:04.20 |
sebras | Robin_Watts: also if multiple threads simultaneously call mu_thread_destroy() results are undefined (according to pthreads) | 19:07.10 |
Robin_Watts | sebras: Yes, that seems obvious enough to not need mentioning to me. | 19:07.31 |
| mu_thread_destroy is basically 'join thread'. | 19:08.01 |
sebras | yeah. | 19:08.07 |
Robin_Watts | It makes no sense to ever do that from anything other than the 'master' thread. | 19:08.16 |
sebras | Robin_Watts: there is a Unix or close enough section in system.h after the MSC-stuff. seems like sys/time.h could go there.\ | 19:12.37 |
| I'm guessing it used to be pulled in implicitly by some pthread headers..? | 19:12.58 |
Robin_Watts | sebras: possibly. | 19:13.02 |
| We had explicit "if windows, include blah, if linux include blah" in mudraw and muraster. | 19:13.26 |
| but fitz/system.h implicitly defines gettimeofday for windows builds anyway, so better to be consistent. | 19:13.54 |
sebras | the conversion patch for mudraw changes the no-threads implementaiton of mu_wait_semaphore(), might as well fix that in the original commit. | 19:14.19 |
| Robin_Watts: ok, that's why. though now everything besides mudraw/muraster also depend on gettimefoday(). not that I think it really matters. | 19:15.43 |
Robin_Watts | mupdf has always had a 'gettimeofday' implementation for windows. | 19:16.35 |
sebras | Robin_Watts: shouldn't mu-threads.h include pthread.h (and probably semaphore.h?) if IMPL_TYPE == 2? | 19:21.21 |
Robin_Watts | It includes pthread.h | 19:23.24 |
| It doesn't include semaphore.h cos we don't use semaphores :) | 19:23.55 |
| We only use mutexes and conditions. | 19:24.03 |
| and we build our own semaphores. | 19:24.12 |
| because iOS and OSX don't support unnamed semaphores. | 19:24.23 |
| I've pushed those fixes back to the original commit as you suggested. | 19:27.20 |
sebras | Robin_Watts: yeah, but you add the inclusion of pthread.h in the "first version of mu-office-lib" commit. | 19:39.03 |
Robin_Watts | sebras: Look again. | 19:39.20 |
| I hope I've fixed that. (Thanks for spotting that I'd got some changes that needed pushing back). | 19:39.46 |
sebras | those were not the droid I'm looking for. | 19:39.48 |
| I'd reorder the conversion and muso commit to stress that first we tidy up our existing code then we do the new stuff. | 19:41.17 |
Robin_Watts | sebras: Nope. | 19:45.12 |
| Cos that conflicts horribly with the solution changes :) | 19:45.29 |
| and life is too short to sort that out. | 19:45.40 |
sebras | Robin_Watts: in mu_destroy_thread() it is ok to set the last arg to pthread_join() to NULL. and we don't care about the return value (which is always NULL since thread_starter() always returns NULL). | 19:46.12 |
Robin_Watts | That's safe? OK. | 19:46.34 |
sebras | man pthread_join says so. :) | 19:46.43 |
| Robin_Watts: http://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_join.html | 19:47.34 |
Robin_Watts | Fixed version online. | 19:47.58 |
sebras | Robin_Watts: ok, I'm too tired to discover errors now, so I'll stop looking at the code. | 19:53.59 |
| it all seems very similar to the previous code so I don't think there are any blatant bugs lurking in this. | 19:54.25 |
Robin_Watts | Thanks for the checks. | 19:54.34 |
sebras | N.B I haven't looked at th win32-code. | 19:54.36 |
| not in detail anyway. | 19:55.04 |
| but it all seems plausible so it ought to be ok. :) | 19:55.17 |
sebras | sleeps. | 19:56.35 |
Robin_Watts | night. | 20:08.21 |
sh4rm4^bnc | grml it seems latest mupdf release breaks crosscompiling... | 20:57.39 |
| i used to call for i in fontdump cmapdump bin2hex cquote ; do make ... with CC=cc (host compiler) | 20:59.32 |
| but now this invocation magically pulls in flags from the crosscompiler environment | 21:00.09 |
| maybe something from the makefile is now calling pkg-config or sumthin... | 21:01.11 |
| urgh, and its using the ever-broken "freetype-config" | 21:05.24 |
| ./Makerules:SYS_FREETYPE_CFLAGS = $(shell freetype-config --cflags) | 21:05.27 |
| ./Makerules:SYS_FREETYPE_LIBS = $(shell freetype-config --libs) | 21:05.27 |
| really you guys should just fix your buildsystem and support crosscompiling without having the users forced to hack around | 21:07.14 |
Robin_Watts | sh4rm4^bnc: Such comments make us desperately keen to jump to do your bidding. | 21:14.50 |
sh4rm4^bnc | sorry. it's just a bit frustrating to pile on more and more hacks on every release. :( | 21:25.16 |
| ok turned out to be quite easy to fix: https://github.com/sabotage-linux/sabotage/commit/0c695ed1f08c3dce449150623e5fcd406e046d52 | 21:44.01 |
| 20 MB -> 42MB ? you did pack quite a bit of stuff in there didnt you ? | 21:44.59 |
| most probably very interesting documentation... | 21:45.21 |
| Forward 1 day (to 2016/11/22)>>> | |