Compare commits

...

4 Commits

Author SHA1 Message Date
jingyuexing
d835c86a82
Merge 20920473dd909651031910141078088f26a9d8e4 into 9100f7e3abf3511009fa21de1e0b304cac5489d3 2023-10-21 21:58:11 -07:00
Caleb Maclennan
9100f7e3ab
docs: Fixup badge URLs with current GH API 2023-10-17 09:07:25 +03:00
jingyuexing
20920473dd Update compiler flags options 2021-11-03 09:08:49 +08:00
jingyuexing
be6399cb9d Update cmake build tools 2021-11-03 08:57:41 +08:00
2 changed files with 69 additions and 2 deletions

67
CMakeLists.txt Normal file
View File

@ -0,0 +1,67 @@
project(luasocket)
cmake_minimum_required(VERSION 2.8...3.20)
include(CheckIncludeFile)
check_include_file("lua.h" HAVE_LUA)
set(socket_VERSION "3.0-rc1")
set(MIME_VERSION "1.0.3")
include_directories(BEFORE "${PROJECT_SOURCE_DIR}/src/")
# add header files directory
# include_directories()
if(MSVC)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /O2 /Ot /MD /W3 /nologo")
else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wshadow -Wextra -Wimplicit -O2 -ggdb3 -fpic")
endif()
if(WIN32)
if(${HAVE_LUA})
set(
SOURCE
"src/auxiliar.c"
"src/buffer.c"
"src/except.c"
"src/inet.c"
"src/io.c"
"src/options.c"
"src/select.c"
"src/tcp.c"
"src/udp.c"
"src/wsocket.c"
)
else()
message(FATAL_ERROR "can not found lua.h or lualib.h \n Maybe you can set \"include_directories(xxx/include)\"to solve this problem")
endif()
add_library(socket SHARED "${SOURCE}")
add_library(mime SHARED "src/mime.c" "src/compat.c")
set_target_properties(socket PROPERTIES OUTPUT_NAME "socket")
set_target_properties(mime PROPERTIES OUTPUT_NAME "mime")
elseif(APPLE)
# MACOS build
elseif(UNIX)
# Linux or Unix build
endif()
set(
TO_SOCKET_LDIR
"src/http.lua"
"src/url.lua"
"src/tp.lua"
"src/ftp.lua"
"src/headers.lua"
"src/smtp.lua"
)
set(
TO_TOP_LDIR
"src/ltn12.lua"
"src/socket.lua"
"src/mime.lua"
)
install(TARGETS socket LIBRARY DESTINATION "${CMAKE_INSTALL_PREFIX}/luasocket/socket")
install(FILES ${TO_SOCKET_LDIR} DESTINATION "${CMAKE_INSTALL_PREFIX}/luasocket/socket")
install(FILES ${TO_TOP_LDIR} DESTINATION "${CMAKE_INSTALL_PREFIX}/luasocket")

View File

@ -1,8 +1,8 @@
# LuaSocket # LuaSocket
[![Build](https://img.shields.io/github/workflow/status/lunarmodules/luasocket/Build?label=Build=Lua)](https://github.com/lunarmodules/luasocket/actions?workflow=Build) [![Build](https://img.shields.io/github/actions/workflow/status/lunarmodules/luasocket/build.yml?branch=master&label=Build&logo=Lua)](https://github.com/lunarmodules/luasocket/actions?workflow=Build)
[![Luacheck](https://img.shields.io/github/workflow/status/lunarmodules/luasocket/Luacheck?label=Luacheck&logo=Lua)](https://github.com/lunarmodules/luasocket/actions?workflow=Luacheck) [![Luacheck](https://img.shields.io/github/actions/workflow/status/lunarmodules/luasocket/luacheck.yml?branch=master&label=Luacheck&logo=Lua)](https://github.com/lunarmodules/luasocket/actions?workflow=Luacheck)
[![GitHub tag (latest SemVer)](https://img.shields.io/github/v/tag/lunarmodules/luasocket?label=Tag&logo=GitHub)](https://github.com/lunarmodules/luasocket/releases) [![GitHub tag (latest SemVer)](https://img.shields.io/github/v/tag/lunarmodules/luasocket?label=Tag&logo=GitHub)](https://github.com/lunarmodules/luasocket/releases)
[![Luarocks](https://img.shields.io/luarocks/v/lunarmodules/luasocket?label=Luarocks&logo=Lua)](https://luarocks.org/modules/lunarmodules/luasocket) [![Luarocks](https://img.shields.io/luarocks/v/lunarmodules/luasocket?label=Luarocks&logo=Lua)](https://luarocks.org/modules/lunarmodules/luasocket)