Commit graph

333 commits

Author SHA1 Message Date
Bill Kendrick
9a02e730e8 Makefile can install various localized manpages 2021-08-14 22:37:05 -07:00
Bill Kendrick
4b0394fd96 Move src/manpage/ to man/ 2021-08-14 22:15:14 -07:00
Bill Kendrick
856ca6dc49 Remove Polish translation of Tux Paint's man page
Remove the very outdated Polish translation of Tux Paint's man page.
2021-08-14 21:44:12 -07:00
Bill Kendrick
cf99582672 Bump version to 0.9.27 2021-08-07 23:38:50 -07:00
Bill Kendrick
69ccac5650 Dropping -rc1 from version 2021-06-28 16:47:13 -07:00
Mark Kim
a8177635cb Fix Haiku compilation bug
Luc Schrijvers reported on the Tux Paint Maintainers mailing list an
failure to build magic tools for Tux Paint 0.9.26 rc1 (see the mailing
list for the details).  The issue appears to stem from an interesting
interaction between my commit from March
(39cc096ece) and the quotes around
beos_PLUGIN_LIBS on line 1361:

  beos_PLUGIN_LIBS:="$(MAGIC_SDL_LIBS) $(MAGIC_ARCH_LINKS) $(MAGIC_SDL_CPPFLAGS)"

My commit had removed a leading argument from $(MAGIC_SDL_LIBS) (whose
value is irrelevant but it was "-L/usr/local/lib"), and the second
argument resolves to nothing on Haiku, so beos_PLUGIN_LIBS now resolves
to a string with a leading space, and it appears `cc` treats a string
argument with a leading space as a single token as opposed to a list of
arguments as it was apparently doing previously.  Pere confirms removing
the second argument that resolves to nothing allows binary to compile.

I suppose removing the quotes around beos_PLUGIN_LIBS is another (and
cleaner) possible solution, but the quotes appear to be intentional and
without a Haiku build environment to test the exact behavior this will
be the safer commit to make.
2021-06-17 22:18:15 -04:00
Bill Kendrick
cffbd44f1f Rolling 0.9.26-rc1 2021-06-13 21:01:20 -07:00
Mark Kim
5e8ccbb19e simplify ios compilation
- Merge iphoneos and iphonesimulator compilation.
- Install to package root.
2021-03-22 22:23:01 -04:00
Mark Kim
b73fb9dcdb Lazy resolution of iphone*_ARCH_LINKS
Early resolution of iphone*_ARCH_LINKS calls pkg-config even when compiling for
non-ios platforms, slowing down compilation unnecessarily and possibly raise
errors about nonexisting libraries that are not used.

This change modifies the iphone*_ARCH_LINKS to resolve lazily upon use so
pkg-config is not called unless the variables are used.
2021-03-22 22:15:09 -04:00
Mark Kim
39cc096ece iOS port initial commit
Known Issues
------------
- No printing support.
- No typing support using the OS virtual keyboard.  iOS needs to be signalled
  to bring up the virtual keyboard when the text tool is active.  We also may
  need to do some finagling to make IM work with the virtual keyboard.
- OS language detection doesn't work yet.
- Quitting doesn't close the app.  It just displays a black screen until it is
  force-closed.
- Need to include cross-compilation instructions.

Possible Issues
---------------
- No text display.  This is likely an issue with how pango and related
  libraries were cross-compiled rather than an issue with Tux Paint code.  From
  the error output it appears to be a font rendering issue.
- SVG integration couldn't be tested because RSVG library has not yet be
  cross-compiled successfully.
- Only tested under the iOS Simulator (and not on an actual iOS device yet.)
2021-03-21 23:01:49 -04:00
Bill Kendrick
058191bd04 Radial gradient fill tool added
Note: Need to add to docs.
2021-02-20 18:08:06 -08:00
Bill Kendrick
7cd547e746 "xorpixel()" function added to Magic Tools API 2021-02-20 15:19:40 -08:00
Mark Kim
3c059ffe36 Move custom/macos* files to macos/*
Move all macOS build scripts and resources into the same directory instead of
just having the scripts in one directory and the resources in another.
2021-01-11 18:16:22 -05:00
Mark Kim
4019f8b963 Create Resources directory dynamically at compile time
The 'Resources' directory is used in macOS development to test the binary
without building TuxPaint.app bundle, which is helpful for rapid application
development since creating the app bundle takes a long time.

It's been reported that the symlink in the Resources directory was causing the
'release' target to copy the files in the 'data' directory twice into the
source release tarball.

This change removes the static Resources directory but creates it dynamically
when the 'tuxpaint' target is built and removes it via 'clean' target so the
'release' target does not copy the files in the 'data' directory into the
source release tarball twice.
2020-12-27 23:12:46 -05:00
Bill Kendrick
bcc233b542 Bump ver to 0.9.26; Expanded release steps
Expanded the steps for making and posting releases
(docs/RELEASE.txt).

Bumped version to 0.9.26.
2020-12-27 17:45:13 -08:00
Mark Kim
60e064b34f Change osx_ prefix to macos_ in Makefile
Apple has changed the name of their OS from OS X to macOS a loooong time ago.
It's about time to update it in the Makefile.
2020-12-10 17:40:34 -05:00
Mark Kim
c7ed85cd88 Change "echo -n" to "printf" in Makefile
The `echo` command built into the default macOS shell doesn't understand -n.
This commit changes it to use "printf" instead which should be fairly portable
across other OS's.  Feel free to change it back if it breaks anything.
2020-12-10 16:47:05 -05:00
dolphin6k
612c7cae46 install-dlls.sh does not collect all required dlls on JP's build env. 2020-11-15 22:11:18 +09:00
dolphin6k
968de6f0ea Enabled compiling on John Popplewell's build environment (for Windows 2000 & XP) 2020-11-15 13:47:29 +09:00
dolphin6k
b7c312ed5e Re-enable scripted dll install (Sorry, pushed wrong file before) 2020-10-18 21:50:20 +09:00
dolphin6k
e260456270 Re-enabled scripted dll install 2020-10-18 21:22:52 +09:00
dolphin6k
68bd1f6861 Reverting hard conded dll install because ldd does not solve dependencies on 32bit environment. 2020-10-18 16:59:38 +09:00
Bill Kendrick
b936bbc4ba make install robust to missing thumbnails
Sometimes thumbnails of starters or templates fail to generate
(ImageMagick bug; see
https://sourceforge.net/p/tuxpaint/tuxpaint/ci/9781a4723cbe5bd4d6bd7b5048d830821dda23ef/)

Avoid failing "make install" step when they are missing.
2020-10-15 22:41:17 -07:00
dolphin6k
2bde61ae46 No need to distinguish libgcc_s dll for 64/32bit. 2020-10-15 22:31:46 +09:00
Bill Kendrick
9781a4723c Ignore & clean up failed SVG thumbnails
When building Tux Paint, ImageMagick's `convert` might fail to generate
thumbnail PNGs for some Starter SVG images (e.g., "manatee.svg"),
with a "too many bezier coordinates" error.

This did not happen before, and does not happen with newer versions
of ImageMagick; there was a regression fixed in 2018:
https://github.com/ImageMagick/ImageMagick/issues/1069

However, it's occurring in Ubuntu 20.04 'focal' (I've got
version "6.9.10-23 Q16 x86_64 20190101").  Therefore, as a quick-fix,
simply ignoring errors from `convert`, and removing the (bogus)
PNG thumbmail image, and allowing the `make` process to proceed.

Tux Paint will simply open the SVG and generate a thumbnail to
display on the screen when the "New" dialog is brought up.
2020-10-14 23:44:14 -07:00
Bill Kendrick
d3212c6632 Doc'ing Shin-Ichi's Mingw64 and install-dlls.sh
Doc'ing Shin-Ichi TOYAMA's recent commits.
2020-10-14 23:27:57 -07:00
dolphin6k
18912ee8ea Find required dlls from .exe files. 2020-10-15 10:53:59 +09:00
dolphin6k
8d8405daab For new build environment including 64bit version. 2020-10-14 21:03:20 +09:00
Bill Kendrick
8c3a07294b Beginning GIF export
Beginning addition of an option to export animated GIFs
from the Open -> Slideshow dialog, after choosing the images.

Non-operable at this time, but a button has been added (and will
provide a hint to select 2 or more images, when clicked).
2020-07-25 00:18:46 -07:00
Bill Kendrick
b65d7f9da4 Bumping version to 0.9.25 2020-06-22 22:58:12 -07:00
Mark Kim
3fa7cefa69 macOS update building procedure 2020-04-02 00:19:02 -04:00
Bill Kendrick
2860da7668 Replace KDE icon install with Freedesktop.org
Replaced KDE (older, KDE4, in fact) specific icon and
launcher (.desktop file) installation & uninstallaton
invocations in Makefile with those that use Freedesktop.org
`xdg-...` tools.
2019-10-29 22:44:11 -07:00
Bill Kendrick
acabe10e30 Unique filename when thumbnailing starters
Helps for parallel builds (e.g., `make -j12`).  h/t Pere.
2019-09-25 23:16:59 -07:00
Bill Kendrick
9db366237c Starter/Template thumbnails: larger
We'd rather scale down larger thumbnails, than scale up (which would
be blurry) small ones.
2019-09-21 15:59:53 -07:00
Bill Kendrick
41847ae4af FIXME note in Makefile: starter/template thumbs...
The thumbnails for starters & templates are NOT being re-generated
when the source images are modified -- only when the thumbnail is
missing.  Needs an update to the target's prerequisites
(but I'm very rusty with this level of Makefile magic).

Also, update some Starter source images so they work better with
flood fill (Bald Eagle, World map, Gecko).
2019-09-14 12:07:29 -07:00
Bill Kendrick
82910adafb Generating thumbnails for Template images
Also generating and installing thumbnails of Template images,
thus getting "New" dialog to open extremely quickly.
(Pretty much "instantaneously" on my 8 year old laptop with
Intel i3 @ ~2GHz and Intel 320-series SSD (214 MB/s).)
2019-09-14 10:36:36 -07:00
Bill Kendrick
73dc07b608 Way better scaling of Starter thumbnails
Providing better command-line args to ImageMagick `convert` to
produce nice-looking thumbnail PNGs of Starter images.
(N.B. - I'm using "ImageMagick" Version: 8:6.9.7.4+dfsg-16ubuntu6.7)
2019-09-14 10:11:05 -07:00
Bill Kendrick
2117db234e Generate & install starter thumbnails again
I cannot recall[*] why we disabled the steps to generate thumbnails of
starters (".thumbs/STARTERNAME-t.png") and install them in the system
directory (e.g., /usr/local/share/tuxpaint/starters/.thumbs/),
but every time one goes to create a new image ("New"), it took a very
long time to show.

[*] If anyone remembers ~a decade ago, and has a good reason, let me know!

Also, remove "Makefile" as a prerequisite for some targets; if anything
major changes in there, it's expected one will run "make clean" or
remove the binary/etc. target and rebuild.  (Rebuilding "tuxpaint.o"
every time I edited something unrelated in Makefile was really annoying :) )
2019-09-14 09:33:22 -07:00
Bill Kendrick
2911b35a50 Elevate "Fill" from Magic Tool to real Tool
Replace the somewhat-recently-added "nothing" item in the tool bar
with the "Fill" tool, which has been converted back from a Magic tool
to a regular tool.

Also, change bash "==" to sh "=" in "if [ ... ]" tests in Makefile.

Also, link to math library (via "-lm") to make sure "max()" is available to
magic tools.

Also, add missing mention of "--newcolorslast" and "--newcolorsfirst" to manpage.
2019-09-12 23:04:13 -07:00
begasus
e5c3cdfcf5 Haiku fixes 2019-09-06 13:45:56 +02:00
Bill Kendrick
268e213e6d Bump to 0.9.24; improve usage output
Bumping to 0.9.24; going to add a new feature momentarily.

Improved usage output (e.g., that of "tuxpaint --help"); broke
the options into groups that match the tabs in Tux Paint Config.,
added some missing options.
2018-12-18 21:56:05 -08:00
Mark Kim
d2ef2e17d1 macOS 10.7 compatibility
It's been reported that the latest version of Tux Paint does not run on macOS
10.7 (Lion).  This change fixes the issue.

BACKGROUND

A user has reported Tux Paint 0.9.23 does not run on macOS 10.7.  She also
identified that the issue is due to a system library required by Tux Paint,
/System/Library/Frameworks/CoreGraphics.framework does not exist on macOS 10.7

Some investigation revealed that CoreGraphics.framework is a library required
by libSDL, and it exists under an alternate path in macOS 10.7, underneath
/System/Library/Frameworks/ApplicationServices.framework/Frameworks/.
CoreGraphics.framework also exists underneath this path in newer version of
macOS as a symlink to the real directory as well, so the issue can be fixed by
simply relinking SDL to use the old (compatible) path instead of the new
(default) path to CoreGraphics.framework.

This change adds the code such that, during the `make install` step to create
TuxPaint.app, any library referencing CoreGraphics.framework is re-linked to
the compatible path rather than the path that only exists on the newer version
of macOS.

For more information, see:

https://stackoverflow.com/questions/20206985/xcode-linking-against-applicationservices-framework-with-sdk-10-9-causes-10-7
2018-10-07 17:48:41 -04:00
Mark Kim
be99eb3844 Re-add print dialog access to macOS.
Ability to bring up the print dialog from the macOS build was removed in
Tux Paint 0.9.23 to support the new build mechanism.  It has been re-added.
To access it, option-click the print icon, or configure Tux Paint to always
bring up the dialog upon print.
2018-09-28 23:24:56 -04:00
Bill Kendrick
33de9841c0 0.9.23a; doc: less hungry progress, verbose debug
Documenting Mark Kim's recent changes:

 * Less CPU-hungry progress bar (during Stamp loading)
 * Verbose debugging options
 * (Also, mentioned debugging _at all_, in INSTALL.txt)

Bumping version to 0.9.23a, to match the test build he's working
on for macOS.
2018-09-24 22:15:38 -07:00
dolphin6k
1588c20b5b reverted to previous build environment. 2018-09-15 22:49:17 +09:00
Bill Kendrick
762d02788d Working to regen magic tool docs 2018-08-30 02:11:56 -07:00
Bill Kendrick
0edf9cb4d9 Mend typo in README stub
local -> locale
2018-08-30 01:45:35 -07:00
Bill Kendrick
edae5fc771 Installation tweaks to Makefile
* Install Tux Paint docs into a version-numbered directory
   (e.g., "/usr/local/share/doc/tuxpaint-0.9.23/")

 * Launcher icon installation location adjustments:
   * .../X11R6/include/X11/pixmaps/ -> .../share/pixmaps/
   * Using kde4config (vs kdeconfig); not putting things in "Graphics" subdir.
   * Removed gnome-config stuff
2018-08-19 21:31:09 -07:00
Bill Kendrick
5e88f0473b if/else indentation in Makefile
Improve readability of part of the Makefile.
2018-08-19 20:39:58 -07:00
Bernhard M. Wiedemann
b5292709cf Allow to override build date
in order to make builds reproducible.
See https://reproducible-builds.org/ for why this is good
and https://reproducible-builds.org/specs/source-date-epoch/
for the definition of this variable.

This date call works with GNU and BSD variants of date.
2018-07-14 04:52:39 +02:00