mirror of
				https://github.com/janet-lang/janet
				synced 2025-10-31 07:33:01 +00:00 
			
		
		
		
	Update Makefile and meson to build with msys2 gcc and clang
This commit is contained in:
		
							
								
								
									
										12
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								Makefile
									
									
									
									
									
								
							| @@ -57,6 +57,7 @@ LDFLAGS?=-rdynamic | |||||||
| LIBJANET_LDFLAGS?=$(LD_FLAGS) | LIBJANET_LDFLAGS?=$(LD_FLAGS) | ||||||
| RUN:=$(RUN) | RUN:=$(RUN) | ||||||
|  |  | ||||||
|  |  | ||||||
| COMMON_CFLAGS:=-std=c99 -Wall -Wextra -Isrc/include -Isrc/conf -fvisibility=hidden -fPIC | COMMON_CFLAGS:=-std=c99 -Wall -Wextra -Isrc/include -Isrc/conf -fvisibility=hidden -fPIC | ||||||
| BOOT_CFLAGS:=-DJANET_BOOTSTRAP -DJANET_BUILD=$(JANET_BUILD) -O0 $(COMMON_CFLAGS) -g | BOOT_CFLAGS:=-DJANET_BOOTSTRAP -DJANET_BUILD=$(JANET_BUILD) -O0 $(COMMON_CFLAGS) -g | ||||||
| BUILD_CFLAGS:=$(CFLAGS) $(COMMON_CFLAGS) | BUILD_CFLAGS:=$(CFLAGS) $(COMMON_CFLAGS) | ||||||
| @@ -94,12 +95,18 @@ endif | |||||||
| endif | endif | ||||||
|  |  | ||||||
| # Mingw | # Mingw | ||||||
|  | MINGW_COMPILER= | ||||||
| ifeq ($(findstring MINGW,$(UNAME)), MINGW) | ifeq ($(findstring MINGW,$(UNAME)), MINGW) | ||||||
|  | 	MINGW_COMPILER=gcc | ||||||
| 	CLIBS:=-lws2_32 -lpsapi -lwsock32 | 	CLIBS:=-lws2_32 -lpsapi -lwsock32 | ||||||
| 	LDFLAGS:=-Wl,--out-implib,$(JANET_IMPORT_LIB) | 	LDFLAGS:=-Wl,--out-implib,$(JANET_IMPORT_LIB) | ||||||
| 	LIBJANET_LDFLAGS:=-Wl,--out-implib,$(JANET_LIBRARY_IMPORT_LIB) | 	LIBJANET_LDFLAGS:=-Wl,--out-implib,$(JANET_LIBRARY_IMPORT_LIB) | ||||||
| 	JANET_TARGET:=$(JANET_TARGET).exe | 	JANET_TARGET:=$(JANET_TARGET).exe | ||||||
| 	JANET_BOOT:=$(JANET_BOOT).exe | 	JANET_BOOT:=$(JANET_BOOT).exe | ||||||
|  | 	COMPILER_VERSION:=$(shell $(CC) --version) | ||||||
|  | 	ifeq ($(findstring clang,$(COMPILER_VERSION)), clang) | ||||||
|  | 		MINGW_COMPILER=clang | ||||||
|  | 	endif | ||||||
| endif | endif | ||||||
|  |  | ||||||
|  |  | ||||||
| @@ -211,6 +218,11 @@ else | |||||||
| SONAME=libjanet.so.1.37 | SONAME=libjanet.so.1.37 | ||||||
| endif | endif | ||||||
|  |  | ||||||
|  | ifeq ($(MINGW_COMPILER), clang) | ||||||
|  | 	SONAME= | ||||||
|  | 	SONAME_SETTER= | ||||||
|  | endif | ||||||
|  |  | ||||||
| build/c/shell.c: src/mainclient/shell.c | build/c/shell.c: src/mainclient/shell.c | ||||||
| 	cp $< $@ | 	cp $< $@ | ||||||
|  |  | ||||||
|   | |||||||
							
								
								
									
										13
									
								
								meson.build
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								meson.build
									
									
									
									
									
								
							| @@ -39,6 +39,15 @@ native_thread_dep = dependency('threads', native : true) | |||||||
| # Deps | # Deps | ||||||
| m_dep = cc.find_library('m', required : false) | m_dep = cc.find_library('m', required : false) | ||||||
| dl_dep = cc.find_library('dl', required : false) | dl_dep = cc.find_library('dl', required : false) | ||||||
|  |  | ||||||
|  | # for MINGW/MSYS2 | ||||||
|  | native_ws2_dep = native_cc.find_library('ws2_32', required: false) | ||||||
|  | native_psapi_dep = native_cc.find_library('psapi', required: false) | ||||||
|  | native_wsock_dep = native_cc.find_library('wsock32', required: false) | ||||||
|  | ws2_dep = cc.find_library('ws2_32', required: false) | ||||||
|  | psapi_dep = cc.find_library('psapi', required: false) | ||||||
|  | wsock_dep = cc.find_library('wsock32', required: false) | ||||||
|  |  | ||||||
| android_spawn_dep = cc.find_library('android-spawn', required : false) | android_spawn_dep = cc.find_library('android-spawn', required : false) | ||||||
| thread_dep = dependency('threads') | thread_dep = dependency('threads') | ||||||
|  |  | ||||||
| @@ -173,8 +182,8 @@ mainclient_src = [ | |||||||
|   'src/mainclient/shell.c' |   'src/mainclient/shell.c' | ||||||
| ] | ] | ||||||
|  |  | ||||||
| janet_dependencies = [m_dep, dl_dep, android_spawn_dep] | janet_dependencies = [m_dep, dl_dep, android_spawn_dep, ws2_dep, psapi_dep, wsock_dep] | ||||||
| janet_native_dependencies = [native_m_dep, native_dl_dep, native_android_spawn_dep] | janet_native_dependencies = [native_m_dep, native_dl_dep, native_android_spawn_dep, native_ws2_dep, native_psapi_dep, native_wsock_dep] | ||||||
| if not get_option('single_threaded') | if not get_option('single_threaded') | ||||||
|   janet_dependencies += thread_dep |   janet_dependencies += thread_dep | ||||||
|   janet_native_dependencies += native_thread_dep |   janet_native_dependencies += native_thread_dep | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Bob Tolbert
					Bob Tolbert