From owner-freebsd-standards@FreeBSD.ORG Thu Apr 8 15:30:02 2010 Return-Path: Delivered-To: freebsd-standards@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 33C23106566B for ; Thu, 8 Apr 2010 15:30:02 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id EC1F48FC1D for ; Thu, 8 Apr 2010 15:30:01 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.4/8.14.4) with ESMTP id o38FU1Em013064 for ; Thu, 8 Apr 2010 15:30:01 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.4/8.14.4/Submit) id o38FU1JE013063; Thu, 8 Apr 2010 15:30:01 GMT (envelope-from gnats) Resent-Date: Thu, 8 Apr 2010 15:30:01 GMT Resent-Message-Id: <201004081530.o38FU1JE013063@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-standards@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Rémi Denis-Courmont Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EB37B106566B for ; Thu, 8 Apr 2010 15:25:27 +0000 (UTC) (envelope-from nobody@FreeBSD.org) Received: from www.freebsd.org (www.freebsd.org [IPv6:2001:4f8:fff6::21]) by mx1.freebsd.org (Postfix) with ESMTP id DC8BF8FC15 for ; Thu, 8 Apr 2010 15:25:27 +0000 (UTC) Received: from www.freebsd.org (localhost [127.0.0.1]) by www.freebsd.org (8.14.3/8.14.3) with ESMTP id o38FPRhZ060057 for ; Thu, 8 Apr 2010 15:25:27 GMT (envelope-from nobody@www.freebsd.org) Received: (from nobody@localhost) by www.freebsd.org (8.14.3/8.14.3/Submit) id o38FPRIA060056; Thu, 8 Apr 2010 15:25:27 GMT (envelope-from nobody) Message-Id: <201004081525.o38FPRIA060056@www.freebsd.org> Date: Thu, 8 Apr 2010 15:25:27 GMT From: Rémi Denis-Courmont To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-3.1 Cc: Subject: standards/145517: POSIX getline() missing X-BeenThere: freebsd-standards@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Standards compliance List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 08 Apr 2010 15:30:02 -0000 >Number: 145517 >Category: standards >Synopsis: POSIX getline() missing >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-standards >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Thu Apr 08 15:30:01 UTC 2010 >Closed-Date: >Last-Modified: >Originator: Rémi Denis-Courmont >Release: Not known >Organization: VideoLAN project >Environment: Not provided >Description: VLC media player compilation reportedly fails due to getline() not being defined. Forwarded from https://trac.videolan.org/vlc/ticket/3503: | gmake[4]: Entering directory `/usr/home/igor/vlc-1.1.0-pre1/src' | CC config/libvlccore_la-dirs_xdg.lo | config/dirs_xdg.c: In function 'config_GetTypeDir': config/dirs_xdg.c:141: | error: implicit declaration of function 'getline' | FreeBSD have not getline(). getline() and getdelim() are specified by POSIX here: http://www.opengroup.org/onlinepubs/9699919799/functions/getline.html >How-To-Repeat: C-compile the following test case: #include #include #include int main(void) { char *line = NULL; size_t linesize = 0; ssize_t linelen; while ((linelen = getline(&line, &linesize, stdin)) != -1) fwrite(line, 1, linelen, stdout); free(line); if (ferror(stdin)) { perror("Standard input"); return 1; } return 0; } >Fix: >Release-Note: >Audit-Trail: >Unformatted: