76 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			CMake
		
	
	
	
			
		
		
	
	
			76 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			CMake
		
	
	
	
| #######################################################################
 | |
| #  This is the makefile to create a library of the test matrix
 | |
| #  generators used in LAPACK.  The files are organized as follows:
 | |
| #
 | |
| #     SCATGEN  -- Auxiliary routines called from both REAL and COMPLEX
 | |
| #     DZATGEN  -- Auxiliary routines called from both DOUBLE PRECISION
 | |
| #                 and COMPLEX*16
 | |
| #     SMATGEN  -- Single precision real matrix generation routines
 | |
| #     CMATGEN  -- Single precision complex matrix generation routines
 | |
| #     DMATGEN  -- Double precision real matrix generation routines
 | |
| #     ZMATGEN  -- Double precision complex matrix generation routines
 | |
| #
 | |
| #  The library can be set up to include routines for any combination
 | |
| #  of the four precisions.  To create or add to the library, enter make
 | |
| #  followed by one or more of the precisions desired.  Some examples:
 | |
| #       make single
 | |
| #       make single complex
 | |
| #       make single double complex complex16
 | |
| #  Alternatively, the command
 | |
| #       make
 | |
| #  without any arguments creates a library of all four precisions.
 | |
| #  The library is called
 | |
| #       tmglib.a
 | |
| #  and is created at the LAPACK directory level.
 | |
| #
 | |
| #  To remove the object files after the library is created, enter
 | |
| #       make clean
 | |
| #  On some systems, you can force the source files to be recompiled by
 | |
| #  entering (for example)
 | |
| #       make single FRC=FRC
 | |
| #
 | |
| #######################################################################
 | |
|  
 | |
| set(SCATGEN  slatm1.f slaran.f slarnd.f)
 | |
| 
 | |
| set(SMATGEN  slatms.f slatme.f slatmr.f slatmt.f 
 | |
|    slagge.f slagsy.f slakf2.f slarge.f slaror.f slarot.f slatm2.f 
 | |
|    slatm3.f slatm5.f slatm6.f slatm7.f slahilb.f)
 | |
| 
 | |
| set(CMATGEN  clatms.f clatme.f clatmr.f clatmt.f 
 | |
|    clagge.f claghe.f clagsy.f clakf2.f clarge.f claror.f clarot.f 
 | |
|    clatm1.f clarnd.f clatm2.f clatm3.f clatm5.f clatm6.f clahilb.f slatm7.f)
 | |
| 
 | |
| set(DZATGEN  dlatm1.f dlaran.f dlarnd.f)
 | |
| 
 | |
| set(DMATGEN  dlatms.f dlatme.f dlatmr.f dlatmt.f 
 | |
|    dlagge.f dlagsy.f dlakf2.f dlarge.f dlaror.f dlarot.f dlatm2.f 
 | |
|    dlatm3.f dlatm5.f dlatm6.f dlatm7.f dlahilb.f)
 | |
| 
 | |
| set(ZMATGEN  zlatms.f zlatme.f zlatmr.f zlatmt.f 
 | |
|   zlagge.f zlaghe.f zlagsy.f zlakf2.f zlarge.f zlaror.f zlarot.f 
 | |
|   zlatm1.f zlarnd.f zlatm2.f zlatm3.f zlatm5.f zlatm6.f zlahilb.f dlatm7.f)
 | |
| 
 | |
| if(BUILD_SINGLE)
 | |
|   set(ALLOBJ ${SMATGEN} ${SCATGEN})
 | |
| endif()
 | |
| if(BUILD_DOUBLE)
 | |
|   set(ALLOBJ ${ALLOBJ} ${DMATGEN} ${DZATGEN})
 | |
| endif()
 | |
| if(BUILD_COMPLEX)
 | |
|   set(ALLOBJ  ${ALLOBJ} ${CMATGEN} ${SCATGEN})
 | |
| endif()
 | |
| if(BUILD_COMPLEX16)
 | |
|   set(ALLOBJ ${ALLOBJ} ${ZMATGEN} ${DZATGEN})
 | |
| endif()
 | |
| 
 | |
| if (NOT ALLOBJ)
 | |
| set(ALLOBJ ${SMATGEN} ${CMATGEN} ${SCATGEN} ${DMATGEN} ${ZMATGEN}
 | |
|   ${DZATGEN})
 | |
| else()
 | |
|   list(REMOVE_DUPLICATES ALLOBJ)
 | |
| endif()
 | |
| add_library(tmglib ${ALLOBJ} )
 | |
| target_link_libraries(tmglib ${LAPACK_LIBRARIES})
 | |
| lapack_install_library(tmglib)
 |