change init_contrib API

This commit is contained in:
Yuichi Nishiwaki
2014-07-20 09:36:18 +09:00
parent 3e5fd1a54b
commit 6a038bc926
5 changed files with 46 additions and 11 deletions
+12 -2
View File
@@ -1,8 +1,9 @@
find_package(Perl REQUIRED)
# xfile
set(XFILE_SOURCES extlib/xfile/xfile.c)
# piclib
find_package(Perl REQUIRED)
set(PICLIB_SOURCE ${PROJECT_SOURCE_DIR}/src/load_piclib.c)
add_custom_command(
OUTPUT ${PICLIB_SOURCE}
@@ -11,9 +12,18 @@ add_custom_command(
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
)
# contrib
set(CONTRIB_INIT ${PROJECT_SOURCE_DIR}/src/init_contrib.c)
add_custom_command(
OUTPUT ${CONTRIB_INIT}
COMMAND ${PERL_EXECUTABLE} etc/mkinit.pl ${PICRIN_CONTRIB_INITS} > ${CONTRIB_INIT}
DEPENDS ${PICRIN_CONTRIB_SOURCES}
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
)
# build!
file(GLOB PICRIN_SOURCES ${PROJECT_SOURCE_DIR}/src/*.c)
add_library(picrin SHARED ${PICRIN_SOURCES} ${PICLIB_SOURCE} ${XFILE_SOURCES} ${PICRIN_CONTRIB_SOURCES})
add_library(picrin SHARED ${PICRIN_SOURCES} ${PICLIB_SOURCE} ${XFILE_SOURCES} ${PICRIN_CONTRIB_SOURCES} ${CONTRIB_INIT})
target_link_libraries(picrin m ${PICRIN_CONTRIB_LIBRARIES})
# install
+1 -6
View File
@@ -31,15 +31,10 @@ void pic_init_load(pic_state *);
void pic_init_write(pic_state *);
void pic_init_read(pic_state *);
void pic_init_dict(pic_state *);
void pic_init_contrib(pic_state *);
void pic_load_piclib(pic_state *);
void
pic_init_contrib(pic_state *pic)
{
PIC_CONTRIB_INITS
}
#define push_sym(pic, name, list) \
pic_push(pic, pic_symbol_value(pic_intern_cstr(pic, name)), list)