Merge pull request #16 from meatballhat/macos-touchup

Touchups for MacOS
This commit is contained in:
Tiiffi
2017-01-04 23:09:11 +02:00
committed by GitHub
4 changed files with 50 additions and 17 deletions

20
.travis.yml Normal file
View File

@ -0,0 +1,20 @@
language: c
sudo: false
dist: trusty
cache:
ccache: true
compiler:
- gcc
- clang
env:
global:
- EXTRAFLAGS='-v'
- PREFIX="${HOME}"
install:
- 'true'
script:
- make
- ./mcrcon -h
- ./mcrcon -v
- make install
- make uninstall

View File

View File

@ -3,35 +3,47 @@
# export CROSS_COMPILE=arm-none-linux-gnueabi-
# make
EXENAME = mcrcon
PREFIX ?= /usr/local
EXTRAFLAGS ?= -fstack-protector-strong
INSTALL = install
LINKER =
RM = rm -f
ifeq ($(OS), Windows_NT)
LINKER = -lws2_32
EXENAME = mcrcon.exe
RM = cmd /C del /F
else
LINKER =
EXENAME = mcrcon
RM = rm -f
endif
CC = gcc
CFLAGS = -std=gnu99 -Wall -Wextra -Wpedantic -Os -s
EXTRAFLAGS = -fstack-protector-strong
ifeq ($(shell uname), Darwin)
INSTALL = ginstall
CFLAGS ?= -std=gnu99 -Wall -Wextra -Wpedantic -Os
else
CFLAGS ?= -std=gnu99 -Wall -Wextra -Wpedantic -Os -s
endif
all:
$(CROSS_COMPILE)$(CC) $(CFLAGS) $(EXTRAFLAGS) -o $(EXENAME) mcrcon.c $(LINKER)
.PHONY: all
all: $(EXENAME)
$(EXENAME): mcrcon.c
$(CROSS_COMPILE)$(CC) $(CFLAGS) $(EXTRAFLAGS) -o $@ $< $(LINKER)
ifneq ($(OS), Windows_NT)
.PHONY: install
install:
cp $(EXENAME) /usr/local/bin/$(EXENAME)
chmod 0755 /usr/local/bin/$(EXENAME)
cp mcrcon.1 /usr/local/share/man/man1/mcrcon.1
chmod 0644 /usr/local/share/man/man1/mcrcon.1
$(INSTALL) -vD $(EXENAME) $(PREFIX)/bin/$(EXENAME)
$(INSTALL) -vD -m 0644 mcrcon.1 $(PREFIX)/share/man/man1/mcrcon.1
@echo "\nmcrcon installed. Run 'make uninstall' if you want to uninstall.\n"
.PHONY: uninstall
uninstall:
rm -f /usr/local/bin/$(EXENAME)
rm -f /usr/local/share/man/man1/mcrcon.1
rm -f $(PREFIX)/bin/$(EXENAME) $(PREFIX)/share/man/man1/mcrcon.1
@echo "\nmcrcon uninstalled.\n"
endif
.PHONY: clean
clean:
$(RM) $(EXENAME)

View File

@ -304,9 +304,10 @@ int net_connect(const char *host, const char *port)
{
int sd;
struct addrinfo hints = {0};
struct addrinfo hints;
struct addrinfo *server_info, *p;
memset(&hints, 0, sizeof hints);
hints.ai_family = AF_UNSPEC;
hints.ai_socktype = SOCK_STREAM;
hints.ai_protocol = IPPROTO_TCP;