1
0
mirror of https://github.com/deadw00d/AROS.git synced 2025-12-08 14:34:41 +00:00

Build png as shared library.

Note that
- I had to skip some functions because they don't
  build for a reason which I don't know yet.
- I have to link against z_rel rather than z to get rid
  of link error because of missing aroscbase. Is this
  expected behavior?


git-svn-id: https://svn.aros.org/svn/aros/trunk/AROS@45027 fb15a70f-31f2-0310-bbcc-cdcc74a49acc
This commit is contained in:
mazze
2012-06-14 21:34:25 +00:00
parent 0de9e4f8f3
commit dfc7a794ac
5 changed files with 42 additions and 12 deletions

18
test/png/mmakefile.src Normal file
View File

@ -0,0 +1,18 @@
# Copyright <20> 2012, The AROS Development Team. All rights reserved.
# $Id$
include $(TOP)/config/make.cfg
FILES := version
EXEDIR := $(AROS_TESTS)/png
#MM- test : test-png
#MM- test-quick : test-png-quick
#MM test-png : includes linklibs workbench-libs-png
%build_progs mmake=test-png \
files=$(FILES) targetdir=$(EXEDIR) \
uselibs="png"
%common

8
test/png/version.c Normal file
View File

@ -0,0 +1,8 @@
#include <png.h>
#include <stdio.h>
int main(void)
{
printf("Version %d\n", png_access_version_number());
return 0;
}

View File

@ -46,7 +46,8 @@
#MM workbench-libs-bz2 \
#MM workbench-libs-expat \
#MM workbench-libs-z \
#MM workbench-libs-jpeg
#MM workbench-libs-jpeg \
#MM workbench-libs-png
#MM- includes-generate : \
#MM workbench-libs-amigaguide-includes \
@ -87,4 +88,5 @@
#MM workbench-libs-bz2-includes \
#MM workbench-libs-expat-includes \
#MM workbench-libs-z-includes \
#MM workbench-libs-jpeg-includes
#MM workbench-libs-jpeg-includes \
#MM workbench-libs-png-includes

View File

@ -1,15 +1,17 @@
# $Id$
include $(TOP)/config/make.cfg
#MM- workbench-libs: workbench-libs-png
#MM workbench-libs-png : workbench-libs-z
FILES := png pngerror\
pngget pngmem pngpread pngread pngrio pngrtran pngrutil\
FILES := png pngerror \
pngget pngmem pngpread pngread pngrio pngrtran pngrutil \
pngset pngtrans pngwio pngwrite pngwtran pngwutil
USER_CFLAGS := -Wno-deprecated-declarations
%build_module mmake=workbench-libs-png \
modname=png_au modtype=library \
files="init-aros $(FILES)" uselibs="z_rel arosc_rel" linklibname="png"
files="init-aros $(FILES)" uselibs="arosc_rel z_rel" linklibname="png"
#MM- linklibs: linklibs-png-nostdio

View File

@ -18,7 +18,7 @@ options pertaskbase
##begin startup
#include <aros/system.h>
AROS_IMPORT_ASM_SYM(void *, dummyarosc, aroscbase)
AROS_IMPORT_ASM_SYM(void *, dummyarosc, aroscbase);
##end startup
##begin functionlist
@ -125,7 +125,7 @@ PNG_ALLOCATED png_voidp png_malloc_default(png_structp png_ptr, png_alloc_size_t
void png_free_default(png_structp png_ptr, png_voidp ptr)
PNG_NORETURN void png_error(png_structp png_ptr, png_const_charp error_message)
PNG_NORETURN void png_chunk_error(png_structp png_ptr, png_const_charp error_message)
PNG_NORETURN void png_err(png_structp png_ptr)
.skip 1 # PNG_NORETURN void png_err(png_structp png_ptr)
void png_warning(png_structp png_ptr, png_const_charp warning_message)
void png_chunk_warning(png_structp png_ptr, png_const_charp warning_message)
void png_benign_error(png_structp png_ptr, png_const_charp warning_message)
@ -206,7 +206,7 @@ png_const_charp png_get_header_ver(png_const_structp png_ptr)
png_const_charp png_get_header_version(png_const_structp png_ptr)
png_const_charp png_get_libpng_ver(png_const_structp png_ptr)
png_uint_32 png_permit_mng_features(png_structp png_ptr, png_uint_32 mng_features_permitted)
void png_set_strip_error_numbers(png_structp png_ptr, png_uint_32 strip_mode)
.skip 1 # void png_set_strip_error_numbers(png_structp png_ptr, png_uint_32 strip_mode)
void png_set_user_limits(png_structp png_ptr, png_uint_32 user_width_max, png_uint_32 user_height_max)
png_uint_32 png_get_user_width_max(png_const_structp png_ptr)
png_uint_32 png_get_user_height_max(png_const_structp png_ptr)
@ -222,9 +222,9 @@ float png_get_y_offset_inches(png_const_structp png_ptr, png_const_infop info_pt
png_uint_32 png_get_pHYs_dpi(png_const_structp png_ptr, png_const_infop info_ptr, png_uint_32 *res_x, png_uint_32 *res_y, int *unit_type)
png_uint_32 png_get_io_state(png_structp png_ptr)
PNG_DEPRECATED png_const_bytep png_get_io_chunk_name(png_structp png_ptr)
png_uint_32 png_get_uint_32(png_const_bytep buf)
png_uint_16 png_get_uint_16(png_const_bytep buf)
png_int_32 png_get_int_32(png_const_bytep buf)
.skip 1 # png_uint_32 png_get_uint_32(png_const_bytep buf)
.skip 1 # png_uint_16 png_get_uint_16(png_const_bytep buf)
.skip 1 # png_int_32 png_get_int_32(png_const_bytep buf)
png_uint_32 png_get_uint_31(png_structp png_ptr, png_const_bytep buf)
void png_save_uint_32(png_bytep buf, png_uint_32 i)
void png_save_int_32(png_bytep buf, png_int_32 i)