aboutsummaryrefslogblamecommitdiffstats
path: root/src/Makefile_Eolian.am
blob: 06c7638c8eacadc9ec43145380c590669bc457c0 (plain) (tree)
1
2
3
4
5
6
7
8
9





                                                            
                                                                                   

                                   

                                                         

                                                          
                                                       
                                                            
                                                                

                                                                
                                                                   
                                                                  
                                                                      
                                                                            
                                                                                
                                                              
                                                                  
                                                                   
                                                                       

                                                                         
                                                               
                                                                   
                                                              
                                                                  
                                                              

                                                                  
                                                                 
                                                                  

                                                               
 


                                                                                  



                                                             

          
                 
                                     
 










                                      
 


                                                                              
 
                                         
                                 
 

              


                           
                                  
                                   
                                   
                             
                                

                           

                             
                                

                                           


                                          
                              




                                      
                            



                              
                                      
                                    

                                     

                             


                                
 
                   



                                     
                               
                           
                              
                                  
                                        


                             
 
             
                       
    
                                    
     
 

                                                                                                                                                         
                                                                                   

                                                                                                       
                                             
                                                        
                                                    
                                        
                                  
                
                           

                                  

                                                                                          
 

     
                
                                     
                                         

                                      


                                     
                                      
                                  
                                         
                                      
                              



                                                   
                                  
                   

### Library

lib_LTLIBRARIES += lib/eolian/libeolian.la

installed_eolianmainheadersdir = $(includedir)/eolian-@VMAJ@
dist_installed_eolianmainheaders_DATA = lib/eolian/Eolian.h lib/eolian/Eolian_Aux.h

lib_eolian_libeolian_la_SOURCES = \
                                  lib/eolian/eo_lexer.c \
                                  lib/eolian/eo_lexer.h \
                                  lib/eolian/eo_parser.c \
                                  lib/eolian/eo_parser.h \
                                  lib/eolian/eolian.c \
                                  lib/eolian/eolian_priv.h \
                                  lib/eolian/eolian_database.c \
                                  lib/eolian/eolian_database.h \
                                  lib/eolian/database_class.c \
                                  lib/eolian/database_class_api.c \
                                  lib/eolian/database_function.c \
                                  lib/eolian/database_function_api.c \
                                  lib/eolian/database_function_parameter.c \
                                  lib/eolian/database_function_parameter_api.c \
                                  lib/eolian/database_type.c \
                                  lib/eolian/database_type_api.c \
                                  lib/eolian/database_implement.c \
                                  lib/eolian/database_implement_api.c \
                                  lib/eolian/database_constructor.c \
                                  lib/eolian/database_constructor_api.c \
                                  lib/eolian/database_event.c \
                                  lib/eolian/database_event_api.c \
                                  lib/eolian/database_part.c \
                                  lib/eolian/database_part_api.c \
                                  lib/eolian/database_expr.c \
                                  lib/eolian/database_expr_api.c \
                                  lib/eolian/database_var.c \
                                  lib/eolian/database_var_api.c \
                                  lib/eolian/database_validate.c \
                                  lib/eolian/database_check.c \
                                  lib/eolian/eolian_aux.c

lib_eolian_libeolian_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl @EOLIAN_CFLAGS@ \
	-DPACKAGE_DATA_DIR=\"$(datadir)/eolian\"

lib_eolian_libeolian_la_LIBADD = @EOLIAN_LIBS@
lib_eolian_libeolian_la_DEPENDENCIES = @EOLIAN_INTERNAL_LIBS@
lib_eolian_libeolian_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@

### Binary

bin_PROGRAMS += \
                bin/eolian/eolian_gen

bin_eolian_eolian_gen_SOURCES = \
                bin/eolian/main.c \
                bin/eolian/main.h \
                bin/eolian/types.c \
                bin/eolian/types.h \
                bin/eolian/headers.c \
                bin/eolian/headers.h \
                bin/eolian/sources.c \
                bin/eolian/sources.h \
                bin/eolian/docs.c \
                bin/eolian/docs.h

bin_eolian_eolian_gen_CPPFLAGS = -I$(top_builddir)/src/lib/efl @EOLIAN_CFLAGS@
bin_eolian_eolian_gen_LDADD = @USE_EOLIAN_LIBS@
bin_eolian_eolian_gen_DEPENDENCIES = @USE_EOLIAN_INTERNAL_LIBS@

### Helper for other modules using Eolian
include Makefile_Eolian_Helper.am

### Unit tests


EOLIAN_TESTS_EOS = \
tests/eolian/data/base.eo \
tests/eolian/data/class_funcs.eo \
tests/eolian/data/class_simple.eo \
tests/eolian/data/complex_type.eo \
tests/eolian/data/consts.eo \
tests/eolian/data/ctor_dtor.eo \
tests/eolian/data/docs.eo \
tests/eolian/data/enum.eo \
tests/eolian/data/events.eo \
tests/eolian/data/extern.eo \
tests/eolian/data/free_func.eo \
tests/eolian/data/function_as_argument.eo \
tests/eolian/data/import.eo \
tests/eolian/data/nmsp1_class1.eo \
tests/eolian/data/nmsp1_nmsp11_class2.eo \
tests/eolian/data/nmsp2_class1.eo \
tests/eolian/data/no_nmsp.eo \
tests/eolian/data/null.eo \
tests/eolian/data/object_impl.eo \
tests/eolian/data/object_impl_add.eo \
tests/eolian/data/override.eo \
tests/eolian/data/owning.eo \
tests/eolian/data/parts.eo \
tests/eolian/data/scope.eo \
tests/eolian/data/struct.eo \
tests/eolian/data/typedef.eo \
tests/eolian/data/var.eo \
tests/eolian/data/function_types.eot \
tests/eolian/data/import_types.eot \
tests/eolian/data/class_requires.eo \
tests/eolian/data/mixins_require.eo \
tests/eolian/data/iface.eo \
tests/eolian/data/unimpl.eo \
tests/eolian/data_aux/aux_a.eo \
tests/eolian/data_aux/aux_b.eo \
tests/eolian/data_aux/aux_c.eo

if EFL_ENABLE_TESTS
check_PROGRAMS += \
tests/eolian/eolian_suite

tests_eolian_eolian_suite_SOURCES = \
tests/eolian/eolian_parsing.c \
tests/eolian/eolian_aux.c \
tests/eolian/eolian_static.c \
tests/eolian/eolian_generation.c \
tests/eolian/eolian_generated_future.c \
tests/eolian/eolian_suite.c \
tests/eolian/eolian_suite.h


if HAVE_AM_16
TESTS_EOLIAN_OBJNAME = 
else
TESTS_EOLIAN_OBJNAME = tests_eolian_
endif

tests/eolian/$(TESTS_EOLIAN_OBJNAME)eolian_suite-eolian_generated_future.$(OBJEXT): tests/eolian/generated_future.eo.h tests/eolian/generated_future.eo.c

CLEANFILES += tests/eolian/generated_future.eo.h tests/eolian/generated_future.eo.c

tests_eolian_eolian_suite_CPPFLAGS = -I$(top_builddir)/src/lib/efl -I$(top_builddir)/src/tests/eolian \
-DPACKAGE_BUILD_DIR=\"$(abs_top_builddir)\" \
-DTESTS_BUILD_DIR=\"$(top_builddir)/src/tests/eolian\" \
-DTESTS_SRC_DIR=\"$(top_srcdir)/src/tests/eolian\" \
-DEO_SRC_DIR=\"$(top_srcdir)/src/lib\" \
-DEOLIAN_GEN="\"$(EOLIAN_GEN)\"" \
@CHECK_CFLAGS@ \
@EOLIAN_CFLAGS@ @EO_CFLAGS@
TESTS += tests/eolian/eolian_suite

tests_eolian_eolian_suite_LDADD = @CHECK_LIBS@ @USE_EOLIAN_LIBS@ @USE_EO_LIBS@
tests_eolian_eolian_suite_DEPENDENCIES = @USE_EOLIAN_INTERNAL_LIBS@ @USE_EO_INTERNAL_LIBS@

endif

EXTRA_DIST2 += \
tests/eolian/data/object_impl_ref.c \
tests/eolian/data/object_impl_add_ref.c \
tests/eolian/data/typedef_ref.h \
tests/eolian/data/typedef_ref_stub.h \
tests/eolian/data/struct_ref.h \
tests/eolian/data/struct_ref_stub.h \
tests/eolian/data/owning.eo.c \
tests/eolian/data/class_simple_ref.c \
tests/eolian/data/override_ref.c \
tests/eolian/data/class_simple_ref_eo.h \
tests/eolian/data/import_types_ref.h \
tests/eolian/data/docs_ref.h \
tests/eolian/data/function_types_ref.h \
tests/eolian/data/function_as_argument_impl_ref.c \
tests/eolian/data/function_as_argument_ref.c \
tests/eolian/data/function_as_argument_ref.h \
tests/eolian/generated_future.eo \
$(EOLIAN_TESTS_EOS)